【DataX】将hive表数据导入ES

news2025/1/18 20:21:29

目录

一、环境

二、创建hive测试表

三、Es写入插件包

四、配置json

五、数据同步

1、执行命令

2、查看es结果


一、环境

        DataX:windows安装

        Es版本:7.9.0        

二、创建hive测试表

CREATE TABLE teacher(
 name string,
 age int
)row format delimited fields terminated by ','
stored as orc;
insert into teacher(name,age) values("zhangsn",22);
insert into teacher(name,age) values("lisi",30);
insert into teacher(name,age) values("wangwu",66);
insert into teacher(name,age) values("lihua",15);

三、Es写入插件包

下载地址

 将es写入插件包放进plugin\writer文件夹下。

四、配置json

 hive_es.json:

{
    "job": {
        "setting": {
            "speed": {
                "channel": 1
            }
        },
        "content": [
            {
                "reader": {
                    "name": "hdfsreader",
                    "parameter": {
                        "path": "/user/hive/warehouse/teacher/*",
                        "defaultFS": "hdfs://192.168.xx.xx:8020",
                        "column": [
                               {"index": 0,   "type": "string" },
                               {"index": 1,   "type": "long" }
                        ],
                        "fileType": "orc",
                        "encoding": "UTF-8",
                        "fieldDelimiter": ","
                    }
                },
                "writer": {
                  "name": "elasticsearchwriter",
                  "parameter": {
                    "endpoint": "http://192.168.xx.xx:9200/",
                    "accessId": "123",
                    "accessKey": "123",
                    "cleanup": true,
                    "index":"teacher",
                    "type":"_doc",
                    "settings": {
                        "settings":{
                            "index":{
                                "mapping":{"total_fields":{"limit":2000}},
                                "number_of_replicas":2,
                                "number_of_shards":10
                            }
                        }
                    },
                    "batchSize": 1000,
                    "splitter": ",",
                    "column": [
                      {"name":"name","type":"string"},
                      {"name":"age","type":"long"}
                    ]
                  }
                }
            }
        ]
    }
}

注意:

1、将配置好的hive_es.json文件放到job文件夹下;

2、hive的读取配置是hdfsreader,在hive中使用show create table teacher命令可以查看teacher表在hdfs中的位置,得到这个位置可以配置hdfsreader的defaultFs和path;

3、hive表的int类型对应hdfsreader字段配置的long,否则数据同步失败;ES也是对应为long;

4、可以使用下面命令查找读取、写入的标准模板(前提是对应reader和writer文件夹中的插件文件夹中要有plugin_job_template.json文件模板):

D:\workSoftWare\datax\datax\bin>datax.py -r mysqlreader -w elasticsearchwriter

五、数据同步

1、执行命令

D:\workSoftWare\datax\datax\bin>python  datax.py  ../job/hive_es.json

2、查看es结果

        这里使用kibana查询:

GET /teacher/_search
{
  "took" : 3,
  "timed_out" : false,
  "_shards" : {
    "total" : 10,
    "successful" : 10,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : {
      "value" : 4,
      "relation" : "eq"
    },
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "teacher",
        "_type" : "_doc",
        "_id" : "pnhlI4gBUNFFJN_x_IxO",
        "_score" : 1.0,
        "_source" : {
          "name" : "wangwu",
          "age" : 66
        }
      },
      {
        "_index" : "teacher",
        "_type" : "_doc",
        "_id" : "o3hlI4gBUNFFJN_x9Yw7",
        "_score" : 1.0,
        "_source" : {
          "name" : "zhangsn",
          "age" : 22
        }
      },
      {
        "_index" : "teacher",
        "_type" : "_doc",
        "_id" : "onhlI4gBUNFFJN_x74zU",
        "_score" : 1.0,
        "_source" : {
          "name" : "lisi",
          "age" : 30
        }
      },
      {
        "_index" : "teacher",
        "_type" : "_doc",
        "_id" : "pHhlI4gBUNFFJN_x-IyH",
        "_score" : 1.0,
        "_source" : {
          "name" : "lihua",
          "age" : 15
        }
      }
    ]
  }
}

同步成功!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/532538.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

抖音未来的发展趋势|成都欢蓬信息

抖音未来的发展趋势,近年来随着互联网技术的发展,小视频app也逐渐走入大家的日常生活中,闲着的时候打开手机抖音APP,就可以刷到世界各地人们分享的视频和直播,下面一起看看抖音未来的发展趋势 一、抖音的现状   据权…

【 五子棋对战平台(java_gobang) 】

文章目录 一、核心功能及技术二、效果演示三、创建项目扩展:WebSocket 框架知识 四、需求分析和概要设计五、数据库设计与配置 Mybatis六、实现用户模块功能6.1 数据库代码编写6.2 前后端交互接口6.3 服务器开发6.4 客户端开发 七、实现匹配模块功能7.1 前后端交互接…

构建新一代智慧园区移动应用以推动数字转型

随着智慧城市的建设和智慧园区的崛起,智慧园区数字一体化建设成为园区发展的重心,当然数字转型离不开移动应用的整合服务。 在过去的几年中,智慧园区移动应用已经发展成为园区管理和服务的重要手段之一,为企业和员工提供了更加便…

知行之桥EDI系统2023版功能介绍——概览页面

登录知行之桥EDI系统2023版,即可看到概览页面。默认情况下,会显示过去7天的各项指标。用户可以在页面右上角:显示过去的数据 下拉列表中手动选择需要的时间段,如:24小时、3天、7天等。 关键指标的自定义配置 概览页面…

