[嵌入式數據庫/RDBMS] SQLite 3.x: 全球部署最廣泛的零配置、單文件、嵌入式 ACID 關係型數據庫引擎
刷到《[嵌入式數據庫/RDBMS] SQLite 3.x: 全球部署最廣泛的零配置、單文件、嵌入式 ACID 關係型數據庫引擎》,內容很實在,值得細讀。這篇把它的關鍵做法提煉出來,幫你省下通讀的時間,結尾附行動建議。
0 序 緣起 Chroma、Weixin 、Windows、Android 等都在使用 SQL Lite 兩年前開始、至近期多次使用、研究 DB-GPT 這個 Data-Agent 開源項目。 DB-GPT 項目基於 Chroma 向量數據庫做 Data-Agents Chroma 向量數據庫自 0.4.0 開始,基於 SQL Lite 構建,將其作爲元數據庫。 [DataAgents] DB-GPT 源碼剖析 - 博客園/數據知音 查看 本地嵌入式向量存儲 chroma 的信息 - 查看 Chroma 的 嵌入式 SQL Lite 數據庫 1 概述 產品介紹 SQLite 是一個自包含(self-contained)、零配置(zero-configuration)、事務性、嵌入式 SQL 數據庫引擎 。它不是 傳統的客戶端/服務端數據庫 ,而是一個被直接鏈接(或以動態庫形式加載)到應用進程中的 C 語言庫 ,整個數據庫通常就是磁盤上的 一個普通文件 。 產品定位 :嵌入式/進程內關係型數據庫引擎(embedded SQL database engine),面向"不需要 DBA、不需要單獨服務器、部署越簡單越好"的場景。
0 序 緣起 Chroma、Weixin 、Windows、Android 等都在使用 SQL Lite 兩年前開始、至近期多次使用、研究 DB-GPT 這個 Data-Agent 開源項目。 DB-GPT 項目基於 Chroma 向量數據庫做 Data-Agents Chroma 向量數據庫自 0.4.0 開始,基於 SQL Lite 構建,將其作爲元數據庫。 [DataAgents] DB-GPT 源碼剖析 - 博客園/數據知音 查看 本地嵌入式向量存儲 chroma 的信息 - 查看 Chroma 的 嵌入式 SQL Lite 數據庫 1 概述 產品介紹 SQLite 是一個自包含(self-contained)、零配置(zero-configuration)、事務性、嵌入式 SQL 數據庫引擎 。它不是 傳統的客戶端/服務端數據庫 ,而是一個被直接鏈接(或以動態庫形式加載)到應用進程中的 C 語言庫 ,整個數據庫通常就是磁盤上的 一個普通文件 。 產品定位 :嵌入式/進程內關係型數據庫引擎(embedded SQL database engine),面向"不需要 DBA、不需要單獨服務器、部署越簡單越好"的場景。 誕生背景與原因 :SQLite 由 D. Richard Hipp 於 2000 年 8 月 設計併發布第一個版本,最初是爲美國海軍艦艇(Navy shipboard)項目打造的——當時團隊希望擺脫對客戶端/服務端數據庫(如 PostgreSQL)"需要安裝、配置、管理"的依賴,得到一個 開箱即用、崩潰後能自愈、隨程序一起發佈 的小型數據庫。
0 序 緣起 Chroma、Weixin 、Windows、Android 等都在使用 SQL Lite 兩年前開始、至近期多次使用、研究 DB-GPT 這個 Data-Agent 開源項目。 DB-GPT 項目基於 Chroma 向量數據庫做 Data-Agents Chroma 向量數據庫自 0.4.0 開始,基於 SQL Lite 構建,將其作爲元數據庫。 [DataAgents] DB-GPT 源碼剖析 - 博客園/數據知音 查看 本地嵌入式向量存儲 chroma 的信息 - 查看 Chroma 的 嵌入式 SQL Lite 數據庫 1 概述 產品介紹 SQLite 是一個自包含(self-contained)、零配置(zero-configuration)、事務性、嵌入式 SQL 數據庫引擎 。它不是 傳統的客戶端/服務端數據庫 ,而是一個被直接鏈接(或以動態庫形式加載)到應用進程中的 C 語言庫 ,整個數據庫通常就是磁盤上的 一個普通文件 。 產品定位 :嵌入式/進程內關係型數據庫引擎(embedded SQL database engine),面向"不需要 DBA、不需要單獨服務器、部署越簡單越好"的場景。 誕生背景與原因 :SQLite 由 D. Richard Hipp 於 2000 年 8 月 設計併發布第一個版本,最初是爲美國海軍艦艇(Navy shipboard)項目打造的——當時團隊希望擺脫對客戶端/服務端數據庫(如 PostgreSQL)"需要安裝、配置、管理"的依賴,得到一個 開箱即用、崩潰後能自愈、隨程序一起發佈 的小型數據庫。 解決的核心問題 : 消除傳統 RDBMS 的 安裝、配置、運維、網絡協議 負擔; 用一個文件解決 單機結構化數據持久化 問題; 在資源受限環境(嵌入式設備、手機、瀏覽器、桌面軟件)提供完整的 SQL 與 ACID 事務。
0 序 緣起 Chroma、Weixin 、Windows、Android 等都在使用 SQL Lite 兩年前開始、至近期多次使用、研究 DB-GPT 這個 Data-Agent 開源項目。 DB-GPT 項目基於 Chroma 向量數據庫做 Data-Agents Chroma 向量數據庫自 0.4.0 開始,基於 SQL Lite 構建,將其作爲元數據庫。 [DataAgents] DB-GPT 源碼剖析 - 博客園/數據知音 查看 本地嵌入式向量存儲 chroma 的信息 - 查看 Chroma 的 嵌入式 SQL Lite 數據庫 1 概述 產品介紹 SQLite 是一個自包含(self-contained)、零配置(zero-configuration)、事務性、嵌入式 SQL 數據庫引擎 。它不是 傳統的客戶端/服務端數據庫 ,而是一個被直接鏈接(或以動態庫形式加載)到應用進程中的 C 語言庫 ,整個數據庫通常就是磁盤上的 一個普通文件 。 產品定位 :嵌入式/進程內關係型數據庫引擎(embedded SQL database engine),面向"不需要 DBA、不需要單獨服務器、部署越簡單越好"的場景。 誕生背景與原因 :SQLite 由 D. Richard Hipp 於 2000 年 8 月 設計併發布第一個版本,最初是爲美國海軍艦艇(Navy shipboard)項目打造的——當時團隊希望擺脫對客戶端/服務端數據庫(如 PostgreSQL)"需要安裝、配置、管理"的依賴,得到一個 開箱即用、崩潰後能自愈、隨程序一起發佈 的小型數據庫。 解決的核心問題 : 消除傳統 RDBMS 的 安裝、配置、運維、網絡協議 負擔; 用一個文件解決 單機結構化數據持久化 問題; 在資源受限環境(嵌入式設備、手機、瀏覽器、桌面軟件)提供完整的 SQL 與 ACID 事務。 許可證 :SQLite 採用 公有領域(Public Domain,官方稱 "The Blessing") 方式發佈, 無任何版權限制,可任意複製、修改、商用,無須授權、無須署名 。
0 序 緣起 Chroma、Weixin 、Windows、Android 等都在使用 SQL Lite 兩年前開始、至近期多次使用、研究 DB-GPT 這個 Data-Agent 開源項目。 DB-GPT 項目基於 Chroma 向量數據庫做 Data-Agents Chroma 向量數據庫自 0.4.0 開始,基於 SQL Lite 構建,將其作爲元數據庫。 [DataAgents] DB-GPT 源碼剖析 - 博客園/數據知音 查看 本地嵌入式向量存儲 chroma 的信息 - 查看 Chroma 的 嵌入式 SQL Lite 數據庫 1 概述 產品介紹 SQLite 是一個自包含(self-contained)、零配置(zero-configuration)、事務性、嵌入式 SQL 數據庫引擎 。它不是 傳統的客戶端/服務端數據庫 ,而是一個被直接鏈接(或以動態庫形式加載)到應用進程中的 C 語言庫 ,整個數據庫通常就是磁盤上的 一個普通文件 。 產品定位 :嵌入式/進程內關係型數據庫引擎(embedded SQL database engine),面向"不需要 DBA、不需要單獨服務器、部署越簡單越好"的場景。 誕生背景與原因 :SQLite 由 D. Richard Hipp 於 2000 年 8 月 設計併發布第一個版本,最初是爲美國海軍艦艇(Navy shipboard)項目打造的——當時團隊希望擺脫對客戶端/服務端數據庫(如 PostgreSQL)"需要安裝、配置、管理"的依賴,得到一個 開箱即用、崩潰後能自愈、隨程序一起發佈 的小型數據庫。 解決的核心問題 : 消除傳統 RDBMS 的 安裝、配置、運維、網絡協議 負擔; 用一個文件解決 單機結構化數據持久化 問題; 在資源受限環境(嵌入式設備、手機、瀏覽器、桌面軟件)提供完整的 SQL 與 ACID 事務。 許可證 :SQLite 採用 公有領域(Public Domain,官方稱 "The Blessing") 方式發佈, 無任何版權限制,可任意複製、修改、商用,無須授權、無須署名 。 URLs : 官網: (鏈接略) GitHub 鏡像: (鏈接略) 注:官方源碼以 Fossil SCM 爲主倉庫,GitHub 僅爲只讀鏡像,自 2019 年起同步 發展歷程 時間 版本 關鍵節點 2000-08-17 1.0.0 首次公開發布,確立嵌入式、零配置定位 2004-06-18 3.0.0 3.x 時代開端 :更緊湊的文件格式、 manifest 類型系統 、BLOB 支持、UTF-8/UTF-16 雙編碼、用戶自定義排序規則、 64 位 ROWID 、併發能力顯著提升 2005-01-21 3.1.0 完善觸發器、視圖、外鍵等關係型特性 2010-07-21 3.7.0 首次引入 WAL(Write-Ahead Logging) 模式,讀不阻塞寫、寫不阻塞讀,成爲後續主力併發模式 2013-08-26 3.8.0 改進查詢優化器(基於 bytecode 的 VDBE 重寫)、可內存映射 I/O、CTE(WITH 子句) 2015-10-14 3.9.0 加入 JSON1 擴展、FTS5 全文檢索、表達式索引、表值函數 ,並開始採用 語義化版本號 2018-09-15 / 09-18 3.25.0 / 3.24.0 支持 窗口函數(Window Functions) ;支持 UPSERT(ON CONFLICT ... DO UPDATE) 2020-01-22 3.31.0 支持 生成列(Generated Columns) ;JSON 增加 -> / ->> 運算符 2021-03-12 3.35.0 支持 ALTER TABLE DROP COLUMN 、 ALTER TABLE RENAME COLUMN 、 RETURNING 子句 2022-02-22 3.38.0 JSON 函數從擴展變爲內置默認 (不再需要 -DSQLITE_ENABLE_JSON1 );新增 -> / ->> 與 MySQL/PG 兼容寫法 2024-01-15 3.45.0 引入 JSONB(二進制 JSON 存儲格式) ,解析更快、存儲更緊湊 2026-04-09 / 2026-07-24 3.53.0 / 3.53.4 最新穩定線: ALTER TABLE 約束支持、自愈式表達式索引、WAL 損壞修復補丁等(當前主流 3.x 系列) 截至 2026-09,官方最新發布爲 3.53.4(2026-07-24) ,3.x 系列已連續演進 20 餘年,累計發佈 300+ 個版本。
最後提醒:每個人的環境不一樣,照抄之前先小步驗證。有了自己的驗證結果,這篇的價值才真正歸你。你怎麼看? 來源|博客園《[嵌入式數據庫/RDBMS] SQLite 3.x: 全球部署最廣泛的零配置、單文件、嵌入式 ACID 關係型數據庫引擎》,https://www.cnblogs.com/johnnyzen/p/22955495.html
評論(0)
暫無評論,來搶第一條。