我现在用的塞列表功能(http://www.aerospike.com/docs/guide/cdt-list.html),并可以做一个选择查询,看看名单:塞式查询语言获取列表大小和数量
从ns.set选择bin其中PK =“PK”
但有没有一种方法可以得到列表中的元素数量? 另外fi还有一种方法可以查看当前记录的大小(因为对最大记录大小有限制)
我现在用的塞列表功能(http://www.aerospike.com/docs/guide/cdt-list.html),并可以做一个选择查询,看看名单:塞式查询语言获取列表大小和数量
从ns.set选择bin其中PK =“PK”
但有没有一种方法可以得到列表中的元素数量? 另外fi还有一种方法可以查看当前记录的大小(因为对最大记录大小有限制)
AQL是一种主要用于管理索引UDF的工具,运行ad-hoc UDF (维护,汇总等),并在较小程度上浏览您的数据。如果你要使用全套列表或地图操作的,你应该使用一种语言的客户端,如Java,Python,Go等
列表API包括列表的大小()。例如,在Python客户端中,您有aerospike.Client.list_size
。由于列表在服务器端以msgpack序列化格式存储,因此假设您的数据位于SSD上(如果内存中没有持久性存在,您将很难判断msgpacked list是否大于max-write-block
没有相同的记录大小限制)。
您可以估计尺寸,但要遵循EAFP原则,编写记录会更简单,而不必事先考虑尺寸,并捕获“记录太大”的例外(例如,aerospike.exception.RecordTooBig
)。然后,您可以决定如何溢出到单独的记录中(key
,key-2
.. key-N
)。