Warum nur ein gruppierter index pro Tabelle in sql server erstellt werden?
Habe ich gelesen, die Tipps zu sql server-Datenbank auf http://www.sql-server-performance.com/2007/clustered-indexes
In der Schlussfolgerung Abschnitt Autor erwähnt:
"Da kann man nur erstellen Sie einen gruppierten index pro Tabelle, nehmen Sie zusätzliche Zeit zu überlegen, wie es verwendet wird."
Meine Frage ist:
*Warum nur ein gruppierter index pro Tabelle in sql server erstellt werden? *
Denn es ist physikalisch unmöglich, um eine Tabelle nach zwei verschiedenen Bestellungen. Mehr Informationen finden Sie hier: use-the-index-luke.com/blog/2014-01/...
Dies gilt für die meisten DBMS
Diese Frage scheint off-topic, da OP hat nicht gezeigt, jede Forschung.
Dies gilt für die meisten DBMS
Diese Frage scheint off-topic, da OP hat nicht gezeigt, jede Forschung.
InformationsquelleAutor Hadi Sharifi | 2014-01-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Clustered Index:
Clustered index definiert die Art und Weise, in der die Daten physisch angeordnet auf der Festplatte.
Und es kann nur einen Weg, in dem Sie um die Daten physisch.
Daher kann es nur einen gruppierten index pro Tabelle.
Warum kümmern gruppierten index?
Wenn wir gruppierten index auf die Tabelle dann die Daten abgerufen werden viel mehr schneller, weil sql server doesnot Lesen Sie die gesamte Daten -- Hängt davon ab, Abfrage.
Aber der Datenabruf ist viel schneller.
HINWEIS: Sie können Zwar mehr als einen Nicht-Gruppierten index auf eine einzelne Tabelle.
InformationsquelleAutor Punter015
Dies ist einfach die SQL Server-Implementierung Entscheidung. Theoretisch gibt es kann eine beliebige Anzahl von clustering-Indizes. MongoDB und MyISAM haben kein clustering Indexe und speichern von Daten in einer Flatfile. InnoDB für MySQL hat ein clustering-index, der Primärschlüssel, die können ausgeblendet werden, wenn ein primary key ist nicht deklariert. TokuDB für MySQL und TokuMX (die ich beide arbeiten) erlauben dem Benutzer, mehrere clustering-Indizes, mit der impliziten Nachteil, dass mehr Speicherplatz verwendet für schnellere Abfragen.
InformationsquelleAutor Zardosht Kasheff
Weil der gruppierte index ist die Art und Weise, dass die Daten in der Tabelle angeordnet, wenn es auf die Festplatte geschrieben wird. In anderen Worten, kann der gruppierte index ist den Tisch.
Dies ist auch der Grund, warum Sie können nicht angeben, enthalten die Spalten auf einem gruppierten index, weil durch seine Natur alle Spalten sind bereits enthalten.
InformationsquelleAutor paulH
Einen gruppierten index sortiert und speichert die Daten in der Zeilen in der Tabelle, basierend auf dem index der wichtigsten Werte. Daher nur ein gruppierter index erstellt werden kann, auf jedem Tisch, da die Datenzeilen nur in einer Reihenfolge sortiert werden.
Schaffen, einen anderen gruppierten index auf derselben Tabelle, ändern der
Create as Clustered
- Eigenschaft die Einstellung auf die vorhandenen gruppierten index erstellen, bevor der zweite index.InformationsquelleAutor N J
KÖNNEN SIE! (indirekt)
Wenn Sie mehrere gruppierten index für eine Tabelle erstellen könnte indizierte Sicht in der Tabelle. Aber zur gleichen Zeit, sollten Sie sich bewusst sein, dass clustered-index hat immer seine Kosten.
InformationsquelleAutor Pei
Einen gruppierten index bestimmen, die physische Reihenfolge der Daten in der Tabelle , ist wie ein Haus-Adresse, die ist, warum wir sollten nur eine Adresse , wenn nicht der Postbote verwirrt.
http://msdn.microsoft.com/en-us/library/aa933131.aspx
InformationsquelleAutor Ahmed Amoumene