如何将exe注册为windows服务,直接从后台运行

如何将exe注册为windows服务,直接从后台运行 使用instsrvsrvanywindow64位系统安装配置 window32位系统安装 使用instsrvsrvany 这是地址:链接: 网盘地址 提取码: h2za 复制这段内容后打开百度网盘手机App,操作更方便哦 window64位系统 安…

[OOD设计] - 电梯系统设计

明确主要需求 首先需要设计电梯系统的基本工作流程,一个简单电梯系统主要就是两个主要功能: 乘客在电梯外按下按钮时,电梯系统会驱动一个电梯来接人乘客在电梯内部按下楼层按钮时,电梯系统会驱动该电梯到达指定楼层 根据需求来…

泰克Tektronix AFG31021 任意波函数发生器产品资料

AFG31021是一款高质量、多功能的任意波形发生器,可以生成高精度、高分辨率的波形信号。该产品的主要特点包括: 可以生成任意波形信号,内置多种标准波形,如正弦波、方波、三角波、锯齿波等,也可以通过用户自定义来生成…

支付从业者转型路在何方?

近来,整个支付行业,已经“卷”出了新高度。 营销上电销卷地推,工单卷电销,POS机具则是退押金卷不退押金,无押金卷退押金”,互相“卷”得不亦乐乎。 与此同时,支付圈子里聊的永远是“成本上升”…

微信小程序是怎么做的?

微信小程序是一种轻量级的应用,它可以在微信内部直接使用,无需下载和安装。那么,微信小程序是怎么做的呢? 微信小程序制作的大概步骤 微信小程序制作主要包括以下几个步骤: ①注册小程序账号 ②在小程序制作工具创…

5th-Generation Mobile Communication Technology(一)

目录 一、5G/NR 1、 快速参考(Quick Reference) 2、5G Success 3、5G Challenges 4、Qualcomm Videos 二、PHY and Protocol 1、Frame Structure 2、Numerology 3、Waveform 4、Frequency Band 5、BWP 6、Synchronization 7、Beam Management 8、CSI Fra…

matmul/mm 函数用法介绍

介绍torch.matmul之前先介绍torch.mm函数, mm和matmul都是torch中矩阵乘法函数,mm只能作用于二维矩阵,matmul可以作用于二维也能作用于高维矩阵 mm函数使用 x torch.rand(4, 9) y torch.rand(9, 8) print(torch.mm(x,y).shape)torch.Size([4, 8]) m…

Linux Shell 实现一键部署VMware Workstation

VMware Workstation 前言 VMware Workstation Pro 是业界标准的桌面 Hypervisor,用于在 Linux 或 Windows PC 上运行虚拟机 download VMware_Workstation VMware_Workstation WindowsVMware_Workstation linux文档downloaddownload参考 Linux 各系统下载使用参…

Scrapy 基本使用

一、Scrapy框架使用 1. 创建scrapy项目(不能有汉字,不能数字开头) scrapy startproject Baidu 2. 创建爬虫文件 1. cd Baidu 2. scrapy genspider wenda www.baidu.com 注意: parse()是执行了start_url之后要执行的方法&#…

Camunda 外部任务(External Task)如何使用

Camunda的外部任务(External Task)是一种可分配和可重试的任务,与传统的用户任务不同,它可以在 Camunda 流程引擎之外的应用程序中执行。 外部任务可以用于将复杂的业务逻辑委托给外部系统,例如第三方服务或自定义的应…

Java简便模拟验证码

package staticStu.util;import java.util.Random;public class Login {public static void main(String[] args) {// 开发一个验证码// 1、定义一个变量记录验证码String code"";// 2、定义一个变量记住全部验证码字符String data"abcdefghijklmnopqrstuvwxyzA…

mongodb wireshark显示

mongodb wireshark展示为ssl,只需要禁用tls,然后把当前会话解码为mongo就可以

鸿蒙Hi3861学习十四-Huawei LiteOS-M(AP模式)

一、简介 参看上一章:鸿蒙Hi3861学习十四-Huawei LiteOS-M(STA模式)_t_guest的博客-CSDN博客 二、API介绍 RegisterWifiEvent 函数功能: 为指定的WIFI事件注册回调函数。当WIFIEVENT中定义的WIFI事件发生时,将调用已注…

MySQL体系架构

一、 MySQL体系架构 MySQL体系架构可分为物理架构和逻辑架构。 1、MySQL物理体系架构 1.1 配置文件 auto.cnf: 配置了MySQL Server的UUIDmy.cnf: MySQL的配置文件 1.2 其他重要文件 -basedirdir_name: MySQL安装的二进制文件目录-datadirdir_name: MySQL的数据目录和-pid-…

使用 Conv1D-LSTM 进行时间序列预测:预测多个未来时间步【优化】

未优化之前的版本见下,作者当时主要是为Mark这个项目,未进行深入分析。 使用 Conv1D-LSTM 进行时间序列预测:预测多个未来时间步 Introduction 通常有许多时间序列预测方法,例如 ARIMA、SARIMA 和 Holtz-winters,但是…

计算机网络基础(子网划分)

文章目录 一、网络设备二、IP地址分类A类地址B类地址C类地址特殊IP地址 三、划分子网根据子网掩码判断主机数根据子网和主机判断子网掩码根据IP和子网掩码判断子网数 四、场景运用 一、网络设备 1.集线器(hub):不可以隔离冲突域,…