Amazon DynamoDB
开发人员指南 (API 版本 2012-08-10)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

处理 HiveQL 语句

Hive 是在 Hadoop 中运行的一款应用程序,而 Hadoop 是用于运行 MapReduce 作业的面向批处理的框架。当您发出一个 HiveQL 语句时,Hive 会判断它是否可以立即返回结果或是否必须提交一项 MapReduce 作业。

例如,考虑 ddb_features 表 (来自 教程:使用 Amazon DynamoDB 和 Apache Hive)。以下 Hive 查询会打印各州的缩写和每个州的山峰数量:

SELECT state_alpha, count(*) FROM ddb_features WHERE feature_class = 'Summit' GROUP BY state_alpha;

Hive 不会立即返回结果。相反,它会提交一项 MapReduce 作业,由 Hadoop 架构处理。Hive 会等待作业完成,然后显示查询结果:

AK 2 AL 2 AR 2 AZ 3 CA 7 CO 2 CT 2 ID 1 KS 1 ME 2 MI 1 MT 3 NC 1 NE 1 NM 1 NY 2 OR 5 PA 1 TN 1 TX 1 UT 4 VA 1 VT 2 WA 2 WY 3 Time taken: 8.753 seconds, Fetched: 25 row(s)

监控和取消作业

当 Hive 启动 Hadoop 作业时,它将打印该作业的输出。作业完成状态将随着作业进度不断更新。有时,状态可能会很长时间不更新。(当您查询预置的读取容量设置较低的大型 DynamoDB 表时,则可能会出现这种情况。)

如果您需要在作业完成前取消作业,可随时键入 Ctrl+C

本页内容: