Nous soutenons la multi-location. Est-il préférable d'avoir un identifiant de client dans la colonne de partition ou de clusterMulti-location à Cassandra
L'identification du client dans la clé de partition garantit que les données d'un client ne peuvent pas être visualisées par un autre client.
Avoir un identifiant client dans la colonne clustering, les développeurs doivent s'assurer que l'identifiant client fait partie de la clause where. Prend également plus de place.
Y a-t-il un meilleur moyen que l'autre? Il y aura un impact sur les données de séries temporelles, car les données seront partitionnées par identifiant client et le super utilisateur ayant accès à tous les clients ne pourra pas afficher correctement les données de séries chronologiques.
Merci
Pourquoi y aurait-il un impact sur les données de séries chronologiques? Pouvez-vous expliquer, pourquoi le super utilisateur ayant accès à tous les clients ne pourrait-il pas voir correctement les données de séries chronologiques? – simo
@simo car Cassandra ne trie pas les ensembles de résultats. L'utilisation d'un composant temporel en tant que clé de cluster ordonne les données par heure * dans * la clé de partition. Par conséquent, je suppose que ce que l'OP voulait dire quand il disait "pas capable d'afficher correctement les données de séries temporelles" était qu'un super utilisateur interrogeant des données pour plusieurs clients à la fois (ce que je ne recommande pas) trouverait l'ensemble de résultats ordonné par 'customer_id' et non par write-time lui-même. – Aaron
Je vois maintenant, mais mon cas est différent, car je vais interroger les données pour un client unique, donc, je m'attends à voir les données correctement ordonnées par la clé de clustering de temps, est-ce une hypothèse correcte? – simo