2017-05-10 2 views
0

Ich empfange Nachrichten von Sensoren in Kinesis, verarbeiten Sie es mit Lambda und laden Sie Redshift mit Kinesis Firehose. Alle Nachrichten werden analysiert und in eine große Staging-Tabelle eingefügt. Wir müssen Aggregation/Analyse von Sensordaten durchführen. Neben Sensordaten gibt es auch viele Informationen in der Kopfzeile, die wir speichern, aber momentan nicht verwenden.Normalisierung vs Kompression

Ist es für mich sinnvoll, Daten aus dieser Staging-Tabelle in ein normalisiertes Sternschema zu laden oder nur die Komprimierung für Spalten zu aktivieren und stattdessen eine riesige denormalisierte Tabelle zu verwenden? Wie gut funktioniert Redshift mit denormalisierten Daten? Vor- und Nachteile beider Optionen?

+0

Nicht sicher, was Sie unter "normalisiertes Sternschema" verstehen - per Definition sind Sternschemas * denormalized *. – Nathan

+0

Warum testen Sie nicht Ihre Hypothese? Versuchen Sie, die Daten in ein Sternschema zu laden, vergleichen Sie Ihre häufigsten Abfragen und die Größe der Tabellen. Und laden Sie die Daten in eine große Tabelle und machen Sie dasselbe. Du wirst deine Antwort haben. Es hängt wirklich vom Anwendungsfall für die Tabelle und Größe der Daten ab. Kein "richtiger Weg", um dies zu tun. – Satyadev

+0

@Nathan Du hast recht, ich meinte schneeflockenartig mit normalisierten Dimensionen – szu

Antwort

1

Meiner Erfahrung nach verursachen große Tabellen mit vielen Spalten langsame Abfragen. Wenn Sie schmalere Tabellen anstelle von breiten Tabellen erstellen, erzielen Sie möglicherweise eine bessere Leistung. Bevor Sie sich entscheiden, was zu tun ist, sollten Sie die Abfragen für die Analyse und die Abfragen zum Erstellen von Aggregattabellen sowie die Speicherdichte der Daten berücksichtigen. Auf der anderen Seite sind Joins insgesamt teuer. Und wenn Sie eine Struktur benötigen, die viel "Join" erfordert, sollten Sie die Sortier- und die Dist-Taste entsprechend anpassen. Hier ist die Dokumentation https://aws.amazon.com/blogs/big-data/optimizing-for-star-schemas-and-interleaved-sorting-on-amazon-redshift/