SQLite, the Tiny Serverless Embedded RDBMS
SQLite is the most popular tiny database engine and has made its way into almost every computing device. Smartphones, either running Android or iOS, are likely to have apps that use it to store data. This article explores SQLite and how it can be used to
Although RDBMS' are now four decades old and have matured, things are beginning to change in the realm of database management systems, with the entry of NoSQL and NewSQL data management paradigms. However, enterprise efforts to shift to these new paradigms for their exploding data have been slow, owing to the relative maturity of RDBMSs. At the other end of the spectrum is this tiny SQL db engine that has been dominating its space. SQLite started out as a project to develop an embedded database with a design motive of not requiring any installation or administrator for maintenance, for a United States Navy program. ,W'V QRw wLGHOy XVHG LQ PRELOH DQG :HE-EDVHG GHVNWRS applications. The database engine is as small as 350 hB and supports most of the SQL 9O standard. It was developed by D Richard Hipp, and later the code was UHOHDVHG WR WKH SXEOLF, PDNLQJ LW RQH RI WKH KLJKOy DFWLvH RSHQ VRXUFH SURMHFWV. ,WV UHODWLvHOy VPDOO VLzH DQG WKH wide open source community support have been very appealing for developers, leading them to embed it in their applications. Although the database has official bindings for C/C++ and TCL only, the community-supported bindings are available for as many as O5 languages.
Distinctive features
TKH GDWDEDVH UHTXLUHV QR FRQfiJXUDWLRQ WR VHW XS, DQG WKH HQWLUH GDWD, DV wHOO DV DQy FRQfiJXUDWLRQ QHHGHG, LV VWRUHG LQ D VLQJOH flDW fiOH RQ WKH GLVN. TKLV wDV WKH PDLQ PRWLvH EHKLQG its development. Also, the database can explode up to the PDxLPXP fiOH VLzH RQ WKH XQGHUOyLQJ fiOHVyVWHP.
It is serverless and does not require any process of its own UXQQLQJ—DQG VR FDQ EH VWDWLFDOOy OLQNHG RU HPEHGGHG LQ WKH application itself. It can also be used as an in-memory database.
It supports full text search and is also ACID (atomicity, consistency, isolation, and durability) compliant. It is LPSOHPHQWHG LQ C, DQG wRUNV RQ DQy SODWIRUP. ,W LV DvDLODEOH DV SDUW RI WKH 2S LQ VPDUWSKRQH 2SV OLNH L2S DQG AQGURLG.
SQLite has gained a large user base because of its large community and the availability of bindings for all the recent popular languages.