Hive:create 语句不是 运行(移动)
Hive: create statement is not running (Moving)
我正在使用 Hive 的第 13 个 Cloudera 版本。
我在 运行ning 任何 create 语句时遇到问题。 DML 和删除、更改等其他操作运行良好。下面是我尝试 运行 的示例语句,有什么我遗漏的吗?
CREATE EXTERNAL TABLE IF NOT EXISTS PROCESS.aggregated_rspns
(
id int,
dt string,
hour string,
rspns_count bigint,
highest_rspns_count bigint
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '[=11=]1'
LOCATION '/xyz/pqr/aggregated_rspns';
谁能帮我解决这个问题。
如果需要任何进一步的信息,请告诉我。
CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name
我认为您需要先创建数据库。在您的情况下,数据库 PROCESS 需要存在。
请确保,
- 位置是 HDFS 目录而不是文件名。
- HDFS 目录中只有一个相关的输入文件。
- 如果 PROCESS 数据库中已经存在 table,则不会抛出任何错误。
- 即使查看文件中存在的数据也可能有所帮助。
这是众所周知的 hive 问题。
如果我们有下面提到的配置单元 属性 true
hive.support.concurrency=true
and long running insert overwrite statements running concurrently
上面的 properites 在 table 上创建了很少的锁,这很明显,在数据库上也是如此,这是 hive 的可用性问题。
为了避免这种情况,我们可以尝试将第一个配置单元 属性 设置为 false,这可能会有所帮助。
此问题已解决但尚未发布,它包含一个修复程序(仅在我们使用 DBTxnManager 时适用)。
根据你的回答 Bector 这是真的,但你不需要等待下一个版本你可以直接在你所有的 Hqls 属性 下面添加:
hive.support.concurrency=true;
我试过了,它对我有用,它应该也对你有用。
我正在使用 Hive 的第 13 个 Cloudera 版本。
我在 运行ning 任何 create 语句时遇到问题。 DML 和删除、更改等其他操作运行良好。下面是我尝试 运行 的示例语句,有什么我遗漏的吗?
CREATE EXTERNAL TABLE IF NOT EXISTS PROCESS.aggregated_rspns
(
id int,
dt string,
hour string,
rspns_count bigint,
highest_rspns_count bigint
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '[=11=]1'
LOCATION '/xyz/pqr/aggregated_rspns';
谁能帮我解决这个问题。
如果需要任何进一步的信息,请告诉我。
CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name
我认为您需要先创建数据库。在您的情况下,数据库 PROCESS 需要存在。
请确保,
- 位置是 HDFS 目录而不是文件名。
- HDFS 目录中只有一个相关的输入文件。
- 如果 PROCESS 数据库中已经存在 table,则不会抛出任何错误。
- 即使查看文件中存在的数据也可能有所帮助。
这是众所周知的 hive 问题。
如果我们有下面提到的配置单元 属性 true
hive.support.concurrency=true
and long running insert overwrite statements running concurrently
上面的 properites 在 table 上创建了很少的锁,这很明显,在数据库上也是如此,这是 hive 的可用性问题。
为了避免这种情况,我们可以尝试将第一个配置单元 属性 设置为 false,这可能会有所帮助。
此问题已解决但尚未发布,它包含一个修复程序(仅在我们使用 DBTxnManager 时适用)。
根据你的回答 Bector 这是真的,但你不需要等待下一个版本你可以直接在你所有的 Hqls 属性 下面添加:
hive.support.concurrency=true;
我试过了,它对我有用,它应该也对你有用。