繁体   English   中英

从Cassandra导出密钥的最快方法

[英]Fastest way to export keys from cassandra

用Java API或其他工具从cassandra(0.7.x和更高版本)的列系列中导出所有行键的最快方法是什么?

当前,我正在使用Java Pelops API,并通过所有记录进行分页,但是我想知道是否有更好的机制。

我对仅导出行键(没有列/子列)特别感兴趣,所以我想知道是否有cassandra直接存储API的一部分可用于尽快执行此操作(绕过节俭)。

关于使用Java 客户端呢? 样本取自https://github.com/rantav/hector/wiki/User-Guide

RangeSlicesQuery<String, String, String> rangeSlicesQuery = 
HFactory.createRangeSlicesQuery(keyspace, stringSerializer, 
     stringSerializer, stringSerializer);
rangeSlicesQuery.setColumnFamily("Standard1");
rangeSlicesQuery.setKeys("fake_key_", "");
rangeSlicesQuery.setReturnKeysOnly(); // use this
rangeSlicesQuery.setRowCount(5);
Result<OrderedRows<String, String, String>> result = rangeSlicesQuery.execute();
  • API接口。 直接进入存储将需要您读取二进制数据文件。 上面的代码应为您提供良好的性能。
  • 如果您需要一次导出该文件,那么我会说没问题。 如果您在生产中需要此功能,则应重新考虑数据模型-您可能做错了什么。
  • 如果需要扫描很多行,可能需要使用多个键范围来拆分查询。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM