Ich optimiere ein Data Warehouse mithilfe von Indizes. Ich bin ziemlich neu in SQL Server 2014. Microsoft beschreibt Folgendes:
"Wir betrachten den Clustered-Columnstore-Index als Standard für das Speichern von Faktentabellen für große Data-Warehouses und erwarten, dass er in den meisten Data-Warehousing-Szenarien verwendet wird. Da der Clustered-Columnstore-Index aktualisierbar ist, kann Ihre Workload eine große Anzahl von Einfüge-, Aktualisierungs- und löschen. " http://msdn.microsoft.com/en-us/library/gg492088.aspx
Wenn Sie jedoch weiter in der Dokumentation lesen, finden Sie unter Einschränkungen und Einschränkungen:
Msgstr "Kann keine eindeutigen Bedingungen, Primärschlüsselbedingungen oder Fremdschlüsselbedingungen haben."
Das verwirrt mich sehr! Es wird empfohlen (nicht obligatorisch), Fremdschlüssel aus verschiedenen Gründen im Data Warehouse zu haben (Datenintegrität, für die semantische Ebene sichtbare Beziehungen ...).
Microsoft empfiehlt daher Clustered Columnstore-Indizes für Data Warehouse-Szenarien. Es kann jedoch keine Fremdschlüsselbeziehungen verarbeiten.
Habe ich Recht? Welche weiteren Ansätze würden Sie empfehlen? In der Vergangenheit habe ich in Data Warehouse-Szenarien einen nicht gruppierten Columnstore-Index verwendet, mit Drop und Rebuild für das Laden von Daten. Allerdings fügt SQL Server 2014 dann keinen wirklichen neuen Wert für Data Warehouses hinzu?