2009-02-02 25 views

Antwort

3

MySQL verfügt über steckbare Speichersysteme. Das bedeutet, dass die Engine verschiedene Speicher verwenden kann. Es hat derzeit 5-6 von denen, die Sie verwenden können. Und da es Open Source ist, können Sie sehen, wie es gemacht wird.

SQLite verwendet eine eigene B-Tree-Implementierung mit Journaling. Open Source - Sie können es sich ansehen.

Firebird und Interbasis verwenden B-Bäume mit mehreren Datensätzen Versionssystemen für die Lagerung. Firebird ist Open Source. Sehenswert.

Kann nicht sagen, für Oracle, MS SQL Server oder andere proprietäre Datenbanksysteme, da sie Speicher Informationen geheim zu halten.

+0

Danke für die Antwort! – Prabu

+0

Oracle, MS und Sybase sind proprietär, aber die interne Struktur doco ist überhaupt nicht geheim. Für Käufer frei verfügbar. Könnte ein bisschen schwieriger sein, es im Internet zu finden. Wie auch immer, B-Trees sind nur eine Speicherstruktur, was ist mit den anderen? – PerformanceDBA

5

Normalerweise wird eine geschickte Umsetzung B-Trees

Aus der obigen verknüpft wikipedia Artikel:

Ein B-Baum der Ordnung m (die maximale Anzahl der Kinder für jeden Knoten) ist ein Baum, der die erfüllt folgende Eigenschaften:

  1. Jeder Knoten hat höchstens m Kinder.
  2. Jeder Knoten (außer Stamm und Blätter) hat mindestens m/2 Kinder.
  3. Die Wurzel hat mindestens zwei Kinder, wenn es sich nicht um einen Blattknoten handelt.
  4. Alle Blätter erscheinen auf der gleichen Ebene und tragen Informationen.
  5. Ein Nicht-Astknoten mit k Kinder k-1 Schlüssel

Die Vorteile davon enthält, sind, dass die Daten in logarithmischer Zeit zugegriffen werden kann, wie bei den meisten Suchbäume (zB Standard Binärbäume) , aber die Timing-Eigenschaften sind im Durchschnitt besser.

+0

danke, es ist informativ – Prabu