Question

Supposons que j'ai une famille de supercolumn. Supposons également que j'ai plusieurs partitions en cours d'exécution sur les différentes instances de la machine. Mes données sur la famille de supercolumn se présente comme suit (pour une ligne)

RowKey: 4818d991-9df5-4899-aa07-461f4ed19996
=> (super_column=4dddb83e-4096-428d-8d1b-8b0235ae772f,
     (column=1322847333862, value=, timestamp=1322847333863001)
     (column=1322847637237, value=, timestamp=1322847637237000)
     (column=1322847837206, value=, timestamp=1322847837206001)
     (column=1322848197819, value=, timestamp=1322848197819000))

Maintenant, je me demande, si je fais une requête contre la famille de supercolumn pour renvoyer les données / sous-colonnes pour la {ligne, super_column}, seront toutes les valeurs de ces sous-colonnes qui reviennent d'une machine ou machine différente ? En gros, cela est une question de - est le partitionnement se produit au niveau de la ligne ou le niveau de super_column ou sous-colonne? Et aussi, même juste de retour d'une machine, sera de l'ordre de chaque sous-colonnes retournées comme elles sont, comme indiqué ci-dessus ce?

Était-ce utile?

La solution

Cloisonnement se fait au niveau de la ligne, à savoir la ligne entière est stockée sur une seule machine (éventuellement avec des copies sur d'autres machines, en fonction de votre facteur de réplication).

sous-colonnes sont stockées dans l'ordre de tri en fonction des noms de colonnes - une colonne super peut spécifier un comparateur à la fois le nom super colonne, ainsi que sur les noms des sous-colonnes. Voir http://www.datastax.com/docs/0.8/ddl/column_family

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top