【问题标题】:copy cassandra sstable from gcloud to s3 with python使用python将cassandra sstable从gcloud复制到s3
【发布时间】:2021-06-01 00:36:21
【问题描述】:

我的任务是使用 python 将一些 cassandra 表从我们的 gcloud 复制到 athena 现在一切正常的方式是我们有一个脚本,它从 gcloud 下载所有文件,然后它运行 sstabledump,我们得到这个糟糕的 json,他们尝试将其转换为 csv,然后有一个脚本遍历该 csv 并将其上传到s3 所以我正在寻找任何方法来改进它,无论是替换 sstabledump 将其转换为 csv 还是将可怕的 json 转储转换为 csv 的包 谢谢!

【问题讨论】:

    标签: python cassandra


    【解决方案1】:

    您可以使用名为 DSBulk(由 DataStax 开发)的工具从 Cassandra(从 Cassandra 2.1 开始)和 DSE(从 DSE 4.7/4.8 开始)加载和卸载数据。在最简单的情况下,命令行如下所示:

    dsbulk unload -k keyspace -t table -url path_to_unload
    

    DSBulk 针对加载/卸载操作进行了高度优化,并且有很多选项,包括从压缩文件导入/导出,提供自定义查询等。

    您可以将数据以 CSV 或 JSON 格式卸载到本地计算机,然后将这些文件上传到 S3。

    有一系列关于 DSBulk 的博文,可以提供更多信息和示例:123456

    【讨论】:

    • 遗憾的是,这个工具不适用于 sstables,它不适合我正在寻找的东西
    • 您不应该使用 SSTables,因为它们可能只包含行的部分更新,而不是整行...
    • 我的雇主试图直接从数据库获取信息,但速度很慢,数据库无法处理所有负载,所以他们决定使用 sstable,因为我们想使用可以自动运行的东西几个小时来更新表格
    猜你喜欢
    • 2016-12-07
    • 2015-06-06
    • 2021-06-10
    • 2014-02-04
    • 2020-05-02
    • 2013-03-14
    • 2019-04-13
    • 2018-04-07
    • 2013-05-31
    相关资源
    最近更新 更多