首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Aerospike python客户端:检查是否成功地将记录存储在集群上

Aerospike python客户端:检查是否成功地将记录存储在集群上
EN

Stack Overflow用户
提问于 2018-08-02 19:07:43
回答 1查看 322关注 0票数 2

我在做航空公司的python客户端。我使用aerospike加载器将数据插入到集群中。现在,我需要查看记录是否成功地存储在集群上。

正在使用的命令:

代码语言:javascript
复制
command = 'java -cp /aerospike-loader/aerospike-load-2.2-jar-with-dependencies.jar ' \
              '-Dlog4j.configuration=file:/aerospike-loader/log4j.properties ' \
              'com.aerospike.load.AerospikeLoad -h %s -p %d -n %s -c %s %s'
command_str = command % (self.host, self.port, self.namespace, tmp_json_file.name, data_file_path)

文件tmp_json_file包含与以下内容完全类似的配置文件内容:https://www.aerospike.com/docs/tools/asloader/examples.html

现在如何检查数据是否已成功传输?我尝试使用client.exists(key),但是meta字段返回None,因为writePolicy=true没有设置。如何使用python客户机设置任何示例?或者其他检查记录是否被成功插入的方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-06 14:37:20

您可以从JSON中提取所有键,并为每个集合提取一个(namespace, json-set, json-key)元组(我的意思是使用每个JSON对象的setkey字段)。然后,您可以使用aerospike.Client.exists_many来使用批处理读取操作来验证密钥的存在。

即使您没有存储人类可读的密钥(这是默认行为,并且您可能不想花费额外的存储空间),每个记录也有一个唯一的20B摘要。该摘要是通过散列上述三元组的集和主键部分在客户机中创建的。当您检查是否存在时,客户端将再次散列您给它的那些键,得到相同的摘要,并检查它们的存在。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51660598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档