web-dev-qa-db-fra.com

Quelle est la différence entre créer une table et créer une famille de colonnes à Cassandra?

J'ai besoin de détails de la performance et des aspects de la requête, j'ai appris de certains Site que seule une clé peut être donnée lors de l'utilisation d'une famille de colonnes, si oui, que suggérez-vous pour mon keyspace, je dois utiliser le groupe par , commandez, compte, somme, ifnull, concat, jointures, et parfois des requêtes imbriquées.

26
kumar

Pour répondre à la question originale que vous avez posée: une famille de colonnes et une table sont la même chose.

  • Le nom "famille de colonnes" a été utilisé dans l'ancien API d'épargne .
  • Le nom "Table" est utilisé dans la nouvelle API CQL .

Plus d'informations sur les API peuvent être trouvées ici: http://wiki.apache.org/cassandra/api

Si vous Besoin utiliser "Groupe par, commander par, compter, résumé, ifnull, concat, joints et certains Times Nupped requis "Comme vous l'indiquez, vous ne voulez probablement pas utiliser Cassandra, puisqu'il ne supporte pas la plupart de ceux-ci.

CQL prend en charge COUNT, mais seulement jusqu'à 10000. Il prend en charge ORDER BY, mais seulement sur les touches de clustering. Les autres choses que vous mentionnez ne sont pas prises en charge du tout.

43
Ike Walker

Reportez-vous au document: https://cassandra.apache.org/doc/old/cql-3.0.html

Il spécifie que la LRM du CQL prend en charge les mots-clés de la table, partout où la personnalité est prise en charge.

C'est une preuve que la table et la camticade sont synonymes.

2
user2250246

In cassandra Il n'y a pas de différence entre la table et la camticadeFamily. Ils sont un concept.

2
Prijecone

Pour Cassandra 3+ et CQLSH 5.0.1

Pour vérifier, entrez dans une invite de CQLSH dans Keyspace (KSP):

CREATE COLUMNFAMILY myTable (
     ...  id text,
     ...  name int
);

Et tapez 'descendre mytable'.
Tu verras:

CREATE TABLE ksp.myTable (
      ...  id text,
      ...  name int
);

Ils sont synonymes et Cassandra utilise la table par défaut.

0
gavin olsen