Хранение значений в кассандре с использованием Python - PullRequest
0 голосов
/ 04 июня 2019

Я храню json, который я получаю из файла на кассандре. Но я хотел бы увеличивать идентификатор каждый раз, когда я получаю новые данные, и теперь он перезаписывает существующие данные. Я ожидаю, что результат будет таким, как показано ниже.

PacketID    PacketValue

1              Json
2              Json
3              Json

Вот мой код.

import json
doc= (json.dumps(sw.get(),indent=4))
KEYSPACE = "mykeyspace"

def createKeySpace():
    cluster = Cluster(contact_points=['172.17.0.2'])
    session = cluster.connect()
    session.execute(""" CREATE KEYSPACE IF NOT EXISTS %s WITH replication = { 'class': 'SimpleStrategy', 'replication_factor': '2' } """ % KEYSPACE)
    session.set_keyspace(KEYSPACE)
    session.execute("CREATE TABLE IF NOT EXISTS wireless (PacketID int , PacketValue text, PRIMARY KEY(PacketID) );")

def insert_wireless():
    cluster = Cluster(contact_points=['172.17.0.2'])
    session = cluster.connect()
    PacketID=0
    PacketID=PacketID+1
    session.execute("""INSERT INTO mykeyspace.wireless(PacketID, PacketValue)
    VALUES(%s,%s)""",
    (PacketID,doc))


if __name__=="__main__":
    #start_node()
    th1=threading.Thread(target=createKeySpace())
    th1.start()
    threads=threading.Thread(target=insert_wireless())
    threads.start()
    threads.join()

1 Ответ

0 голосов
/ 05 июня 2019

Я исправил это с помощью Uuid.uuid (1)

...