본문 바로가기
IT,과학/IT용어풀이

[IT 용어 풀이] SQLite

by 오우너 2018. 5. 5.
728x90
반응형

[IT 용어 풀이]

SQLite

SQLite는 자체적으로 제공되는 서버 없는 제로 구성 트랜잭션 SQL데이터베이스 엔진을 구현하는 프로세스 내 라이브러리입니다. SQLite코드는 공용 도메인에 있으므로, 상업용 또는 개인용으로 자유롭게 사용할 수 있습니다. SQLite는 우리가 셀 수 있는 것보다 더 많은 응용 프로그램을 가진 세계에서 가장 널리 배포된 데이터베이스입니다.

SQLite는 포함된 SQL데이터베이스 엔진입니다. 대부분의 다른 SQL데이터베이스와 달리 SQLite는 별도의 서버 프로세스가 없습니다. SQLite는 일반 디스크 파일을 읽고 직접 씁니다. 여러개의 테이블, 인덱스, 트리거 및 보기가 포함된 전체 SQL데이터베이스가 단일 디스크 파일에 포함됩니다. 데이터베이스 파일 형식은 교차 플랫폼이므로 32비트와 64비트 시스템 간에 또는 빅 엔드와 리틀 엔드 아키텍처 간에 데이터베이스를 자유롭게 복사할 수 있습니다. 이러한 기능으로 SQLite는 응용 프로그램 파일 형식으로 널리 사용됩니다. 
SQLite는 소형 라이브러리입니다. 모든 기능을 사용하도록 설정한 경우, 라이브러리 크기는 대상 플랫폼 및 컴파일러 최적화 설정에 따라 500KB미만일 수 있습니다. 64비트 코드가 더 큽니다. 그리고 공격적인 기능 내장이나 루프 언블링과 같은 컴파일러 최적화는 객체 코드를 훨씬 더 크게 만들 수 있다.)메모리 사용과 속도 사이에는 트레이드 오프가 있다. SQLite는 일반적으로 더 많은 메모리를 줄수록 더 빨리 실행됩니다. 그럼에도 불구하고 성능은 보통 낮은 메모리 환경에서도 매우 우수합니다. SQLite는 사용 방법에 따라 직접 파일 시스템 I/O보다 빠를 수 있습니다.
SQLite는 모든 릴리스 전에 매우 조심스럽게 테스트되며 매우 신뢰할 수 있다는 평판을 가지고 있습니다. 대부분의 SQLite소스 코드는 순전히 테스트와 확인에만 사용됩니다. 자동화된 테스트 제품군은 수억개의 개별 SQL문이 포함된 수백만개의 테스트 사례를 실행하고 100%지점 테스트 적용 범위를 달성합니다. SQLite는 메모리 할당 오류 및 디스크 I/O오류에 우아하게 반응합니다. 시스템 충돌 또는 전원 장애로 인해 중단된 경우에도 트랜잭션은 ACID입니다. 이 모든 것은 시스템 고장을 시뮬레이션하는 특수 테스트 하니스를 사용하여 자동화된 테스트를 통해 확인됩니다. 물론, 이 모든 테스트에도 불구하고, 여전히 버그가 있습니다. 그러나 일부 유사한 프로젝트(특히 상업적 경쟁 업체)와는 달리 SQLite는 모든 버그에 대해 개방적이고 정직하며 버그 목록과 코드 변경 사항을 분 단위로 제공합니다.
SQLite코드 베이스는 SQLite에서 정규직으로 작업하는 국제 개발자 팀이 지원합니다. 개발자들은 SQLite의 기능을 계속해서 확장하고 게시된 인터페이스 규격, SQL구문 및 데이터베이스 파일 형식과 이전 버전과의 호환성을 유지하면서 신뢰성과 성능을 향상시킵니다. 소스 코드는 원하는 사용자에게는 절대적으로 무료이지만 전문가의 지원도 받을 수 있습니다.
SQLite프로젝트는 2000년 5월 9일에 시작되었습니다. 미래는 항상 예측하기 어렵지만, 개발자들의 목적은 2050년까지 SQLite를 지원하는 것입니다.

728x90
반응형

댓글