- DynamoDB 教程
- DynamoDB - 首页
- DynamoDB - 概览
- DynamoDB - 基本概念
- DynamoDB - 环境
- DynamoDB - 操作工具
- DynamoDB - 数据类型
- DynamoDB - 创建表
- DynamoDB - 加载表
- DynamoDB - 查询表
- DynamoDB - 删除表
- DynamoDB - API 接口
- DynamoDB - 创建项目
- DynamoDB - 获取项目
- DynamoDB - 更新项目
- DynamoDB - 删除项目
- DynamoDB - 批量写入
- DynamoDB - 批量检索
- DynamoDB - 查询
- DynamoDB - 扫描
- DynamoDB - 索引
- 全局二级索引
- 本地二级索引
- DynamoDB - 聚合
- DynamoDB - 访问控制
- DynamoDB - 权限 API
- DynamoDB - 条件
- Web 身份联合
- DynamoDB - 数据管道
- DynamoDB - 数据备份
- DynamoDB - 监控
- DynamoDB - CloudTrail
- DynamoDB - MapReduce
- DynamoDB - 表活动
- DynamoDB - 错误处理
- DynamoDB - 最佳实践
- DynamoDB 有用资源
- DynamoDB - 快速指南
- DynamoDB - 有用资源
- DynamoDB - 讨论
DynamoDB - MapReduce
Amazon 的 Elastic MapReduce (EMR) 允许您快速有效地处理大数据。EMR 在 EC2 实例上运行 Apache Hadoop,但简化了流程。您可以利用 Apache Hive 通过 HiveQL(类似于 SQL 的查询语言)查询 MapReduce 作业流程。Apache Hive 作为一种优化查询和应用程序的方法。
您可以使用管理控制台的 EMR 选项卡、EMR CLI、API 或 SDK 来启动作业流程。您还可以选择交互式运行 Hive 或使用脚本。
EMR 的读/写操作会影响吞吐量消耗,但是,在大请求中,它会在后退算法的保护下执行重试。此外,与其他操作和任务同时运行 EMR 可能会导致限制。
DynamoDB/EMR 集成不支持二进制和二进制集属性。
DynamoDB/EMR 集成先决条件
在使用 EMR 之前,请查看此必要项目清单 -
- AWS 账户
- 在 EMR 操作中使用的同一账户下填充的表
- 具有 DynamoDB 连接性的自定义 Hive 版本
- DynamoDB 连接支持
- S3 存储桶(可选)
- SSH 客户端(可选)
- EC2 密钥对(可选)
Hive 设置
在使用 EMR 之前,创建一个密钥对以交互模式运行 Hive。密钥对允许连接到 EC2 实例和作业流程的主节点。
您可以按照以下步骤执行此操作 -
登录到管理控制台,并打开位于 https://console.aws.amazon.com/ec2/ 的 EC2 控制台
在控制台的右上方选择一个区域。确保区域与 DynamoDB 区域匹配。
在导航窗格中,选择“密钥对”。
选择“创建密钥对”。
在“密钥对名称”字段中,输入名称并选择“创建”。
下载生成的私钥文件,该文件使用以下格式:filename.pem。
注意 - 如果没有密钥对,则无法连接到 EC2 实例。
Hive 集群
创建一个启用 Hive 的集群以运行 Hive。它构建了 Hive 到 DynamoDB 连接所需的环境应用程序和基础设施。
您可以使用以下步骤执行此任务 -
访问 EMR 控制台。
选择“创建集群”。
在创建屏幕中,设置集群配置,为集群设置描述性名称,为终止保护选择“是”,并选中“启用”以进行日志记录,为“日志文件夹 S3 位置”指定 S3 目标,并为调试选中“启用”。
在“软件配置”屏幕中,确保字段为 Hadoop 分发版保留“Amazon”,为 AMI 版本保留最新版本,为“要安装的应用程序-Hive”保留默认 Hive 版本,为“要安装的应用程序-Pig”保留默认 Pig 版本。
在“硬件配置”屏幕中,确保字段为网络保留“启动到 EC2-Classic”,为 EC2 可用区保留“无偏好”,为“主-Amazon EC2 实例类型”保留默认值,不选中“请求 Spot 实例”,为“核心-Amazon EC2 实例类型”保留默认值,为“数量”保留“2”,不选中“请求 Spot 实例”,为“任务-Amazon EC2 实例类型”保留默认值,为“数量”保留“0”,不选中“请求 Spot 实例”。
务必设置一个限制,提供足够的容量以防止集群失败。
在“安全和访问”屏幕中,确保字段在 EC2 密钥对中保留您的密钥对,在 IAM 用户访问中保留“无其他 IAM 用户”,在 IAM 角色中保留“无需角色继续”。
查看“引导操作”屏幕,但不要修改它。
查看设置,完成后选择“创建集群”。
集群启动时会在“摘要”窗格中显示。
激活 SSH 会话
您需要一个活动的 SSH 会话才能连接到主节点并执行 CLI 操作。通过在 EMR 控制台中选择集群来查找主节点。它将主节点列为“主公共 DNS 名称”。
如果您没有 PuTTY,请安装它。然后启动 PuTTYgen 并选择“加载”。选择您的 PEM 文件并打开它。PuTTYgen 会通知您导入成功。选择“保存私钥”以保存为 PuTTY 私钥格式 (PPK),并为保存时不使用密码选择“是”。然后为 PuTTY 密钥输入名称,点击“保存”,然后关闭 PuTTYgen。
使用 PuTTY 通过首先启动 PuTTY 来与主节点建立连接。从“类别”列表中选择“会话”。在“主机名”字段中输入 hadoop@DNS。在“类别”列表中展开“连接 > SSH”,然后选择“身份验证”。在控制选项屏幕中,为身份验证选择“浏览”以获取私钥文件。然后选择您的私钥文件并打开它。为安全警报弹出窗口选择“是”。
连接到主节点后,将出现 Hadoop 命令提示符,这意味着您可以开始交互式 Hive 会话。
Hive 表
Hive 作为一种数据仓库工具,允许使用 HiveQL 查询 EMR 集群。之前的设置为您提供了一个有效的提示。只需输入“hive”,然后输入您想要的任何命令即可交互式运行 Hive 命令。有关 Hive 的更多信息,请参阅我们的 Hive 教程。