【问题标题】:Couchbase 6.5.1 - cbtransfer - split data into multiple filesCouchbase 6.5.1 - cbtransfer - 将数据拆分为多个文件
【发布时间】:2021-03-17 17:37:51
【问题描述】:

目前,我们的 Couchbase 存储桶中有数千个文档,我们希望将它们导出为 csv(或 json)格式以供进一步使用。

由于文档数量庞大,我们希望将导出的数据拆分为多个文件,而不是单个大文件。

目前我们正在使用 cbtransfer 实用程序,并且 Couchbase 文档提到如果文件“-x cbb_max_mb=size”超过特定大小,我们可以使用额外的选项来拆分文件。

我们使用的命令 -

cbtransfer http://127.0.0.1:8091 csv:./data.csv -b bkt-customer -u 管理员 -p 密码 -x cbb_max_mb=100

有了这个,文件被创建了,但它没有像我们预期的那样被分成 100 MB 的小块。

谁能指导我们如何实现这一目标?

【问题讨论】:

  • 您看到创建了哪些文件
  • 我只能看到创建的一个文件超过 100MB - data_bkt-customer_127.0.0.1%3A8091.csv

标签: couchbase


【解决方案1】:

-x 选项是“特殊的”,并不适用于所有后端和前端(备份、CSV、couchstore 等)cbtransfer 支持。 cbb_max_mb 选项仅在写入备份时支持,documentation 提示:

cbb_max_mb=100000 如果备份文件超过 MB,则在目标集群上拆分备份文件。


还有一些其他的选择:

  1. cbtransfer 完成后使用Unix/Linux split
  2. 如果集群中有多个数据节点,请在cbtransfer 上使用--single-node 参数。这只会从连接字符串中指定的节点中获取数据:

--single-node 从源集群中的单个服务器节点传输。此单个服务器节点是源节点 URL。


我还建议查看cbexport,它会在某个时候取代cbtransfer

【讨论】:

    猜你喜欢
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-22
    • 2013-08-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多