【问题标题】:How to use sstableloader from a node not in Cassandra Cluster ring如何从不在 Cassandra 集群环中的节点使用 sstableloader
【发布时间】:2013-11-03 09:42:04
【问题描述】:

我们在 linux 上的 Production Cassandra Cluster 上使用 apache-cassandra 1.1.9 版本。我想使用 sstableloader 上传一些数据。 我能够为小数据生成 sstables,然后尝试使用 sstableloader 从另一台机器(位于同一网络但不在 cassandra 集群环中)将这些 sstables 上传到 Cassandra 集群,但出现以下错误

“无法检索端点范围:”

我不明白为什么会出现这个错误。 我正在运行 sstableloader 的这台机器具有相同的 cassandra 安装。我将 cassandra.yaml 从生产 cassandra 复制到我的主机的 apache-cassandra/conf 文件夹中。

我的 sstables 位于以下目录结构中:- /path/to/keyspace 目录/Keyspace/*.db

我正在运行的SStable命令如下

./sstableloader -d -i , /home/Data/Keyspace/ 无法检索端点范围:

请指教,如果我在这里做错了吗?

【问题讨论】:

    标签: cassandra


    【解决方案1】:

    找到了解决办法。 sstableloader 命令需要从包含 Keyspace 子目录的目录中执行。 例如 如果/home/Data为目录结构,其下有子目录keyspace/ColumnFamily/ 然后从 /home/Data/ 目录执行如下命令。

    ~/apache-cassandra/bin/sstableloader -d /keyspace/ColumnFamily

    【讨论】:

    • 运行上述命令后,是否需要运行其他节点工具命令,如修复或清理?而且,如果我有 SSTable,我试图将使用上述命令的那些注入到具有 3 个副本的 10 个节点的 cassandra 集群中,它会将所有数据加载到整个集群中。这意味着适当的数据是否会移动到相应的节点?因为我只在一个节点上运行你的命令所以我有点困惑数据会移动到相应的节点吗?
    • 您不一定需要运行 nodetool repair/clean 命令,这也是一个耗时的过程。除非您在集群中看到一些问题,否则应该没问题。回答第二个问题 - 如果您在键空间级别设置了复制,它会将数据加载到集群中的副本。据我所知,如果您在任何特定节点上加载数据,Cassandra 将负责复制数据。
    • 感谢您的评论。对于第二个问题,我的问题得到了部分答案(对于副本,我从您的评论中得到了清晰的理解)。我也问过分区,例如,SSTable 包含 100 行,分区键从 1 到 100,在运行 SSTableLoader 时,100 分区会在集群上拆分吗?这意味着我使用 100 行的 MurMurPartitioner 创建了 SSTable,在运行 SSTableloader 命令后,第 1 行将移动到相应的节点 A,第 2 行将移动到节点 B,依此类推..?
    • 我上述问题的原因是,由于我在一个具有单个 IP 地址的节点中运行 SSTableLoader 命令,命令为 -d(但实际上我有 25 个节点),所以我有点混淆负责我正在运行的节点的数据是否会被移动。但我的假设是,我的命令只有一个 IP 地址,但它会从单个节点获取所有对等信息,并将数据移动到相关节点。我的假设是否正确?
    • 我相信基于集群中配置的分区,Cassandra 应该自动负责将数据分布到多个节点。您可以试一试并使用 OpsCenter 等工具监控集群,以查看数据是否得到相应分布。
    【解决方案2】:

    这有点老了,但我最近遇到了“无法检索端点范围”错误,原因不同。

    在我们的例子中,数据从生产系统中导出,并加载到新的开发实例中。开发实例设置不正确,因此 sstables 是使用 dse 4.7 生成的,并且正在运行的 sstableloader 是 dse 4.6。

    请注意,可以将 4.6 中的表提取到 dse 4.7 中进行调试等,但必须先运行 nodetool upgradesstables。这不是这里发生的事情。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-04
      • 2014-11-27
      • 2014-05-21
      • 2016-08-14
      • 2012-05-02
      • 2017-10-27
      • 2015-01-13
      • 2018-01-18
      相关资源
      最近更新 更多