我正在使用带有hadoop couchbase连接器的sqoop将一些数据从couchbase导入到hdfs。
如上所述 http://docs.couchbase.com/hadoop-plugin-1.1/#limitations couchbase不支持查询。
我想要一个使用hadoop连接器运行查询的解决方案。
对于前者: 我在db中有2个文件如下:
{ 'DOCTYPE': '一个'}
和
{ 'DOCTYPE': 'B'}
我只需要获取属于docType = a。
的文档有办法做到这一点吗?
答案 0 :(得分:1)
如果你想从Couchbase中选择数据,你不需要hadoop连接器......你可以使用在doc.doctype =='a'上过滤的couchbase视图 见couchbase views documentation
另一方面,我建议使用Couchbase的新N1QL query功能。它是非常灵活的查询语言(类似于SQL),请参阅在线N1QL tutorial。
注意:如果您查看N1QL的兼容性,请运行v2.2及更高版本,请参阅N1QL Compatibility您需要部署Couchbase N1QL查询服务器并指向您现有的CB v2.2集群。见:Couchbase N1QL queries on server
答案 1 :(得分:1)
为上述要求建议Sqoop的另一种选择,称为“ Couchdoop ”。
Couchdoop使用视图从Couchbase获取数据。因此,我们可以根据需要编写查询,并使用Couchdoop来查看视图并获取数据。
https://github.com/Avira/couchdoop
为我工作。