· 6 years ago · May 07, 2019, 08:32 AM
1from cassandra.cluster import Cluster
2from cassandra.query import dict_factory
3
4def create_keyspace(session, keyspace):
5 session.execute("""
6 CREATE KEYSPACE IF NOT EXISTS """+keyspace+"""
7 WITH replication = { 'class': 'SimpleStrategy', 'replication_factor': '1' }
8 """)
9
10def create_table(session ,keyspace, table):
11 session.execute("""
12 CREATE TABLE IF NOT EXISTS """+keyspace+"""."""+table+""" (
13 user_id int,
14 avg_movie_rating float,
15 PRIMARY KEY(user_id)
16 )
17 """)
18
19def push_data_table(session ,keyspace, table, userId, avgMovieRating):
20 session.execute("""
21 INSERT INTO """+ keyspace+"""."""+table+"""(
22 user_id, avg_movie_rating)
23 VALUES(%(user_id)s, %(avg_movie_rating)s)
24 """,
25 {
26 'user_id': userId,
27 'avg_movie_rating': avgMovieRating
28 })
29
30def get_data_table(session, keyspace, table):
31 rows = session.execute("SELECT * FROM "+keyspace+"."+table+";")
32 for row in rows:
33 print(row)
34def clear_table(session, keyspace, table):
35 session.execute("TRUNCATE "+keyspace+"."+table+";")
36
37def delete_table(session, keyspace, table):
38 session.execute("DROP TABLE "+keyspace+"."+table+";")
39
40if __name__ == "__main__":
41 keyspace = "user_ratings"
42 table = "user_avg_rating"
43
44 cluster = Cluster(['127.0.0.1'], port=9042)
45 session = cluster.connect()
46
47 create_keyspace(session, keyspace)
48 session.set_keyspace(keyspace)
49 session.row_factory = dict_factory
50 create_table(session, keyspace, table)
51 push_data_table(session, keyspace, table, userId=1337, avgMovieRating=4.2)
52 get_data_table(session, keyspace, table)
53 clear_table(session, keyspace, table)
54 get_data_table(session, keyspace, table)
55 delete_table(session, keyspace, table)