資料來源:SQLite權威指南-P003~P004
從某個角度來說,SQLite 最初的構思是在一條軍艦上進行的。SQLite 的作者D. Richard Hipp當時正在為美國海軍編制一種使用在導彈驅逐艦上的程式。那個程式最初是運行在Hewlett-Packard Unix (HPUX)上,後臺使用Informix 資料庫。對那個程式來說,Informix 有點兒太強大了。一個有經驗的資料庫管理員(DBA)可能需要一整天來對它進行安裝和升級,如果沒經驗,這個工作就可能永遠也做不完了。
2000 年一月,Hipp 開始和一個同事討論關於創建一個簡單的內嵌式SQL 資料庫的想法,這個資料庫將使用GNU DBM B-Tree library (gdbm)做後臺,同時這個資料庫將不需要安裝和管理支援。後來,當有些空閒時間時,Hipp 就開始實施這項工作,並在2000 年的八月份發布了SQLite 的1.0 版。
按照原定計劃,SQLite 1.0 用gdbm 來做存儲管理。但後來,Hipp 很快就換成了自己的B-tree,以支援事務和記錄按主鍵的存儲。隨著最初的升級,SQLite 在功能和用戶數上都得到了穩步的發展。在2001 年中期,很多專案——開源的或商業的——都開始使用SQLite。在那以後的幾年中,開源社區的其他成員開始為他們喜歡的程式設計語言編寫SQLite 擴展。SQLite的ODBC 介面可以為Perl、Python、Ruby、Java 和其他主流的程式設計語言提供支援,這證明了SQLite 有廣闊的應用前景。
2004 年,SQLite 從版本2 升級到版本3,這是一次大升級。主要目的是增加內置的對UTF-8、UTF-16 及用戶定義字元集的支援。While 3.0 was originally slated for release in summer 2005,America Online provided the necessary funding to see that it was completed by July 2004. 除國際化功能外,版本3 的其他新特性包括:經過修補的C API,更緊湊的資料庫檔格式(比原來節省25%的空間),弱類型,大二進位物件(BLOB)的支援,64-bit 的ROWID,autovacuum和改進了的併發控制。儘管增加了這一系列新特性,版本3 的運行庫仍然小於240K 位元組。
Another improvement in version 3 was a good code cleanup—revisiting and rewriting, or
otherwise throwing out extraneous stuff accumulated in the 2.x series.SQLite 持續增長並始終堅持其最初的設計目標:簡單、彈性、緊湊、速度和徹底的易用。
沒有留言:
張貼留言