大数据 - HIVE3.1.0元数据服务(二)
元数据服务?
元数据服务也就是HiveMetastore服务,客户端先连接HiveMetastore服务,HiveMetastore服务再去连接元数据存储的数据库,从而获取相关元数据信息。HiveMetastore服务实际上就是一种Thrift服务,通过它我们可以获取到HIVE元数据,并且通过Thrift方式获取元数据的方式,屏蔽了数据库访问需要驱动/URL/用户名/密码等细节。
元数据存储在哪里?
HIVE将元数据存储在关系数据库中(MySql、Derby),元数据包括数据库信息及表的信息如:表的属性、表的名称、表的列、分区及其属性等。
支持的存储媒介:https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+3.0+Administration
元数据服务的启动方式?
(1)嵌入模式:该方式一次只能有一个进程连接到MetaStore,Hive客户端直接通过JDBC访问MetaStore,只能使用内置的Derby;
(2)本地模式:该方式一次只能有一个进程连接到MetaStore,Hive客户端直接通过JDBC访问MetaStore,可以使用其他的RDBMS或者内置的Derby;
(3)远程模式:使用远程的RDBMS来作为存储(典型的就是MySQL),用于生产环境。HiveMetastore通过Thrift方式提供服务,客户端通过HiveMetastore服务获取元数据。
元数据服务的核心配置?
(1)javax.jdo.option.ConnectionURL:JDBC连接信息。比如使用Derby时的值可以为jdbc:derby:;databaseName= ../build/test/junit_metastore_db;create=true;使用MySQL时的值可以为:jdbc:mysql://<host name>/<database name>?createDatabaseIfNotExist=true
;
(2)javax.jdo.option.ConnectionDriverName:JDBC驱动类名。Derby模式下值为org.apache.derby.jdbc.EmbeddedDriver, MySQL为com.mysql.jdbc.Driver;
(3)hive.metastore.uris:如果为空则表示为Local模式,否则为Remote模式;
(4)hive.metastore.warehouse.dir:默认表的位置。
原文地址:https://blog.csdn.net/goodjava2007/article/details/131045021
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!