天天看點

SequoiaDB資料庫的一般概念介紹

 文章轉自: http://blog.csdn.net/sequoiadb/article/details/12106005

SequoiaDB資料庫的主要對象包括文檔、集合、集合空間與索引等。 

文檔 

SequoiaDB中的文檔為JSON格式,一般又被稱為記錄。在資料庫内部使用BSON,即二進制的方式存放JSON資料。一般情況下,一條文檔由一個 或多處字段構成,每個字段分為鍵值與數值兩個部分。需要指出的是:BSON文檔可能有多個同名字段,但是,大多數SequoiaDB接口不支援重複的字段 名;SequoiaDB内部程式建立的一些文檔可能含有重名的字段,但是不會向現有的使用者文檔添加重名的鍵。 

集合 

集合(Collection)是SequoiaDB資料庫中存放文檔的邏輯對象。任何一條文檔必須屬于一個且僅一個集合。 

集合空間 

集合空間(Collection Space)是資料庫中存放集合的實體對象。任何一個集合必須屬于一個且僅一個集合空間。每一個集合空間在資料節點均對應一個檔案。 

資料庫伺服器 

SequoiaDB是文檔型号非關系型資料庫伺服器,資料庫伺服器提供軟體服務以便安全、高效地管理資訊。資料庫伺服器是指安裝了SequoiaDB資料 庫引擎的計算機。SequoiaDB引擎為資料存取操作的基本單元,在分布式架構中,每個資料庫作為一外節點存在,節點之間的資料無共享。在一台計算機 中,每一個SequoiaDB資料庫引擎對應一個資料庫路徑,該資料庫中所有的集合空間均放置在該目錄中。資料庫路徑包含一個或多個集合空間。每個資料庫 引擎可以包含最多4096個集合空間。 

索引 

在SequoiaDB資料庫中,索引是一咱特殊的資料對象。索引本身不做為儲存使用者資料的容器。而是作為一種特殊的中繼資料,提高資料通路的效率。每一個索 引必須建立在一個集合中,一個集合最多可以擁有64個索引。索引可以被認為是将資料按照某個或多上給定的字段進行排序,進而在其中快速搜尋到使用者指定查詢 條件的方式。在SequoiaDB中,索引使用B樹結構。 

事務 

事務是一系列操作組成的邏輯工作單元。在同一個會話在(或連接配接)中,同一時刻隻允許存在一個事務,也就是說當使用者在一次會話中建立了一個事務,在這個事務 結束前使用者不能再建立新的事務。事務作為一個完整的工作單元執行,事務中的操作要麼全部執行成功要麼全部執行失敗。SequoiaDB事務中的操作隻能是 插入資料、修改資料和删除資料,在事務過程中執行的其它操作不會納入事務範疇,也就是說事務復原時非事務操作不會被執行復原。如果一個表或表空間中有資料 涉及事務操作,則該表或表空間不允許被删除。預設情況下,事務功能是關閉的。 

最終一緻性政策 

SequoiaDB為了提升資料的可靠性和實作資料的讀寫分離,對于複制組間的資料采用“最終一緻性”政策,在讀寫分離時讀取的資料某一個時期内可能不是最新的,但最終是一緻的。 

讀寫分離 

SequoiaDB中,所有寫請求都隻會發往節點,如果沒有主節點則目前資料組不可處理寫請求。 

叢集 

SequoiaDB叢集是指通過并聯合多台資料庫伺服器,達到并行計算,以提升資料請求效率的方式。通過SequoiaDB叢集,可以高性能的資料通路,保障資料高可用性,達到資料庫的水準擴張能力。 

運作模式 

是指啟動SequoiaDB服務時,該服務以獨立模式啟動還是以叢集模式啟動。獨立模式是啟動SequoiaDB的最精簡模式,僅需要啟動一個獨立模式的 資料節點,即可進行資料服務。(一般推薦在開發環境中使用獨立模式,以減少對硬體資源的需求。)叢集模式是啟動SequoiaDB的标準模式,至少需要三 個節點。 

節點 

編目節點:是一種邏輯節點,其中儲存了資料庫的中繼資料資訊,而不儲存其他使用者資料。除了編目節點外,叢集中所有其他的節點不在磁盤中儲存任何全局中繼資料信 息。當需要通路其他節點上的資料時,除編目節點外的其他節點需要從本地緩存中尋找集合資訊,如果不存在則需要從編目節點擷取。編目節點與其它節點之間主要 使用編目服務端口進行通訊。 

協調節點:也是一種邏輯節點,基中并不儲存任何使用者資料資訊。協調節點作為資料請求部分的協調者,本身并不參與資料的比對與讀寫操作,而僅僅是将請求分發到所需要處理的資料節點為。協調節點與其它節點之間主要使用分區服務端口進行通訊。 

資料節點:仍是一種邏輯節點,其中儲存使用者資料資訊。資料節點中高有專門的編目資訊集合,是以第一次通路集合前需要向編目節點請求該集合的中繼資料資訊。在獨立模式中,資料節點為單獨的服務提供者,直接與應用程式或用戶端進行通訊,并且不需要通路任何編目資訊。 

分區組 

又被稱為複制組,一個複制組内可以包含一個或多個資料節點(或編目節點),節點之間的資料使用異步日志複制機制,保持最終一緻。分區組中所有的節點之間使 用複制服務端口進行通訊,定期互相發送心跳資訊以互相驗證狀态。每個分區組的節點有兩種狀态:主節點(可作讀寫操作,所有寫入的資料會同步寫入日志檔案, 日志檔案中的日志資訊會異步寫入從節點)和從節點(作隻讀操作,所有從主節點寫入的資料會異步寫入從節點,是以從節點與主節點之間可能存在暫時的資料不一 緻,但是複制機制可以保證資料的最終一緻性)。 

資料分區 

在SequoiaDB叢集環境中,使用者往往将資料存放在不同的邏輯節點與實體節點中,以達到交行計算目的。由于每一個存放資料的分區組中所有節點包含的資料完全相同,每個分區組被稱作一個“分區”每個分區之間的資料互不影響,無共享狀态。 

以上介紹了SequoiaDB資料庫的一些基本概念,希望能對深入了解及高效使用SequoiaDB資料庫有所幫助。 

學習教程下載下傳    

SequoiaDB Demo VMware 學習教程 

   Linux 平台(社群版)     

Sequoiadb-1.3 for IBM Power Linux 64 Installer 202.60MB 

Sequoiadb-1.3 for Linux x86_64 Installer 201.72MB