【问题标题】:Insert Large JSON in a Cassandra Table在 Cassandra 表中插入大型 JSON
【发布时间】:2020-07-20 13:17:35
【问题描述】:

The image shows error detail- Please click Here 我正在尝试在 Cassandra 表的列中插入大型 JSON。 表架构看起来像:

Table1 (EmployeeName text, EmployeeID text, EmployeeJSON text )

INSERT INTO Table1 (EmployeeName, EmployeeID, EmployeeJSON)
VALUES ('Razzaq','234',"Jason String")

注意:JSON 字符串很大。它的大小为 212k。我怎样才能将它插入到这个表中。我应该使用相同的方法还是其他方法?

【问题讨论】:

  • 你用的是什么驱动?
  • 您在插入记录时是否遇到任何错误?或者,问题更多的是最好的方法是什么?
  • @AlexOtt 我是 Cassandra 的新手。我正在使用 DataStax 开发中心。我是 SQL 服务器数据库。我已经开始学习 Cassandra。我正在使用简单的插入语句。我正在附上图片。
  • DevCenter 只是一个用于试验模式等的交互式工具 - 它并非设计用于如此大的插入等。相反,您需要使用特定编程语言的驱动程序
  • @AlexOtt 感谢您的 cmets。我得到了解决方案。我用双美元符号 ($$) 将我的 JSON 括起来,并毫无错误地插入了我的数据。 i-e INSERT INTO Table1 (EmployeeName, EmployeeID, EmployeeJSON) VALUES ('Razzaq','234',$$Jason String$$)

标签: cassandra nosql


【解决方案1】:

您可以使用fromJson() 函数将其插入单个列值。

它只能用在 INSERT 语句的 VALUES 子句中,或者用作 UPDATE、DELETE 或 SELECT 语句中的列值之一。例如,它不能用于 SELECT 语句的选择子句中。

例子:

Table1 (EmployeeName text, EmployeeID text, EmployeeJSON text )

INSERT INTO Table1 (EmployeeName, EmployeeID, EmployeeJSON)
VALUES ('Razzaq','234',fromJson('{
    "employeeCompany" : "Acme Corp",
    "employeeCountry" : "Egypt",
    "employeeSalary" : [{
        "currency" : "Dollar",
        "salaryVariance" : { "cashPay" : 90%, "equity" : 10% }
    }]           
}'))

Json Support in Cassandra

【讨论】:

    猜你喜欢
    • 2014-11-26
    • 2016-07-06
    • 2017-09-17
    • 2017-06-28
    • 1970-01-01
    • 1970-01-01
    • 2019-04-16
    • 2016-09-05
    • 2020-03-05
    相关资源
    最近更新 更多