2009-02-02 21 views

回答

3

MySQL具有可插拔存儲系統。這意味着引擎可以使用不同的存儲。 它目前有5-6個你可以使用的。由於它是開源的,你可以看到它是如何完成的。

SQLite使用它自己的B-Tree實現與日記功能。開源 - 你可以看看它。

Firebird and Interbase正在使用B-Trees和多記錄版本控制系統進行存儲。 Firebird是開源的。值得期待。

不能告訴了甲骨文MS SQL Server的或其他專有數據庫系統,因爲他們保持存儲信息的機密性。

+0

感謝您的回答! – Prabu 2009-02-02 16:16:06

5

一般一個聰明的實施B-Trees

從上述鏈接維基百科文章:

m階(兒童爲每個節點的最大數目)

B樹是滿足一個樹以下屬性:

  1. 每個節點最多有m個孩子。
  2. 每個節點(根和樹葉除外)至少有m/2個孩子。
  3. 如果根目錄不是葉節點,則該目錄至少有兩個子目錄。
  4. 所有葉子出現在相同的水平,並攜帶信息。
  5. 具有k兒童的非葉節點包含k-1個鍵

這些都使得數據可以在對數時間被訪問,與大多數搜索樹(如標準的二進制樹)的優點,但是在一般情況下時序特性更好。

+0

謝謝,其內容豐富 – Prabu 2009-02-02 11:49:57