我在某种程度上预料到了这一点,但显然不是。Hive不会在其环境中公开自己的元数据。例如,与Oracle一样,它允许您对自己创建的表使用"user_tables“。
我理解并欣赏hive元数据存储在RDBMS外部的事实,但作为构建不同类型查询的用户,访问我所在环境的上下文元数据是很有用的。
既然HCatalog将元数据暴露给任何愿意的人,为什么hive引擎不能拾取相同的元数据并允许其可见!
我知道在实现这一点的过程中可能会遇到一些挑战,但我想问的是,“是否有任何活动的工作流来实现类似的事情?”
作为一个用户,我确实需要它。
发布于 2020-12-24 22:13:22
hive版本3.0.0在Hive中引入了information_schema数据库本身。在那里我们可以探索基本的蜂窝元数据。此外,还有另一个名为sys的数据库,其中包含所有与元数据相关的信息。
你可以参考下面的链接。
发布于 2018-04-13 03:16:21
你写道:“我理解并欣赏hive元数据存储在RDBMS外部的事实”。然后尝试JDBC存储处理程序:https://github.com/qubole/Hive-JDBC-Storage-Handler
您可以像本例中那样在Hive中创建表,并像查询任何其他原生Hive表一样对其进行查询:
DROP TABLE HiveTable;
CREATE EXTERNAL TABLE HiveTable(
id INT,
id_double DOUBLE,
names STRING,
test INT
)
STORED BY 'org.apache.hadoop.hive.jdbc.storagehandler.JdbcStorageHandler'
TBLPROPERTIES (
"mapred.jdbc.driver.class"="com.mysql.jdbc.Driver",
"mapred.jdbc.url"="jdbc:mysql://localhost:3306/rstore",
"mapred.jdbc.username"="root",
"mapred.jdbc.input.table.name"="JDBCTable",
"mapred.jdbc.output.table.name"="JDBCTable",
"mapred.jdbc.password"="",
"mapred.jdbc.hive.lazy.split"= "false"
);https://stackoverflow.com/questions/49803758
复制相似问题