tis
tis copied to clipboard
Support agile DataOps Based on Flink, DataX and Flink-CDC, Chunjun with Web-UI
目前TiDB 只能批量读取,可以通过flink-cdc来支持增量读取 利用 tiup来服务端stub: https://docs.pingcap.com/zh/tidb/stable/quick-start-with-tidb 在读取TiDB 表Meta Data 过程中会报异常 ``` shell at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.UnsupportedOperationException: null at com.qlangtech.tis.plugin.ds.tidb.TiKVDataSourceFactory.getDbConfig(TiKVDataSourceFactory.java:169) at com.qlangtech.tis.plugin.datax.common.TableColsMeta.(TableColsMeta.java:47) at com.qlangtech.tis.plugin.datax.common.BasicDataXRdbmsReader.getTabsMeta(BasicDataXRdbmsReader.java:227) at com.qlangtech.tis.plugin.datax.common.BasicDataXRdbmsReader.getSelectedTabs(BasicDataXRdbmsReader.java:88) at com.qlangtech.tis.datax.IDataxReader.hasMulitTable(IDataxReader.java:38) at...
设置批量同步通道源表->目标表的列是强一致(数量,名称是保持强一致的),但是一般场景下,用户希望自定义列映射关系,例如: 1. 在目标表上添加额外列 2. 将源表中的列设置别名到目标表上 功能实现可以利用DataX transform机制来实现 https://github.com/alibaba/DataX/blob/master/transformer/doc/transformer.md ![原表选择](https://github.com/qlangtech/tis/assets/21274618/e869a3a5-7b89-4868-9873-602f2c58b2c9) [编辑](https://www.processon.com/diagraming/645e0fa4f4065d11d7e32a5b)
实现 目标端 Paimon 写入 1. 批量写入 https://paimon.apache.org/docs/master/api/java-api/#stream-write 2. 增量实时写入 https://paimon.apache.org/docs/master/api/flink-api/
期望利用scala AnyVal(值对象)可以优化在CommonRdbmsReader中迭代ResultSet对象中的记存放到Record中,不需要每次为特定col类型生成专门的值对象,从而可以大大减轻VM垃圾回收的工作量以提高执行效率。 代码已经提交在 https://github.com/qlangtech/DataX/tree/scala ,不过从试验效率来看并没有创建值对象的步骤: 通过javap反编译scala代码 https://github.com/qlangtech/DataX/blob/scala/plugin-rdbms-util/src/main/scala/com/alibaba/datax/plugin/rdbms/reader/CommonRdbmsReader.scala ``` 666: dup 667: aload 12 669: invokespecial #90 // Method com/alibaba/datax/common/scala/element/StringColumn."":(Ljava/lang/String;)V 672: invokeinterface #96, 2 // InterfaceMethod com/alibaba/datax/common/scala/element/Record.addColumn:(Lcom/alibaba/datax/common/scala/element/Column;)V 677: iload 10 679:...
mysql实时同步clickhouse时delete报错,显示 `clickhouse不支持delete`. 报错信息: ``` shell DirtyDataEntry[jobId='78a73601134bd9356ff37ab2282ee7f9', jobName='insert-into_default_catalog.default_database.test', operatorName='Sink: test', dirtyContent='{"rowKind":"DELETE","arity":3}', errorMessage='com.dtstack.chunjun.throwable.WriteRecordException: JdbcOutputFormat [insert-into_default_catalog.default_database.test] writeRecord error: when converting field[0] in Row(-D(6,7777,女)) ``` 希望直接在程序上去重一下 `optimize TABLE table_name FINAL`,数据库只保留最新的一条数据
by now,the efficiency of the inputting SQL on Dataflow componet is relative lower, in order to optimize it,shall introduce the Monaco componet to provide suggestion when inputting SQL phase base...
![](http://assets.processon.com/chart_image/63667b5ae401fd612f4bfa34.png?ddd) * [ ] #155 * [ ] #156 * [x] #157 * [ ] #150 * [ ] #158 * [x] #161
## 动机 TIS目前已经实现的数据端类型,以及支持的读写类型方式描述:[https://tis.pub/docs/plugin/source-sink](https://tis.pub/docs/plugin/source-sink) 随着大数据生态的繁荣,有越来越多的数据端在涌现,凭借TIS优良的可插拔扩展性,目标将生态中的长尾头部及尾部的数据端都囊括其中。 为此,需要社区中有兴趣的小伙伴一起协力共建。 ## 目前计划中需要实现的端有以下几种 最右侧列issue 有内容的说明已经提上日程,没有说明仅有意向 端类型 | 批读 | 批写| 实时读 | 实时写 | issue| |-|-|-|-|-|-| |RocketMQ|||| ✔|| | SqlServer |||✔|✔|#340| |Apache Paimon|| ✔||✔| #228 |...