Ich verstehe den Vorteil eines Partitionsschlüssels im Azure-Tabellenspeicher. Angesichts meines relationalen Datenbankhintergrunds bin ich jedoch etwas verwirrt darüber, wie eine Entität aus dem azurblauen Tabellenspeicher mit nur dem Zeilenschlüssel abgerufen werden kann. Soweit ich weiß, ist das unmöglich. Das bedeutet, dass ich das Partitionsschlüssel-/Zeilenschlüsselpaar irgendwo speichern muss, um die Entity mit dem Zeilenschlüssel zu erhalten. Sollte ich nur eine sharting Tabelle mit einem beliebigen Partitionsschlüssel einführen, der es mir erlaubt, den Partitionsschlüssel mit dem Zeilenschlüssel nachzuschlagen?Partitionsschlüssel und Zeilenschlüssel im Azure-Tabellenspeicher
1
A
Antwort
4
Es ist möglich, aber führt zu einem Tabellen-Scan wie in dieser section von MSDN beschrieben.
Wenn Sie nicht mehrere Partitionen benötigen, ist es absolut in Ordnung, eine einzelne Partition zu verwenden (z. B. mit einer Konstanten), wenn Ihre Daten nicht sehr groß sind und die Skalierbarkeit mehrerer Partitionen erfordert.
Ein anderer möglicher Ansatz ist, Ihre aktuelle RowKey
als PartitionKey
zu verwenden, die Ihnen eine hoch skalierbare Lösung geben würde, aber zu schlechter Leistung führen würde, wenn Sie Zeilenbereiche abfragen müssen.
Die verknüpfte MSDN-Seite spricht über die Vor- und Nachteile von beiden. Ich denke, mit Ihrem Wissen über Ihre spezifische Problemdomäne sollten Sie in der Lage sein, eine ausgewogene Lösung zu finden.
Verwandte Themen
- 1. Abfragen der Azure-Tabelle ohne Partitionsschlüssel und Zeilenschlüssel
- 2. Entität wird nicht zur Azure-Tabelle hinzugefügt, aber Zeilenschlüssel und Partitionsschlüssel werden korrekt hinzugefügt.
- 3. Azure-Tabellenspeicher Abfrage von Partitionsschlüssel
- 4. Wie kann ich Azure-Speichertabellenzeilenschlüssel und Partitionsschlüssel codieren?
- 5. HBase REST API Suche nach Zeilenschlüssel
- 6. Was bedeuten diese Zeilenschlüssel (% S) = @ C_fields?
- 7. CQL: Wählen Sie alle Zeilen, verschiedene Partitionsschlüssel
- 8. Abfrage von HBase Stargate für einen hexadezimalen Zeilenschlüssel über Ruby
- 9. Oracle-Partition - Fehler ORA14400 - eingesetzter Partitionsschlüssel wird keiner Partition zugeordnet
- 10. HBase Shell: Holen Sie sich eine Liste der Zeilenschlüssel
- 11. Wie bekomme ich den Zeilenschlüssel aus dem hbase Scan Ergebnis
- 12. Wie kann ich einen Partitionsschlüssel mit geringer Kardinalität in Cassandra vermeiden?
- 13. Gibt es einen Leistungsunterschied für diese zwei Hive-Abfragen, die zwei Tabellen verbinden und nach einem Partitionsschlüssel filtern?
- 14. Wie werden die Primärschlüssel in Phoenix als Zeilenschlüssel in hbase umgewandelt
- 15. Muss ich WHERE-Partitionsschlüssel-Klauseln in beide Tabellen eines Joins einbeziehen?
- 16. Wie gebe ich einen Zeilenschlüssel in der HBase-Shell an, der eine Registerkarte enthält?
- 17. Ergibt der gleiche Partitionsschlüssel in verschiedenen Cassandra-Tabellen den theoretischen Grenzwert der Zelle?
- 18. Rückruffunktion im Benutzermodus und im Kernelmodus
- 19. Abfrageausführung auf Azure-Speicher ist sehr langsam
- 20. @ModelAttribute und @SessionAttribute im Frühjahr
- 21. Verspottung im Spiel! und Scala
- 22. Scriptella und & im etl.xml
- 23. setContentView und Schaltflächen im Android
- 24. Zahlen und wählen im Speicher
- 25. Rückschlüssel und Wert im Wörterbuch
- 26. Bildverarbeitung im Shader und Exportergebnisse
- 27. Breakpoints und Debug im Freigabemodus
- 28. Kontur- und Perimetererkennung im Binärbild
- 29. RAII und Ausnahme im Konstruktor
- 30. Labels und Badges im Bootstrap
Relevante Dokumentation: https://msdn.microsoft.com/en-us/library/azure/hh508997.aspx#dft – BenV
Ich erwarte etwa 40 Millionen oder so "Entitäten" aber müssen Zeilenbereiche abfragen. Fang 22 Ich denke ... – cs0815