itinycheng / flink-connector-clickhouse

Flink SQL connector for ClickHouse. Support ClickHouseCatalog and read/write primary data, maps, arrays to clickhouse.
Apache License 2.0
349 stars 149 forks source link

flink sql sink到clickhouse #32

Closed jetliu1711 closed 2 years ago

jetliu1711 commented 2 years ago

你好,请问一下,flink sql sink到clickhouse中,clickhouse建表支持flink sql中ROW数据类型映射到clickhouse的JSON数据类型吗?

itinycheng commented 2 years ago

Sorry,不支持,刚知道新增了个JSON类型; 当前有个Map类型,不知道能否满足需求,具体看下readme; 最近没时间,过段才能去开发支持这个类型;

jetliu1711 commented 2 years ago

好的,谢谢你,那请问一下ROW能映射成map吗?

itinycheng commented 2 years ago

@jetliu1711 Sorry,上一句没说太明白; ROW没办法直接映射到Map,本身两个类型都不兼容; 如果你的ROW结构是类似Map<String, FixedType>这种,那你可以直接写个UDF函数,对该列做ROW到Map的转换; 如果ROW中类型比较多样,可以将单列拆分为多列分别存储,写个UDTF;

jetliu1711 commented 2 years ago

@jetliu1711 Sorry,上一句没说太明白; ROW没办法直接映射到Map,本身两个类型都不兼容; 如果你的ROW结构是类似Map<String, FixedType>这种,那你可以直接写个UDF函数,对该列做ROW到Map的转换; 如果ROW中类型比较多样,可以将单列拆分为多列分别存储,写个UDTF;

我这边Row有很多列的情况,map实现不了,因为拆分开来的字段太多了,想存个类似json类型的数据,我在想想办法,谢谢你。

jetliu1711 commented 2 years ago

@jetliu1711 Sorry,上一句没说太明白; ROW没办法直接映射到Map,本身两个类型都不兼容; 如果你的ROW结构是类似Map<String, FixedType>这种,那你可以直接写个UDF函数,对该列做ROW到Map的转换; 如果ROW中类型比较多样,可以将单列拆分为多列分别存储,写个UDTF;

我这边Row有很多列的情况,map实现不了,因为拆分开来的字段太多了,想存个类似json类型的数据,我在想想办法,谢谢你。 你好,兄弟,你给的那个maven下载路径,包找不到。

itinycheng commented 2 years ago

没deploy maven中央仓; 得自己手动打包mvn clean package -DskipTests

jetliu1711 commented 2 years ago

没deploy maven中央仓; 得自己手动打包mvn clean package -DskipTests

好的,兄弟,在请教一个问题哈,是不是用jdbc也不支持json数据类型的写入?

itinycheng commented 2 years ago

flink-connector-jdbc 好像复合类型都不支持; clickhouse-jdbc是支持所有类型的; 最后幸苦给个star吧,谢谢。

jetliu1711 commented 2 years ago

flink-connector-jdbc 好像复合类型都不支持; clickhouse-jdbc是支持所有类型的; 最后幸苦给个star吧,谢谢。

嗯嗯,好的,兄弟,刚才下载咱们master分支,非常慢,兄弟有编译的好jar吗?百度云啥的?

jetliu1711 commented 2 years ago

flink-connector-jdbc 好像复合类型都不支持; clickhouse-jdbc是支持所有类型的; 最后幸苦给个star吧,谢谢。

嗯嗯,好的,兄弟,刚才下载咱们master分支,非常慢,兄弟有编译的好jar吗?百度云啥的?

你好,兄弟,为啥我下载的是1.13的flink版本,pom.xml里面引用的是1.14.3的flink。修改pom文件的flink_version还报错。

itinycheng commented 2 years ago

@jetliu1711

  1. 国内github页面访问确实不稳定,直接git checkout 应该好点;
  2. 用1.13版本可以切换到 release-1.13分支;直接修改master的flink version也是可行的,不过得修复个编译问题,这个是flink包变更导致的; image
jetliu1711 commented 2 years ago

@jetliu1711

  1. 国内github页面访问确实不稳定,直接git checkout 应该好点;
  2. 用1.13版本可以切换到 release-1.13分支;直接修改master的flink version也是可行的,不过得修复个编译问题,这个是flink包变更导致的; image

好的,谢谢你。