我尝试集成一个NoSQL数据库来存储JSON数据,而不是使用SQL数据库来存储JSON数据(一个存储JSON对象的列)。
对于MongoDB,我可以通过以下方式插入JSON文件:
document = <JSON OBJECT>
collection.insert(document)
然而,根据这个网页(http://www.datastax.com/dev/blog/whats-new-in-cassandra-2-2-json-support),对于Cassandra来说,它不可能是无模式的,也就是说我需要预先创建一个表:
CREATE TABLE users (
id text PRIMARY KEY,
age int,
state text
);
接下来插入数据:
INSERT INTO users JSON '{"id": "user123", "age": 42, "state": "TX"}';
问题在于我想尝试使用Cassandra,刚刚完成了DataStax的教程,但似乎需要预先知道JSON数据的键,这是不可能的。
或者当有新的数据列和未知的键时,我应该修改表吗?那听起来不像一个很好的设计决策。
有人可以指点一下我正确的方向吗?谢谢。