In welcher Version von Cassandra laufen Sie? Wenn Sie programmatisch durch den Tisch gehen wollen, könnten Sie versuchen, das Schema aus den Systemtabellen abfragen:
Wenn Sie sind auf Cassandra> = 3.x +:
SELECT column_name FROM system_schema.columns
WHERE keyspace_name='yourkeyspacename' AND table_name='yourtablename';
Wenn Sie auf Cassandra sind < = 2.2.x;
SELECT column_name FROM system.schema_columns
WHERE keyspace_name='yourkeyspacename' AND columnfamily_name ='yourtablename';
Wie kann ich diese Select-Anweisung aus einem Python-Skript ausführen?
Wenn ich auf Cassandra 2.2.5 renne, kann ich den obigen Code nehmen und es in einem Python-Skript (cassConnect.py
) wie folgt funktioniert:
from cassandra.cluster import Cluster
from cassandra.auth import PlainTextAuthProvider
import sys
hostname=sys.argv[1]
username=sys.argv[2]
password=sys.argv[3]
keyspace=sys.argv[4]
table=sys.argv[5]
nodes = []
nodes.append(hostname)
auth_provider = PlainTextAuthProvider(username=username, password=password)
cluster = Cluster(nodes,auth_provider=auth_provider)
session = cluster.connect(keyspace)
pStatement = session.prepare("""
SELECT column_name FROM system.schema_columns WHERE keyspace_name=? AND columnfamily_name=?;
""")
rows = session.execute(pStatement,[keyspace,table])
for row in rows:
print row[0]
$ python cassConnect.py 127.0.0.1 aploetz bacon stackoverflow user
email
first
last
username
Wie ich diese Select-Anweisung ausführen kann aus einem Python-Skript? Wie ich bereits erwähnt habe, kann ich das cqlsh Kommandozeilenprogramm – TheScendant
@TheScendant nicht bearbeiten. – Aaron
Danke das ist was ich brauchte! – TheScendant