如何从Couchbase查询项目的元数据?

时间:2012-11-11 15:58:31

标签: nosql metadata couchbase

我把一些数据放到CouchBase 1.8.1上,并使其成功。但我想查询其元数据,如expiration和att_reason(非json或json)。在某些文档中,它列出了json格式的元数据,例如:

{
 "_id" : "contact_475",
 "_rev" : "1-AB9087AD0977F089",
 "_bin" : "...",
 "$flags" : 0,
 "$expiration" : 0,
 "name" : "Fred Bloggs",
}

如何查询项目的元数据?

4 个答案:

答案 0 :(得分:0)

作为Pavel,在Couchbase(2.0)中访问元数据的最常用方法是使用Views。

您还可以使用内部TAP协议: http://www.couchbase.com/wiki/display/couchbase/TAP+Protocol

您能否向我们提供有关您的用例以及您需要访问元/过期的原因的更多信息?为什么你不能使用视图(这是推荐的方式)

此致 拖船

答案 1 :(得分:0)

最简单的方法是向以下位置发出HTTP请求: http://serveraddress:8091/couchBase/default/contact_475

响应应包含带有元数据的X-Couchbase-Meta标头。更多信息请访问:http://xmeblog.blogspot.co.il/2013/08/couchbase-how-to-retrieve-key.html

答案 2 :(得分:0)

如果要在Couchbase查询中查看元数据,可以执行以下操作:

SELECT meta(b).* FROM bucket b

通过执行以下操作,您还可以在查询中同时看到元数据和所有其他数据:

SELECT meta(b).*, * FROM bucket b

答案 3 :(得分:0)

如果您只想使用N1QL查询元数据,则可以在查询下面运行,它将返回有关文档的所有元数据:

select meta(bucket_name) from bucket_name

但是,如果您想从Sync Gateway获取这些信息,它将在每个使用REST API的GET请求中返回给您,REST API还包括对这些元数据的一些过滤。