Hive EMR群集中的外部配置单元元存储问题
我将EMR集群的配置单元元存储指向外部MySQL RDS实例。 我已经创建了新的hive数据库“mydb”,并在hive.DBS表中的外部MySQL数据库中获得了条目 hdfs://ip-10-239-1-118.ec2.internal:8020/user/hive/warehouse/mydb.db mydb hadoop用户 我还在mydb数据库下创建了新的配置单元表“mytable”。我在hive.TBLS中获得了外部MySQL数据库中的条目。到目前为止一切都很好 我终止了我的群集..第二天回来..我启动了新群集 现在,我做了下面的, 使用MYDB; 创建表mytable_2(id int); 我在错误下面 执行错误,从org.apache.hadoop.hive.ql.exec.ddlstask返回代码1。MetaException(消息:Get exception:java.net.NoRouteToHostException No Route to Host from ip-10-239-1-4.ec2.internal/10.239.1.4 to ip-10-239-1-118.ec2.internal:8020套接字超时失败异常:java.net.NoRouteToHostException:No Route to Host;有关更多详细信息,请参阅:) 注: IP 10.239.1.4是我当前集群的名称节点。 IP 10.239.1.118是我以前的群集的名称节点Hive EMR群集中的外部配置单元元存储问题,hive,emr,metastore,Hive,Emr,Metastore,我将EMR集群的配置单元元存储指向外部MySQL RDS实例。 我已经创建了新的hive数据库“mydb”,并在hive.DBS表中的外部MySQL数据库中获得了条目 hdfs://ip-10-239-1-118.ec2.internal:8020/user/hive/warehouse/mydb.db mydb hadoop用户 我还在mydb数据库下创建了新的配置单元表“mytable”。我在hive.TBLS中获得了外部MySQL数据库中的条目。到目前为止一切都很好 我终止了我的群集
请告诉我需要覆盖哪些属性以避免此类错误?我也有同样的问题,并已修复^_^
hive> create table sales.t1(i int);
失败:执行错误,从返回代码1
org.apache.hadoop.hive.ql.exec.ddlstask。元异常(消息:Get
异常:java.net.NoRouteToHostException
没有从ip-123-234-101-101.ec2.internal/123-234-101-101到主机的路由
到ip-111-111-202-202。ec2。内部:8020套接字超时失败
异常:java.net.NoRouteToHostException:没有到主机的路由
有关更多详细信息,请参阅:)
原因:
我们为集群提供了一个外部元存储,这样我们就可以随时摆脱集群并启动一个新的元存储。如果存在“托管”表,配置单元元存储仍然保留对旧集群的引用
解决方案:
配置单元—服务元工具—listFSRoot
配置单元--服务元工具-更新位置旧值=hdfs://ip-YYY.Old.YYY.YYY:PORT/user/hive/warehouse或者,您可以在AWS控制台中进入Glue,转到databases/default并编辑条目,以在Location字段中具有更新的ip(这是
hive--service metatool--listFSRoot
的输出)参考: