首页 > 其他分享 >阿里云DataX-KuduReader插件

阿里云DataX-KuduReader插件

时间:2023-08-28 22:24:33浏览次数:49  
标签:插件 必选 name KuduReader DataX 默认值 where

1. 插件介绍

1.1需求背景

项目中需要从另一个Kudu集群定时同步数据,尝试好几个同步方案都不顺手。

Datax上也只有KuduWriter插件,就简单实现了一个KuduReader插件。

插件已同步至Github,有需要的小伙伴可以参考。

插件支持Kudu作为源来读取数据,利用Datax丰富的插件库,可以满足不同的写入需求。

1.2功能描述

  1. 简单实现where数据过滤;
  2. 支持select*;

2.使用方法

2.1环境依赖

Jdk:1.8+;
Datax:0.0.1-SNAPSHOT;
Kudu:1.10.0;
Maven:3.4+;

2.1代码Clone

git clone https://github.com/bigbanghoward/datax-kudureader.git your_dir

2.2插件编译

mvn clean package -DskipTests assembly:assembly

2.2插件部署

cp ./output/datax/plugin/reader/kudureader/* ${DATAX_HOME}/plugin/reader

3.配置说明

  • 配置一个从Kudu读取数据到本地的作业:
{
    "job":{
        "setting":{
            "speed":{
                "channel":1
            },
            "errorLimit":{
                "record":0,
                "percentage":0.02
            }
        },
        "content":[
            {
                "reader":{
                    "name":"kudureader",
                    "parameter":{
                        "columns":[
                            "*"
                        ],
                        "connection":{
                            "kuduMaster":"yourKuduMaster",
                            "table":"kuduTableName"
                        },
                        "outputExtendParam":{
                            "扩展参数key":"扩展参数value"
                        },
                        "where":{
                            "column":"p_date",
                            "compare":"=",
                            "value":"2023-06-23"
                        }
                    }
                },
                "writer":{
                    "name":"streamwriter",
                    "parameter":{
                        "path":"/tmp",
                        "fileName":"kudu_table_data",
                        "print":true,
                        "encoding":"UTF-8"
                    }
                }
            }
        ]
    }
}

4.参数说明

  • columns
    • 描述:要查询的字段列表,list结构,支持'*',可以查询所有字段;
    • 必选:是;
    • 默认值:无;
  • kuduMaster
    • 描述:kudu的Master节点地址;
    • 必选:是;
    • 默认值:无;
  • table
    • 描述:kudu的数据表名称,支持Impala引擎管理的表,格式为db_name.table_name;
    • 必选:是;
    • 默认值:无;
  • where
    • 描述:支持where条件过滤数据,目前只支持单个查询条件,有需求的可以自己修改源码中的KuduReader.java的handleWhere方法;
    • 必选:否;
    • 默认值:无;
  • outputExtendParam
    • 描述:如果想在kudureader的结果输出时附加额外的字段,可以在这里定义,Map结构;
    • 必选:否;
    • 默认值:无;

5.测试报表

测试环境:
    4C16G的测试机进行测试
测试结果:
任务启动时刻                    :                   *
任务结束时刻                    :                   *
任务总计耗时                    :               1560s
任务平均流量                    :           14.71MB/s
记录写入速度                    :          23926rec/s
读出记录总数                    :            37325658
读写失败总数                    :                   0

6.补充说明

1.该KuduReader插件的输出是StringColumn类型,内容为json字符串;可以根据自己需要封装Record输出格式;

标签:插件,必选,name,KuduReader,DataX,默认值,where
From: https://www.cnblogs.com/panshan-lurenjia/p/17663513.html

相关文章

  • 一个有趣的浏览器插件“猫抓”
    猫抓是一款非常好用的浏览器插件,它能抓取几乎所有chrome内核浏览器的网页视频链接数据。猫抓插件可以在任意网页抓取任意视频数据并且一键抓取保存获取您需要内容,操作起来简单方便,下载内容可以保存本地电脑。猫抓功能介绍1、支持在任意站点抓取任意数据;2、可以多站点同时更新;3......
  • Eclipse SVN插件的帐号、密码修改
        Eclipse的SVN插件Subclipse做得很好,在svn操作方面提供了很强大丰富的功能。但到目前为止,该插件对svn用户的概念极为淡薄,不但不能方便地切换用户,而且一旦用户的帐号、密码保存之后,就无法再变更了。解决思路:    既然界面上不能进行修改,那就只有......
  • flutter使用腾讯IM插件tencent_cloud_chat_sdk打安卓报“从内部类中访问本地变量param
    使用tencent_cloud_chat_sdk5.2.0版本打包安卓flutterbuildapk报以下错误/Users/tanglin/Documents/flutter/.pub-cache/hosted/pub.flutter-io.cn/tencent_cloud_chat_sdk-5.2.0/android/src/main/java/com/qq/qcloud/tencent_im_sdk_plugin/util/CommonUtil.java:401:错误:......
  • eclipse插件OpenExplorer
    1.OpenExplorer从Eclipse中打开窗口的插件下载地址:https://github.com/samsonw/OpenExplorer/downloadsgithub地址:https://github.com/samsonw/OpenExplorer官方介绍 安装方式,只要将jar包下载后放在eclipse安装目录的dropins下重启即可 eclipse的dropins的目录中可以放link配置......
  • Obsidian插件Excalidraw安装slideshow脚本
    原文地址:https://www.cnblogs.com/liqinglucky/p/slideshow.html插件介绍:Excalidraw的动态演示效果来了,伟大的匈牙利大叔又放狠招了,你的Obsidian更好用了_哔哩哔哩_bilibili由于一开始我的电脑访问github很慢,在安装slideshow时总是提示couldnotopenscriptenginerepository......
  • chrome即時查看網頁圖片的真實大小(Chrome浏览器插件——Image Size Info)
    插件地址:https://chrome.google.com/webstore/detail/image-size-info/oihdhfbfoagfkpcncinlbhfdgpegcigf/related需要科×上网。参考:https://www.techbang.com/posts/13423-view-the-real-size-of-web-images......
  • pycharm中,ideolog插件的使用方法
    我们在pycharm打印日志时,为了更方便的通过查看日志,需用通过不同改的颜色反应不同级别的日志内容我们可以使用ideolog插件来实现这种效果一、插件下载Settings-Plugins中,搜索ideolog,并安装 二、配置ideolog下载完成插件后,打开一个我们的日志文件,可以点击Configurelogform......
  • VSCODE工具 VUE代码格式化插件及配置
    1.安装插件1.1Prettier它通过解析代码并使用自己的规则重新打印它,并考虑最大行长来强制执行一致的样式,并在必要时包装代码。如今,它已成为解决所有代码格式问题的优选方案;支持JavaScript、Flow、TypeScript、CSS、SCSS、Less、JSX、Vue、GraphQL、JSON、Markdown等语......
  • 【MySQL 8.0】密码复杂度验证组件与连接控制插件
    (root@node01)>installcomponent'file://component_validate_password';QueryOK,0rowsaffected(0.08sec)(root@node01)>select*frommysql.component;+--------------+--------------------+------------------------------------+|compo......
  • 在maven中使用tomcat插件运行项目
    1.在pom.xml中配置插件<plugin><groupId>org.apache.tomcat.maven</groupId><artifactId>tomcat7-maven-plugin</artifactId><version>2.2</version><configuration>......