(sqlite에 대해서 검색하다가 찾은 "붕어알"님 블로그의 내용에 대한 트랙백입니다.)
http://blog.naver.com/jinxx/70011718243(새 창으로 열기)

붕어알님이 결론에서 말씀하신 것처럼
"독립적인 DB엔진이 아니므로 진정한 DB 대체용으로는 좀 그렇다"는 것에는 동의를 한다.

하지만, 최초에 "진정한 DB"를 찾고 있었다면 상용에는 '오라클'과 'MSSQL'이 있고,
오픈소스에는 이미 'PostgreSQL'과 'MySQL'이 떡! 하니 버티고 있고 굳이 그 대안으로 SQLite를 검토할 필요가 없지 않을까 싶다.

그렇다면 SQLite의 진정한 비교 대상은??

바로, Berkley DB나 ISAM과 같은 단일 파일 기반의 DB가 아닐까 싶다.

그렇다면, Berkley DB와 같은 파일DB의 용도는 어디인가?

  • 클라이언트 어플리케이션의 소용량 DB
  • 캐싱기능을 수행하는 서버 어플리케이션용 DB(메모리에 올려서 사용)
  • 모바일 기기용 어플리케이션의 DB

이정도가 가장 활용도가 높은 분야이지 않을까 싶다.

하지만 Berkley DB의 경우, 데이터에 대한 접근을 시도할 때 무조건 programming을 통해서만 접근이 가능하다. 따라서 개발 및 유지보수가 까다롭다.

그에 반해 SQLite의 경우 SQL을 지원하기 때문에 보다 유연한 개발과 유지보수가 가능하다.

SQLite의 공식 사이트에서 언급되어 있는 SQLite의 장점은 아래와 같다.
http://www.sqlite.org/different.html(새 창으로 열기)

  • 설정 필요없이 쓸 수 있다.
  • 서버 없이 사용할 수 있다.
  • 하나의 데이터 파일을 사용한다.
  • 가볍다.(라이브러리 크기가 225KB 밖에 되지 않는다ㅏ.)
  • 융통성 있는 데이터타입을 지원한다.(manifest  typing)
  • 실제 값의 길이 만큼만 용량을 차지한다.(variable-length records)
  • 가독성 높은 소스코드
  • SQL문이 가상머신의 코드에 저장된다.
  • 공개되어 있다.

추가적으로, 메모리DB를 지원한다.

쓰다보니 두서가 없어졌지만..

SQLite의 용도는 MySQL과는 다르고 그 분야에서 만큼은 최고의 장점을 제공한다고 생각한다.

 

이올린에 북마크하기(0) 이올린에 추천하기(0)

Trackbas address :: http://www.woorung.com/tt/trackback/35