同步操作将从 Gitee 极速下载/Addax 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
Addax 是一个支持主流数据库的通用数据采集工具
使用文档 详细描述了如何安装部署和每个采集插件的使用方法
该项目原始代码来自阿里开源的 DataX ,但经过了大幅修改,详细情况可参考与DataX的主要区别
Addax 支持超过 20 种关系型和非关系型数据库,通过简单的配置,还可以快速增加更多的数据源支持。
docker pull wgzhao/addax:latest
docker run -ti --rm --name addax wgzhao/addax:latest /opt/addax/bin/addax.sh /opt/addax/job/job.json
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/wgzhao/Addax/master/install.sh)"
上述脚本会将 Addax 安装到预设的目录( 对于 macOS Intel 而言,目录为 /usr/local
, Apple Silicon 以及 Linux 系统则为 /opt/addax
)
git clone https://github.com/wgzhao/addax.git addax
cd addax
mvn clean package -pl '!:addax-docs'
mvn package assembly:single
编译打包成功后,会在项目目录的target/addax
目录下创建一个 addax-<version>
的 文件夹,其中 <version>
表示版本。
job
子目录包含了大量的任务样本,其中 job.json
可以作为冒烟测试,执行如下
bin/addax.sh job/job.json
上述命令的输出大致如下:
$bin/addax.sh job/job.json
___ _ _
/ _ \ | | | |
/ /_\ \ __| | __| | __ ___ __
| _ |/ _` |/ _` |/ _` \ \/ /
| | | | (_| | (_| | (_| |> <
\_| |_/\__,_|\__,_|\__,_/_/\_\
:: Addax version :: (v4.0.3)
2021-09-16 11:03:20.328 [ main] INFO VMInfo - VMInfo# operatingSystem class => sun.management.OperatingSystemImpl
2021-09-16 11:03:20.347 [ main] INFO Engine -
{
"content":[
{
"reader":{
"parameter":{
"column":[
{
"type":"string",
"value":"addax"
},
{
"type":"long",
"value":19890604
},
{
"type":"date",
"value":"1989-06-04 00:00:00"
},
{
"type":"bool",
"value":true
},
{
"type":"bytes",
"value":"test"
}
],
"sliceRecordCount":10
},
"name":"streamreader"
},
"writer":{
"parameter":{
"print":true,
"column":[
"col1"
],
"encoding":"UTF-8"
},
"name":"streamwriter"
}
}
],
"setting":{
"errorLimit":{
"record":0,
"percentage":0.02
},
"speed":{
"byte":-1,
"channel":1
}
}
}
2021-09-16 11:03:20.367 [ main] INFO PerfTrace - PerfTrace traceId=job_-1, isEnable=false, priority=0
2021-09-16 11:03:20.367 [ main] INFO JobContainer - Addax jobContainer starts job.
2021-09-16 11:03:20.368 [ main] INFO JobContainer - Set jobId = 0
2021-09-16 11:03:20.382 [ job-0] INFO JobContainer - Addax Reader.Job [streamreader] do prepare work .
2021-09-16 11:03:20.382 [ job-0] INFO JobContainer - Addax Writer.Job [streamwriter] do prepare work .
2021-09-16 11:03:20.383 [ job-0] INFO JobContainer - Job set Channel-Number to 1 channels.
2021-09-16 11:03:20.383 [ job-0] INFO JobContainer - Addax Reader.Job [streamreader] splits to [1] tasks.
2021-09-16 11:03:20.383 [ job-0] INFO JobContainer - Addax Writer.Job [streamwriter] splits to [1] tasks.
2021-09-16 11:03:20.405 [ job-0] INFO JobContainer - Scheduler starts [1] taskGroups.
2021-09-16 11:03:20.412 [ taskGroup-0] INFO TaskGroupContainer - taskGroupId=[0] start [1] channels for [1] tasks.
2021-09-16 11:03:20.415 [ taskGroup-0] INFO Channel - Channel set byte_speed_limit to -1, No bps activated.
2021-09-16 11:03:20.415 [ taskGroup-0] INFO Channel - Channel set record_speed_limit to -1, No tps activated.
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
addax 19890604 1989-06-04 00:00:00 true test
2021-09-16 11:03:23.428 [ job-0] INFO AbstractScheduler - Scheduler accomplished all tasks.
2021-09-16 11:03:23.428 [ job-0] INFO JobContainer - Addax Writer.Job [streamwriter] do post work.
2021-09-16 11:03:23.428 [ job-0] INFO JobContainer - Addax Reader.Job [streamreader] do post work.
2021-09-16 11:03:23.430 [ job-0] INFO JobContainer - PerfTrace not enable!
2021-09-16 11:03:23.431 [ job-0] INFO StandAloneJobContainerCommunicator - Total 10 records, 260 bytes | Speed 86B/s, 3 records/s | Error 0 records, 0 bytes | All Task WaitWriterTime 0.000s | All Task WaitReaderTime 0.000s | Percentage 100.00%
2021-09-16 11:03:23.432 [ job-0] INFO JobContainer -
任务启动时刻 : 2021-09-16 11:03:20
任务结束时刻 : 2021-09-16 11:03:23
任务总计耗时 : 3s
任务平均流量 : 86B/s
记录写入速度 : 3rec/s
读出记录总数 : 10
读写失败总数 : 0
建议使用 IntelliJ 作为开发 IDE。项目的代码风格模板可以在codestyle资源库中找到,还有我们的一般编程和Java指南。除了这些之外,你还应该遵守以下几点。
AddaxException(REQUIRE_VALUE, "lack of required item")
。这种分类可以让你生成报告,这样你就可以监控各种故障。mvn license:format
生成许可证。Formatter
类的printf风格):format("Session property %s is invalid: %s", name, value)
(注意,format()
应该总是静态导入)。有时,如果你只需要附加一些东西,可以考虑使用+
运算符。Assertions
类,而不是手工写断言。4.0.0
版本开始,启用新的项目名称 Addax
, 因此它和以前的版本均不兼容3.2.1
版本开始,包类名已经更改,因此不再兼容 3.1.x
版本该软件在遵守 Apache license 下可自由免费使用
特别感谢 JetBrains 对本项目提供开发工具赞助
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。