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