2016-07-20 6 views
0

Wir haben 314m Datensätze, die zu Titan hinzugefügt werden sollen. Bei der Arbeit mit Amazon Titan mit DynamoDB-Tabellen als Backend haben wir festgestellt, dass etwa 10% unserer Daten auf einer von 125 Partitionen liegen.Amazon Titan: Daten sind ungleichmäßig auf DynamoDB-Partitionen verteilt

Diese ungleichmäßige Verteilung verursacht Probleme sowohl beim Schreiben als auch beim Lesen. Was könnte der Grund für diese ungleiche Verteilung sein? Wir verwenden das Einzelmodell, wäre das der Grund für das Problem?

+0

Können Sie Ihre Tabellenstruktur hinzufügen und was sind die Werte der Hash-Schlüssel? –

+0

Die Tabellenstruktur des Einzelartikelmodells wird in dieser [doc] (http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Tools.TitanDB.BestPractices.html) erläutert. Bitte prüfen Sie den Abschnitt "Einzelstückdatenmodell". –

Antwort

0

Die ungleiche Verteilung von Daten wird durch Clustering um die gleichen Partitionsschlüssel in DynamoDB verursacht. Da Partitionsschlüssel zu Out-Vertex-IDs in Titan gehören, wenn Sie viele Eigenschaften auf einem Eckpunkt haben oder wenn viele Kanten aus einem Eckpunkt (Superknoten) kommen, sollten Sie versuchen, Ihren Graphen mit aktivierter Eckpunktpartitionierung zu laden Vertex-Label. Wenn Sie die Scheitelpunktbeschriftung in TitanManagement erstellen, müssen Sie lediglich die Anweisung .partition() aufrufen, bevor Sie die TitanManagement-Operation ausführen. Wenn Ihre DynamoDB-Tabelle über 125 Partitionen verfügt, benötigen Sie ungefähr 256 Max-Partitionen, um sicherzustellen, dass die Daten gleichmäßig auf Ihren physischen Partitionen verteilt sind.

Verwandte Themen