问题标签 [metastore]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-spark - Spark 中的 HIVE Metastore 警告
在启动 spark-shell 时,我经常收到这样的警告
它们是什么意思,我该如何预防。此警告出现在 2.0.2 和 1.6.2 上,可能也出现在其他版本上。
json - Hive Metastore 列宽限制
在 5.2.1 版本上使用AWS EMR作为数据处理环境,当处理具有复杂架构和许多嵌套字段的巨大 JSON 文件时,Hive 无法处理它并出现错误,因为它达到了当前 4000 个字符的列长度限制.
处理语句时出错:FAILED:执行错误,从 org.apache.hadoop.hive.ql.exec.DDLTask 返回代码 1。InvalidObjectException(消息:无效的列类型名称太长:[...]
查看文档,已经有很多关于这个问题或类似问题的问题,尽管都没有解决[1 , 2 ]。在此建议将 Metastore 的几个字段更改为不同的值,以便为结构定义提供更大的长度。
COLUMNS_V2.TYPE_NAME
TABLE_PARAMS.PARAM_VALUE
SERDE_PARAMS.PARAM_VALUE
SD_PARAMS.PARAM_VALUE
如第一期所述,建议的解决方案提到:
[...] 设置值后,还必须配置并重新启动Metastore 。”
然而,除了 DB 值之外,还没有指定必须配置的内容。
因此,在更新当前本地 Metastore(在本例中为 mysql)的字段string
并mediumtext
重新启动 Metastore 进程后,仍然无法获得任何进展,因为尝试加载 JSON 继续失败并出现同样的错误。
我是否遗漏了某些东西,或者是否有人找到了解决此问题的替代解决方法?
hadoop - Spark:无法从配置单元表中读取数据
我创建了一个 Maven 项目作为pom.xml
我的班级正在从 hive 表中读取数据:
我正在使用 spark 从 hive metatore 中存在的表中读取数据,但面临一个非常奇怪的问题。
我有两个问题,如下所述:
问题 1.如果我使用<spark.version>1.3.0</spark.version>
spark 能够找到 hive 表,并且能够在此行的帮助下在控制台上打印数据
但是如果我按照示例中所示进行过滤或分组,则火花找不到col1
并抛出异常,如下所示
所以问题是为什么如果数据框能够找到该表,那么为什么它不让我对列进行分组以及如何解决这个问题?
问题 2.如果我使用<spark.version>1.6.0</spark.version>
然后 spark 甚至找不到 hive 元存储中存在的表,那么现在为什么会出现这种行为???
环境:CLOUDERA QUICKSTART VM 5.8.0
mysql - Hive drop table from MYSQL metstarore TBLS table
In Hive, How to drop a table from from MYSQL metstarore TBLS table
mysql - 无法使用 mysql 在 Mac 上启动 Hive
我在使用 mySQL 将 macOS 10.12.3 上的本地开发环境升级到 Hive 时遇到了一些麻烦,因为我之前使用了本地 derby 元存储。
每当我启动 hive 时,都会出现以下异常:
Hive 在 2.10 版本中,Hadoop 在 2.7.3 版本中。namenode 和 datanode 已启动,mysql 也已启动,包括正确初始化的元存储数据库。
环境变量设置如下:
正常的 HDFS 操作工作:
hive - EMR 上的 Hive 插入查询仅持续运行 17 小时以上
背景:
- 2 个节点的 EMR 5.4 集群(主+从)。
- 在设置期间提供了外部 Hive 元存储详细信息。
- Hive 仓库已设置在 S3 上。
- 我正在使用 spark 2.1 处理文件并创建临时表。
- 登台表准备好后,我正在尝试使用 hive 将该数据加载到 hive 表中。
问题:通常在其他集群(AWS 之外)上运行大约 7-10 分钟的插入语句正在 EMR 集群上永久运行。我能够从 hive 查询由 spark 创建的暂存表。以下是我正在使用的语句:
任何帮助,将不胜感激。
谢谢
hadoop - java.lang.RuntimeException: 无法实例化...SessionHiveMetaStoreClient,使用 derby、hive 2.1.1 和 hadoop 2.7.3
当我尝试启动 hive shell 时出现此错误:
我该如何解决这个问题?
hive - EMR 集群中的外部配置单元元存储问题
我将我的 EMR 集群的配置单元元存储指向外部 MySQL RDS 实例。我创建了新的 hive 数据库“mydb”,并在 hive.DBS 表中获得了外部 MySQL DB 中的条目。
hdfs://ip-10-239-1-118.ec2.internal:8020/user/hive/warehouse/mydb.db mydb hadoop USER
我还在 mydb 数据库下创建了新的配置单元表“mytable”。我在 hive.TBLS 中获得了外部 MySQL 数据库中的条目。到目前为止一切都很好..
我终止了我的集群..当我第二天回来时..我现在启动了新的集群,我做了以下,使用 MYDB;创建表 mytable_2(id int); 我得到以下错误,
执行错误,从 org.apache.hadoop.hive.ql.exec.DDLTask 返回代码 1。MetaException(消息:得到异常:java.net.NoRouteToHostException 没有路由到主机从 ip-10-239-1-4.ec2.internal/10.239.1.4 到 ip-10-239-1-118.ec2.internal:8020套接字超时异常失败:java.net.NoRouteToHostException:没有到主机的路由;有关更多详细信息,请参阅: http ://wiki.apache.org/hadoop/NoRouteToHost )
注意:IP 10.239.1.4 是我当前集群的名称节点。IP 10.239.1.118 是我早期集群的名称节点
请让我知道需要覆盖哪些属性以避免此类错误?
hive - 当我使用“STORED AS AVRO”子句创建配置单元表时,Avro 模式存储在哪里?
至少有两种不同的方法可以创建支持 Avro 数据的配置单元表:
基于 Avro 模式创建表(在本例中,存储在 hdfs 中):
CREATE TABLE users_from_avro_schema ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.avro.AvroSerDe' 存储为 INPUTFORMAT 'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive .ql.io.avro.AvroContainerOutputFormat' TBLPROPERTIES ('avro.schema.url'='hdfs:///user/root/avro/schema/user.avsc');
STORED AS AVRO
通过使用子句显式指定配置单元列来创建表:创建表 users_stored_as_avro( id INT, name STRING ) 存储为 AVRO;
我是否正确,在第一种情况下,users_from_avro_schema
表的元数据没有存储在 Hive Metastore 中,而是从读取 avro 模式文件的 SERDE 类中推断出来的?或者,表元数据可能存储在 Metastore 中,在创建表时添加,但是将配置单元元数据与 Avro 模式同步的策略是什么?我的意思是两种情况:
- 更新表元数据(添加/删除列)和
- 通过更改
avro.schema.url
属性来更新 Avro 架构。
在我调用的第二种情况下,DESCRIBE FORMATTED users_stored_as_avro
没有avro.schema.*
定义属性,所以我不知道使用哪个 Avro 模式来读取/写入数据。它是根据存储在 Metastore 中的表的元数据动态生成的吗?
Programming Hive 书的此片段讨论了从 SerDe 类中推断有关列的信息,但另一方面,HIVE-4703删除了此from deserializer
信息表单列注释。那么如何检查给定表(Metastore 或 Avro 模式)的列类型的来源是什么?