【发布时间】:2014-08-01 19:46:46
【问题描述】:
导入内部包含大字段(超过 124214 个字符)的记录时出现错误
“字段大于字段限制(131072)”
我在其他帖子中看到了如何在 Python 上解决这个问题,但我不知道在 CQLSH 上是否可行。
谢谢
【问题讨论】:
导入内部包含大字段(超过 124214 个字符)的记录时出现错误
“字段大于字段限制(131072)”
我在其他帖子中看到了如何在 Python 上解决这个问题,但我不知道在 CQLSH 上是否可行。
谢谢
【问题讨论】:
看看这个答案:
_csv.Error: field larger than field limit (131072)
您需要将此解决方案添加到 cqlsh 文件的顶部。所以之后:
import csv
import getpass
csv.field_size_limit(sys.maxsize)
【讨论】:
cassandra 提供了一个标准选项来更改field_size_limit,而不是侵入 cqlsh 文件。 Cassandra 安装在 tarball 发行版的 conf 目录中包含一个 cqlshrc.sample 文件。在此文件中,可以找到并更改 field_size_limit 选项。要让 cqlsh 从这个文件中读取它的选项,你需要将 conf 目录中的 cqlshrc.sample 文件复制到你的用户主文件夹的隐藏的 .cassandra 文件夹中,并将其重命名为 cqlshrc。
Cassandra 文档包含有关它的更多详细信息:http://docs.datastax.com/en/cql/3.1/cql/cql_reference/cqlsh.html?scroll=refCqlsh__cqlshUsingCqlshrc
【讨论】:
从以下位置下载并提取 cassandra 发行版 https://cassandra.apache.org/download/
解压后会在conf目录下找到cqlshrc.sample文件
将 cqlshrc.sample 复制到 ~/.cassandra 并重命名为 cqlshrc
打开cqlshrc文件,把; field_size_limit = 131072改成field_size_limit = 1000000000
不要忘记删除“;”在上述步骤中
打开一个新终端并运行您的查询
【讨论】: