从 Couchbase 导出到 CSV 文件
Export from Couchbase to CSV file
我有一个只有一个节点(我们称之为本地主机)的 Couchbase 集群,我需要将所有数据从一个非常大的存储桶(我们称之为 XXX)导出到一个 CSV 文件中。
现在这似乎是一项非常简单的任务,但我找不到让它工作的方法。
根据来自 Couchbase http://docs.couchbase.com/admin/admin/CLI/cbtransfer_tool.html 的关于 cbtransfer 工具的(非常糟糕的)文档,他们说这是可能的,但他们没有解释清楚。如果您希望传输以 csv 格式(?)发生,他们只是添加一个标志,但它不起作用。也许已经这样做过的人可以帮助我?
使用文档,我已经能够使用以下命令找到我想要获得的结果(一个干净的 CSV 文件,其中包含 XXX 存储桶中的所有文档):
/opt/couchbase/bin/cbtransfer http://localhost:8091 /path/to/export/output.csv -b XXX
但我得到的是 /path/to/export/output.csv 实际上是一个文件夹,里面有很多文件夹,它存储着某种 json 元数据,可用于恢复 XXX 存储桶在 Couchbase 的另一个实例中。
有没有人能够将 Couchbase 存储桶(Json 文档)中的数据导出到 CSV 文件中?
通过查看文档,您必须使用稍微不同的语法才能导出到 CSV。 http://docs.couchbase.com/admin/admin/CLI/cbtransfer_tool.html
它需要看起来像这样:
cbtransfer http://[localhost]:8091 csv:./data.csv -b default -u Administrator -p password
注意 csv 文件名称前的 "csv:"。
我对此进行了测试,它确实可以导出 CSV。请注意,您需要一个相对平坦的文档结构才能很好地工作,因为 JSON 显然可以表示比 CSV 复杂得多的数据结构,例如数组、子文档等。cbtransfer 不会解开这些。例如,如果有子文档,cbtransfer 将在每个 CSV 的行中将其表示为 JSON doc。
因此,根据您的文档结构,导出为 CSV 格式并不是理想的格式。这是倒退。
我有一个只有一个节点(我们称之为本地主机)的 Couchbase 集群,我需要将所有数据从一个非常大的存储桶(我们称之为 XXX)导出到一个 CSV 文件中。
现在这似乎是一项非常简单的任务,但我找不到让它工作的方法。
根据来自 Couchbase http://docs.couchbase.com/admin/admin/CLI/cbtransfer_tool.html 的关于 cbtransfer 工具的(非常糟糕的)文档,他们说这是可能的,但他们没有解释清楚。如果您希望传输以 csv 格式(?)发生,他们只是添加一个标志,但它不起作用。也许已经这样做过的人可以帮助我?
使用文档,我已经能够使用以下命令找到我想要获得的结果(一个干净的 CSV 文件,其中包含 XXX 存储桶中的所有文档):
/opt/couchbase/bin/cbtransfer http://localhost:8091 /path/to/export/output.csv -b XXX
但我得到的是 /path/to/export/output.csv 实际上是一个文件夹,里面有很多文件夹,它存储着某种 json 元数据,可用于恢复 XXX 存储桶在 Couchbase 的另一个实例中。
有没有人能够将 Couchbase 存储桶(Json 文档)中的数据导出到 CSV 文件中?
通过查看文档,您必须使用稍微不同的语法才能导出到 CSV。 http://docs.couchbase.com/admin/admin/CLI/cbtransfer_tool.html
它需要看起来像这样:
cbtransfer http://[localhost]:8091 csv:./data.csv -b default -u Administrator -p password
注意 csv 文件名称前的 "csv:"。
我对此进行了测试,它确实可以导出 CSV。请注意,您需要一个相对平坦的文档结构才能很好地工作,因为 JSON 显然可以表示比 CSV 复杂得多的数据结构,例如数组、子文档等。cbtransfer 不会解开这些。例如,如果有子文档,cbtransfer 将在每个 CSV 的行中将其表示为 JSON doc。
因此,根据您的文档结构,导出为 CSV 格式并不是理想的格式。这是倒退。