ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

DATAX改造支持geometry类型数据同步

2026/9/19 9:47:21 拓冰建站 浏览量
DATAX改造支持geometry类型数据同步

数据库使用postgresql安装了postgis插件存储了geometry空间数据,想使用datax做数据同步,但datax本身不支持geometry类型数据,如何改造呢?

1.首先下载已改造支持geometry类型的datax引擎,下载地址

https://download.csdn.net/download/letterss/88799803

 2.将下载的datax引擎解压,将plugin里面reader模块的postgresqlreader和wrtier模块的postgresqlwriter分别替换自己的引擎模块即可,如果只使用postgresql数据库,则不用替换直接使用下载的引擎。

3.测试

新建了两张表my_table,my_table_copy1

CREATE TABLE my_table (id SERIAL PRIMARY KEY, geom GEOMETRY);

CREATE TABLE my_table_copy1(id SERIAL PRIMARY KEY, geom GEOMETRY);

向my_table添加数据

INSERT INTO my_table (geom) VALUES ('POINT(0 0)'); 

查询数据显示如下

 

使用datax同步,dataxjson如下

{"job": {"setting": {"speed": {"channel": "6","byte": "12242880"},"errorLimit": {"record": "5","percentage": "0.02"}},"content": [{"reader": {"name": "postgresqlreader","parameter": {"username": "XVko54UY9nOe/3JQGQUikw==","password": "fMaKElymbiVDjjwluBXyhA==","column": ["\"id\"", "\"geom\""],"splitPk": "","connection": [{"table": ["public.my_table"],"jdbcUrl": ["jdbc:postgresql://localhost:5432/postgres"]}]}},"writer": {"name": "postgresqlwriter","parameter": {"username": "XVko54UY9nOe/3JQGQUikw==","password": "fMaKElymbiVDjjwluBXyhA==","column": ["\"id\"", "\"geom\""],"preSql": ["truncate table public.my_table_copy1"],"connection": [{"table": ["public.my_table_copy1"],"jdbcUrl": "jdbc:postgresql://localhost:5432/postgres"}]}},"transformer": []}]}
}

 同步成功,可以看到my_table_copy1 geom字段也有数据了,且数据一致