我将 Aerospike 3.5.4 与 python 客户端 1.0.38 一起使用。我的意图是使用此 python 客户端将浮点值存储和检索到 Aerospike 中,因为 Aerospike 本身不支持浮点数据类型。从下面的代码片段中,我可以将转换为二进制数据的浮点数插入 Aerospike,但是在检索时我遇到了分段错误(核心转储)。
import aerospike
import struct
aerospike_config = {
'hosts': [('localhost', 3000), ],
}
obj = aerospike.client(aerospike_config).connect()
key = ('my_namespace', 'my_set', 59)
f = struct.pack('f', 20.6)
obj.put(key, {'price':f})
print struct.unpack('f', obj.get(key))
使用 aql 检查数据时,如下所示。
aql> select * from my_namespace.my_set where PK=59
+--------+ | 价格 | +--------+ | "�̤A" | +--------+ 1 行(0.001 秒)
请帮忙。