实际上,我使用的是一个大数据环境,在这个环境中,我使用apachenifi接收和处理数据。结果保存在hbase表中,我想通过配置单元访问存储的数据。现在我想设置一个rest服务来读取hbase表。例子
得到http://localhost:50111/userid/42-->http响应{“userid”:42,“name”:“foobar”}
我认为这是现有解决方案的标准问题,但事实并非如此。问题是,我不能将结果作为http响应发送。
首先,我尝试使用nifi,webservice正在工作,但只使用静态内容,如“200ok”或“404notfound”。所以我不带尼菲就试试。我读到,每个人都在说,webhcat是应该使用的工具,因为它是用于hive的restapi工具。太好了!但是。。。同样的问题:我可以通过带有webhcat和hbase上的hive的rest服务执行查询,但是没有检索结果的选项。
以我目前的知识,没有现成的解决方案,我必须开发自己的rest服务。正确的?真正地?!
我是否必须开发自己的rest服务,或者这种情况下的最佳实践是什么?尼菲?hiveserver2?此外,我想确保与诺克斯和游骑兵休息服务。
我希望有人能帮我,给我看看右边的(!)很好,因为我不想做一些新的和特别的东西,如果有更好的或最佳实践的解决方案。
谢谢~n3
1条答案
按热度按时间vbopmzt11#
@n-3-你有很多选择。
看一看http://hortonworks.com/blog/hbase-via-hive-part-1/ 用于与hive的基本hbase交互。对于这种用例,您最好还是看看phoenixhttp://phoenix.apache.org/.
如果您选择webhcat和/或hiveserver2,那么您已经可以通过apacheknox和apacheranger提供的访问控制来处理对两者的访问。
此外,apachehbase有自己的rest服务器,您也可以通过apacheknox访问它,并使用apacheranger进行保护。http://hbase.apache.org/book.html#_rest
希望这能提供一些帮助。