【问题标题】:Setting Remote hive metastore on postgresql for EMR在 postgresql 上为 EMR 设置远程配置单元元存储
【发布时间】:2018-08-31 19:40:11
【问题描述】:

我正在尝试将 postgresql db 设置为 AWS EMR 的外部 Hive 元存储。 我已经尝试在 EC2 和 RDS 上托管它。

我已经尝试了here 给出的步骤。

但它没有通过,EMR 在配置步骤中失败,只有消息

在主实例 (instance-id) 上,应用配置失败

我无法从故障日志中破译任何内容。

我还在路径中复制了 postgresql jdbc jar

/usr/lib/hive/lib/ 和 /usr/lib/hive/jdbc/ 万一 EMR 还没有它,但仍然没有帮助!

然后我通过手动编辑hive-site.xml并设置属性来设置系统:

javax.jdo.option.ConnectionURL
javax.jdo.option.ConnectionDriverName
javax.jdo.option.ConnectionUserName
javax.jdo.option.ConnectionPassword
datanucleus.fixedDatastore
datanucleus.schema.autoCreateTables

并且必须运行hive --service metatool -listFSRoot

在这些手动设置之后,我能够让 EMR 使用 postgres db 作为远程元存储。

有什么方法可以使用官方文档中提到的配置文件使其工作?

编辑: 我用于远程 mysql 元存储的配置设置:

classification=hive-site,properties=[javax.jdo.option.ConnectionURL=jdbc:mysql://[host]:3306/[dbname]?createDatabaseIfNotExist=true,javax.jdo.option.ConnectionDriverName=org。 mariadb.jdbc.Driver,javax.jdo.option.ConnectionUserName=[用户],javax.jdo.option.ConnectionPassword=[pass]]

【问题讨论】:

  • 分类一般是json对象。如果您可以提供用于启动 EMR 的完整命令或功能,将会更有帮助。还是从 EMR 控制台启动?
  • 是的!我们可以通过 json 提供配置设置或以我给出的格式指定。这些设置正在 EMR 上设置。在它终止之前,我在 EMR 上检查了这些。所以配置设置不是问题
  • 那么您应该检查 EMR 日志以了解配置期间出现的问题。

标签: amazon-emr hive-metastore


【解决方案1】:

在 EMR 启动时,我永远找不到一种干净的方法来配置它。

主要问题是 EMR 使用 MySQL 使用命令初始化模式:

/usr/lib/hive/bin/schematool -initSchema -dbType MySQL

这应该是我们案例的 postgres。

以下手动步骤允许您将 postgres 配置为外部元存储:

1) 使用 hive 应用程序启动 EMR 集群,使用默认配置。

2) 使用命令停止配置单元:

sudo stop hive-server2

3) 将 postgresql-jdbc jar(存储在某个 S3 位置)复制到 EMR 上的/usr/lib/hive/lib/

4) 用包含在 EC2 节点上运行的 Postgresql 的 JDO 配置的自定义配置覆盖 /usr/lib/hive/conf/ 中的默认 hive-site.xml

5) 执行命令:

sudo /usr/lib/hive/bin/schematool -upgradeSchema -dbType postgres

【讨论】:

  • 对!我能够使用我给出的步骤手动配置它,但我的要求是能够使用配置文件本身来完成它,就像许多文章所述!所以根据你的说法,如果我在 EC2 机器上配置 Mysql 而不是 postgresql,它将与配置文件一起使用?
  • 是的。我们切换到 MySQL,它运行得非常好。
  • 太棒了!您能否给我相同的确切步骤或将我指向任何包含这些步骤的文章
  • 已经在这里回答了:stackoverflow.com/questions/48301995/…
  • 您能接受以上对 postgres 的回答吗? :-)
猜你喜欢
  • 1970-01-01
  • 2023-03-05
  • 1970-01-01
  • 2023-03-14
  • 1970-01-01
  • 1970-01-01
  • 2015-10-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多