Frage

In Datenbanken wie MySQL oder Oracle, wie implementiert Indizes? Ich denke, regelmäßig Indizes wie B-Bäume gespeichert sind, aber nichts über Composite-Indizes, des Index für mehrere Spalten finden kann. Ich bin für die Namen der Datenstrukturen der Suche verwendet wird, so kann ich sie erforschen.

Generell wo kann ich mehr solche Informationen über Datenbank-Implementierungsdetails finden? Ich werde einen Kurs an, dass viel später in der Universität zu nehmen, aber ich bin jetzt neugierig.

War es hilfreich?

Lösung

Composite-Indizes verwenden, auch B-Bäume, sie nur die indizierten Spalten verketten die Schlüssel zu bestimmen. Als Nebenknoten kennt Oracle auch andere Indextypen, d.h. Bitmap-Indizes. Aber das hängt nicht von der Anzahl der Spalten indiziert werden.

Andere Tipps

B-Bäume. Jeder Index als B-Baum gespeichert ist -. Auch Verbund diejenigen

Wenn Sie schauen, mehr Forschung zu tun, wie Indizes organisiert sind, schauen Sie in B + Bäume und B * Bäume. Für SQL Server, Kalen Delaney Inside SQL Server: Die Storage Engine ist ein ausgezeichnetes Buch über die Schrauben und Muttern von SQL Server, einschließlich der Index Organisation. So sollten Sie auf jeden Fall prüfen, ob aus.

Ein Kommentator weist darauf hin, dass Oracle Bitmap-Indizes zu verwenden, die als B-Bäume sehr unterschiedlich strukturiert sind, aber die sind für die traditionellen relationalen Datenbanken selten verwendet - sie häufiger verwendet sind für OLAP-Typ-Anwendungen und in Fällen, in denen Sie benötigen einen schnellen Zugriff auf eine nicht-selektive Gruppe von Daten.

EDIT: SQL Server, verwendet zum Beispiel jetzt Columns Indizes . Wenn Sie Arbeiten mit großen BI-Typ-Workloads zu tun, dann ist es auf jeden Fall lohnt sich, diese suchen, wie sie in einer ganz anderen Art und Weise Ihre Daten speichern, als ein B-Baum.

SQL Server verwendet auch einen anderen Mechanismus jetzt Speicher optimiert Tabellen als auch, und ist etwas, das für OLTP-Abfragen vom Typ sehr nützlich ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top