Hive 如何从beeline访问Metastore?
我需要直接从Metasore执行一些SQL查询(as)Hive 如何从beeline访问Metastore?,hive,beeline,Hive,Beeline,我需要直接从Metasore执行一些SQL查询(as)PS:SHOW/description命令不够 如何启用从它作为数据库的访问,或者Metastore的数据库名称是什么。。。在今天(2019年),这是可能的吗 注释 什么是元存储对我来说,这是蜂巢架构的一个非常重要的元素,最终用户需要访问它。。。“所有配置单元实现都需要一个metastore服务,在其中存储元数据。它使用关系数据库中的表实现。默认情况下,配置单元使用内置的Derby SQL server”当然,您需要在您的上下文中一个“标
PS:SHOW/description命令不够 如何启用从它作为数据库的访问,或者Metastore的数据库名称是什么。。。在今天(2019年),这是可能的吗
注释
- 什么是元存储
对我来说,这是蜂巢架构的一个非常重要的元素,最终用户需要访问它。。。“所有配置单元实现都需要一个metastore服务,在其中存储元数据。它使用关系数据库中的表实现。默认情况下,配置单元使用内置的Derby SQL server”
当然,您需要在您的上下文中一个“标准”元存储。在我公司的Hadoop集群上,我们计划对Metastore(本地和长期标准)进行标准化,可能是PostgreSQL,也可能是一个(用于外部使用它的一些SQL视图) - 当Metastore是长期的本地标准时,SQL定义(表名等)将是稳定的,Metastore查询将是可靠的
- Metastore与Hive紧密相连,Hive是一个JavaAPI,但Metastore也是一个标准的RDBMS,为外部世界提供标准连接(通过SQL)
PS:我对Metastore的兴趣就在这个外部环境中
schema
属性,公开名称、类型等,并提供getComment
方法
请参见Metastore是一个带有Java API的Java服务。这是与之交互的“正确”方式。元存储使用RDBMS作为后端,连接参数位于元存储服务使用的
hive Metastore.xml
或hive site.xml
中的(遗留)。您可能会尝试查询该模型,但该模型并没有真正的文档化、不断发展,并且对于支持的每种RDBMS方言都有细微差别……未来的后端可能是HBase,祝您查询该模型好运。您好@SamsonScharfrichter,谢谢您的评论。我编辑了一些注释。。。有道理吗?PS:我不认为Metastore是“JavaAPI”,因为RDBMS连接是通用的(任何语言和标准SQL访问)。(深深叹息)Metastore服务是一个Java应用程序;客户机/服务器通信使用Thrift消息协议。它有一个用于持久化信息的后端,目前是一个关系数据库,但将来可能会使用HBase。