本篇文章1077字,读完约3分钟
阿里云国际站经销商,主营阿里云,腾讯云,华为云,亚马逊aws,谷歌云gcp,微软云az,免费开户,代充值优惠大,联系客服飞机@jkkddd
通过ES-Hadoop将HDFS中的数据写入Elasticsearch
操作流程准备工作
创建同一专有网络下的阿里云Elasticsearch和E-MapReduce(以下简称EMR)实例、开启Elasticsearch实例的自动创建索引功能、准备测试数据和Java环境。
步骤一:上传ES-Hadoop JAR包至HDFS
下载ES-Hadoop安装包,并上传至EMR Master节点的HDFS目录下。
步骤二:配置pom依赖
创建Java Maven工程,并配置pom依赖。
步骤三:编写并运行MapReduce任务
编写MapReduce写数据到Elasticsearch的Java代码,并打成Jar包上传至EMR集群,最后运行代码完成写数据任务。
步骤四:验证结果
在Elasticsearch的Kibana控制台上,查看通过MapReduce写入的数据。
步骤一:上传ES-Hadoop JAR包至HDFS
下载ES-Hadoop安装包,其版本需要与Elasticsearch实例保持一致。
本文使用elasticsearch-hadoop-6.7.0.zip。
登录E-MapReduce控制台,获取Master节点的IP地址,并通过SSH登录对应的ECS机器。
具体操作步骤请参见登录集群。
将已下载的elasticsearch-hadoop-6.7.0.zip上传至Master节点,并解压获得elasticsearch-hadoop-6.7.0.jar。
创建HDFS目录,将elasticsearch-hadoop-6.7.0.jar上传至该目录下。
步骤二:配置pom依赖
创建Java Maven工程,并将如下的pom依赖添加到Java工程的pom.xml文件中
步骤三:编写并运行MapReduce任务
编写示例代码。
以下代码会读取HDFS上/tmp/hadoop-es目录下的JSON文件,并将这些JSON文件中的每一行作为一个文档写入Elasticsearch。写入过程由EsOutputFormat在Map阶段完成。
步骤四:验证结果
登录对应阿里云Elasticsearch实例的Kibana控制台。
具体操作步骤请参见登录Kibana控制台。
在左侧导航栏,单击Dev Tools。
在Console页签下,执行以下命令,查看通过MapReduce任务写入的数据。