gpt4 book ai didi

python - Aerospike python 客户端 : check if records were stored on the cluster successfully

转载 作者:太空宇宙 更新时间:2023-11-04 02:20:54 25 4
gpt4 key购买 nike

我正在开发 Aerospike python 客户端。我正在使用 aerospike 加载程序将数据插入集群。现在我需要查看记录是否成功存储在集群上。

正在使用的命令:

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 客户端设置任何示例?或者任何其他方式来检查记录是否已成功插入?

最佳答案

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

即使您没有存储人类可读的 key (这是默认行为,您可能不想花费额外的存储空间),每个 record有一个独特的 20B 摘要。该摘要是通过散列上述 3 元组的集合和主键部分在客户端创建的。当您检查是否存在时,客户端将再次散列您提供的那些 key ,获得相同的摘要,并检查它们是否存在。

关于python - Aerospike python 客户端 : check if records were stored on the cluster successfully,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51660598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com