Comment puis-je obtenir toutes les clés qui sont stockés dans la famille de la colonne Cassandra avec pycassa?

StackOverflow https://stackoverflow.com/questions/2430539

  •  19-09-2019
  •  | 
  •  

Question

Quelqu'un est-il d'avoir une expérience de travail avec pycassa Je doute avec elle. Comment puis-je obtenir toutes les clés qui sont stockés dans la base de données?

bien dans ce petit bout, nous devons donner les clés afin d'obtenir les colonnes associées (ici les clés sont « foo » et « bar »), qui est très bien, mais mon exigence est d'obtenir toutes les clés (seules touches ) à la fois comme liste Python ou une structure de données similaire.

cf.multiget(['foo', 'bar'])
{'foo': {'column1': 'val2'}, 'bar': {'column1': 'val3', 'column2': 'val4'}}

Merci.

Était-ce utile?

La solution

essayer:

    list(cf.get_range().get_keys())

plus de bonnes choses ici: http://github.com/vomjom/pycassa

Autres conseils

Vous pouvez essayer: cf.get_range(column_count=0,filter_empty=False).

# Since get_range() returns a generator - print only the keys.
for value in cf.get_range(column_count=0,filter_empty=False):
    print value[0]

get_range([start][, finish][, columns][, column_start][, column_finish][, column_reversed][, column_count][, row_count][, include_timestamp][, super_column][, read_consistency_level][, buffer_size])

  

Obtenir un itérateur sur les lignes d'une   gamme de clé spécifiée.

http: //pycassa.github. com / pycassa / api / pycassa / columnfamily.html # pycassa.columnfamily.ColumnFamily.get_range

Amélioration mineure sur la solution de Santhosh

dict(cf.get_range(column_count=0,filter_empty=False)).keys()

Si vous vous souciez de commande:

OrderedDict(cf.get_range(column_count=0,filter_empty=False)).keys()

get_range renvoie un générateur. Nous pouvons créer un dict du générateur et obtenir les clés de cela.

COLUMN_COUNT = 0 résultats à la limite row_key. Cependant, ces résultats ont aucune colonne nous avons aussi besoin filter_empty.

filter_empty = False nous permettra d'obtenir les résultats. Cependant des lignes vides et les fantômes de gamme peuvent être inclus dans notre résultat maintenant.

Si nous ne nous dérange pas plus de frais généraux, obtenir que la première colonne résoudra les lignes vides et la gamme des fantômes.

dict(cf.get_range(column_count=1)).keys()
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top