簡體   English   中英

內存數據庫和嵌入式數據庫的區別

[英]difference between in-memory and embedded databases

我想知道我的理解是否正確:

嵌入式:如果我的應用程序啟動,數據庫就會啟動,如果我的應用程序關閉,數據庫就會關閉。 我不是指嵌入式空間中使用的數據庫。

內存中:數據庫可以在任何服務器上; 無論我的應用程序在哪里運行。 只是,這些使用主要的 memory。

完全披露:我代表eXtremeDB的供應商。

嵌入式數據庫至少從80年代初開始就存在。 db_VISTA,c-tree,btrieve,Empress是當天最常見的一些。

“嵌入式數據庫”與嵌入式系統無關。 它只是指一個數據庫管理系統,它作為一組目標代碼庫提供給程序員,這些目標代碼庫將與應用程序目標代碼鏈接成可執行程序映像。 換句話說,數據庫功能在同一地址空間中成為應用程序本身的一部分。 嵌入式數據庫主要用於80年代和90年代的業務線應用程序。 直到90年代末和21世紀初,嵌入式系統開始向足夠數量的32位架構遷移,數據庫系統才被認為具有商業可行性。 eXtremeDB於2001年推出,是第一個專為嵌入式系統編寫的內存嵌入式數據庫系統。 (8位和16位系統沒有足夠的可尋址內存來支持DBMS。)

嵌入式數據庫系統可以是內存數據庫或永久數據庫(即基於磁盤的數據庫)。

內存數據庫系統可以是嵌入式數據庫系統,也可以是客戶端/服務器數據庫系統。

客戶端/服務器數據庫系統可以是內存數據庫系統,也可以是持久數據庫系統。

如您所見,所有線條交叉。 你可以有

  • 客戶端/服務器在內存中
  • 客戶端/服務器持久化
  • 嵌入式內存
  • 嵌入式持久化

而且,你有上述所有的混合動力車。

數據庫管理系統架構

  • Client-Server model:分布式結構,DBMS 駐留在服務器上,客戶端應用程序訪問數據庫; 數據庫以服務器模式表示。
  • In-Process model:DBMS和應用程序在同一個進程中運行的單體結構; 數據庫以嵌入式模式表示。

數據庫管理系統存儲

  • in-memory:采用memory作為數據存儲(磁盤作為備份)的數據庫管理系統,數據庫稱為in-memory模式。
  • 磁盤上或持久性:使用磁盤作為數據存儲(和 memory 作為緩存)的數據庫管理系統。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM