Cassandra 在一列中导入 JSON

我正在尝试在 Cassandra 中的一列中导入 JSON 文件。我使用 Python 作为代码。这个想法是让一个 id Column 和第二个 Column 是 JSON,因为它是。


id | JSONDoc

----------------

1  | {'something': 'something', 'something1': '['somethingelse': 

'withsomethin']', ...'

当我尝试运行以下命令时出现此错误


code=2200 [Invalid query] message="Invalid map literal for testdoc 

of type list<text>

编码:


session.execute("CREATE KEYSPACE doc WITH replication = 

{'class':'SimpleStrategy', 'replication_factor' : 3};")

session.set_keyspace('doc')

testdoc = str(doc)

session.execute("CREATE TABLE doc4 (nodeid int PRIMARY KEY, testdoc 

list<text>);")

query = "INSERT INTO doc.doc4 (nodeid, testdoc) VALUES ({0}, 

{1})".format(nodeid, testdoc)

session.execute(query)

我认为我在创建 json 所在列的表或大小时遗漏了一些东西。但我不知道任何其他方式将它导入到这个 JSON 中。任何其他建议或方法来解决此问题或在一个列中导入任何类型的 JSON?


之后我需要在 ES 中使用这个 JSON。因此,如果我可以将其作为 JSON 导入到一列中,那将是最好的。


隔江千里
浏览 181回答 2
2回答

慕尼黑8549860

对于以下格式,如何将 json 数据存储到 cassandra db 中。{&nbsp; "languages": {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; value as dict&nbsp; &nbsp; "python": "Elite",&nbsp;&nbsp; &nbsp; "pascal": "Lame",&nbsp;&nbsp; &nbsp; "perl": "Elite"&nbsp; },&nbsp;&nbsp; "foods": [&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;value as list&nbsp; &nbsp; "Apple",&nbsp;&nbsp; &nbsp; "Orange",&nbsp;&nbsp; &nbsp; "Strawberry",&nbsp;&nbsp; &nbsp; "Mango"&nbsp; ],&nbsp;&nbsp; "name": "Martin D'vloper",&nbsp;&nbsp; "employed": "true",&nbsp;&nbsp; "skill": "Elite",&nbsp;&nbsp; "job": "Developer"}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python