63 lines
1.7 KiB
Python
63 lines
1.7 KiB
Python
"""
|
|
Python by Techfossguru
|
|
Copyright (C) 2017 Satish Prasad
|
|
|
|
"""
|
|
import logging
|
|
from cassandra.cluster import Cluster, BatchStatement
|
|
from cassandra import ConsistencyLevel
|
|
from cassandra.query import SimpleStatement
|
|
|
|
|
|
class PythonCassandraExample:
|
|
|
|
def __init__(self):
|
|
self.cluster = None
|
|
self.session = None
|
|
self.keyspace = None
|
|
self.log = None
|
|
|
|
def __del__(self):
|
|
self.cluster.shutdown()
|
|
|
|
def createsession(self):
|
|
self.cluster = Cluster(['localhost'])
|
|
self.session = self.cluster.connect(self.keyspace)
|
|
|
|
def getsession(self):
|
|
return self.session
|
|
|
|
# How about Adding some log info to see what went wrong
|
|
def setlogger(self):
|
|
log = logging.getLogger()
|
|
log.setLevel('INFO')
|
|
handler = logging.StreamHandler()
|
|
handler.setFormatter(logging.Formatter(
|
|
"%(asctime)s [%(levelname)s] %(name)s: %(message)s"))
|
|
log.addHandler(handler)
|
|
self.log = log
|
|
|
|
def insert_data(self):
|
|
insert_sql = self.session.prepare(
|
|
"INSERT INTO employee (emp_id, ename , sal,city) VALUES (?,?,?,?)")
|
|
batch = BatchStatement()
|
|
batch.add(insert_sql, (1, 'LyubovK', 2555, 'Dubai'))
|
|
batch.add(insert_sql, (2, 'JiriK', 5660, 'Toronto'))
|
|
batch.add(insert_sql, (3, 'IvanH', 2547, 'Mumbai'))
|
|
batch.add(insert_sql, (4, 'YuliaT', 2547, 'Seattle'))
|
|
self.session.execute(batch)
|
|
self.log.info('Batch Insert Completed')
|
|
|
|
def select_data(self):
|
|
rows = self.session.execute('select * from employee limit 5;')
|
|
for row in rows:
|
|
print(row.ename, row.sal)
|
|
|
|
def update_data(self):
|
|
pass
|
|
|
|
def delete_data(self):
|
|
pass
|
|
|
|
|