如何从机器内部 运行 在 google 云 dataproc 上配置单元?

How to run hive on google cloud dataproc from within the machine?

我刚刚创建了一个 google 云数据处理集群。一些基本的东西对我不起作用:

  1. 我正在尝试从主节点 运行 配置单元控制台,但它无法加载除 root 以外的任何用户(看起来有锁,控制台只是卡住)。

  2. 但即使使用 root,我也看到了一些奇怪的行为:

    • "show tables;" 显示一个名为 "input"
    • 的 table
    • 查询 table 会引发一个异常,即未找到此 table。
  3. 不清楚哪个用户正在通过网络创建 tables ui。我创建了一个作业,执行了它,但随后没有通过控制台看到结果。

找不到关于此的任何好的文档 - 有人对此有想法吗?

运行 由于默认的 Metastore 配置,目前 hive 命令有些损坏。

我建议您改为使用 beeline 客户端,它与同一个 Hive Server 2 进行对话,作为 Dataproc Hive 作业。您可以通过 运行 beeline -u jdbc:hive2://localhost:10000 在 master 上通过 ssh 使用它。

YARN 应用程序由 Hive Server 2 作为用户 "nobody" 提交,您可以通过将 -n 标志传递给 beeline 来指定不同的用户,但默认权限应该无关紧要.

这个帖子有点旧,但是当有人搜索 Google Cloud Platform and Hive 时,这个结果就来了。所以我添加了一些可能有用的信息。

目前,为了向 Google dataproc 提交作业,我认为 - 与所有其他产品一样 - 有 3 个选项:

  1. 来自UI

  2. 从控制台使用如下命令行: gcloud dataproc jobs submit hive --cluster=CLUSTER (--execute=QUERY, -e QUERY | --file=FILE, -f FILE) [--async] [--bucket=BUCKET] [--continue-on-failure] [--jars=[JAR,…]] [--labels=[KEY=VALUE,…]] [--params=[PARAM=VALUE,…]] [--properties=[PROPERTY=VALUE,…]] [GLOBAL-FLAG …]

  3. REST API 像这样调用:https://cloud.google.com/dataproc/docs/reference/rest/v1/projects.regions.jobs/submit

希望这对某人有用。