首页 >>  正文

同步数据传输名词解释

来源:baiyundou.net   日期:2024-08-02

在进行用户跨系统,或者数据搬运的情况下,一般使用拖拽式的开发形式。国外一般归类于ETL产品中,对应的组件是源端组件、转换组件、目标端组件,具体如何设计,请看这篇文章。

拖拽式的数据集成,到底属于数据集成还是数据开发,一直会有这个疑问;在加工过程中的各个组件,又能进行负责的转换、计算等操作。属于数据加工吧,这种拖拽式的加工,在国内不普及,开发人员开发能力强,还不如直接使用SQL脚本进行开发了。两边都靠,两边都不是,甚至会出现到底在国内场景下是不是有必要的讨论。

这里把这种拖拽式的开发形式,一般主要用户跨系统,或者说数据搬运的情况下使用,属于归类于数据集成产品。国外归类也是把他归属到ETL产品中。

这里多说一句:如果在你的产品设计里面,既有拖拽式的数据集成又有向导式的数据集成,在叫产品名称的时候,又不想加特别长的前缀,可以把拖拽式的数据集成叫数据集成,向导式的数据集成叫数据同步。这里就用了数据集成和数据同步在解释上的细微的区别,一个专注于数据的整合和数据处理,一个更注重数据的传输和一致性。这也就是开始说的依据具体的上下文场景、团队内的称呼习惯等灵活决定。

在转做产品经理之前,用过很长时间的拖拽类数据集成产品,就是Informatica powercenter。这款产品常年占据Genter数据集成产品象限的领导者地位。不过话说来也挺怪的在国内却缺少一款同类型的产品。也就是说在国内很少见以转换算子特别丰富的拖拽形式进行数据集成的产品。想了想,可能时国内开发人员普遍的代码能力较强(但是也不对,难道国外的开发人员代码能力就弱了?),这种拖拽的虽然貌似将门槛降低了,但是却没有直接写SQL的效率、维护上方便,所以也就没有这方面的需求,类似的产品也就没有生长出来(听说拖拽式的AI平台也面临同样的处境。真正会AI的人觉得拖拽式开发麻烦,不会AI的人对于各个算子的参数又不能很好理解,不知道是不是真的?)。

有需求才会有产品,既然国内很少用这个产品,我为什么设计过?

这是在一家公司做乙方的时候,一家公司曾经使用过IBM DataStage,所以当他们想上云时,也需要同样的类似功能,基于此设计、实现一套拖拽式的数据集成工具。

整体的设计还是不会摆脱数据集成的三部分—ETL,对应的组件就是:源端组件、转换组件、目标端组件。各个组件里面的展示细节,也在不断打磨中,这个过程更像产品是生长出来的感觉。不需要在一开始就要求是最好,让产品发生。

一、源端组件

源端插件是整个数据集成中的数据开始进入的地方,所以交互上第一步就是先选择一个数据源类型,根据类型变化具体类型下面的数据源的选择。选完数据源之后,选择一个具体的表,就完成了源端设置了。

二、目标端组件

目标端插件和源端设计一样,也需要先选择一个数据源类型,再根据类型确定具体的数据源可以进行哪些不同设置,目标端是整个数据集成的数据终点,从源端导入的数据,最终都将到达目标端。

只有一个源端,连接上一个目标端,其实就可以完成一个数据集成任务的开发了。只是中间没有任务的数据转换,仅仅是数据的同步。(这时候就细微的发现数据同步和数据集成两个名词之间的一点区别了)

目标端组件和源端组件在交互上最大的不同点是,目标端组件在数据写入的过程中有一个字段映射的问题。Powercenter是一个C/S架构产品(Informatica Powercenter 的使用是基于2013年的版本,当时是B/S 架构,后续的产品升级及上云都没有接触过,上述仅做参考),可以设计很复杂的交互,直接让字段和字段建立映射。

但是在B/S架构中,如果也使用这种交互,当打开的组件过多时,整个浏览器会变得特别的卡。所以,需要针对B/S对这种有字段映射的拖拽式开发,需要有一种不同的形式来完成字段映射。这部分将在后面的组件间的字段映射部分做详细说明。

三、转换组件

转换组件,是数据集成的能力体现,转换组件强大,则拖拽式的数据集成能力就强大。转换式组件的 设计思路基本上就和SQL中的一些关键字的抽象,同时参考powercenter的现有的一些组件,在初期的时候,设计了以下的转换组件:

1. 表达式组件-Map

在表达式组件内部,对行级别的处理,可以新增行,将原有行数据进行拆解、进行规范化、新增一行默认值等等。

2. 过滤组件-Filter

过滤组件其实并不是必须的,大可以在源端组件中直接完成过滤即可。这样进入整个数据集成的数据就会少很多。

3. JOIN组件

实现的功能和SQL的join逻辑是一样的,将两张表连接在一起。也会分内连接、外连接等的区别。在界面上输入是两个,输出是一个。也仅仅支持两个输入,多余三个join的话,就将上两个的结果,继续join第三张表。

4. Union组件

实现两张表的union,实现的功能和SQL中的Union也是一样的。

5. 分组聚合组件-Aggregator

对输入表进行分组聚合的计算。

四、组件间的字段映射

两个组件如何实现数据传输那,其实就是拉线,拉一条线,表示数据从上游传递到了下游。我们所有数据传递都是字段级别的,所以这个拉线是表级别的还是字段级别的。

在设计之初的时候想打开两个插件,然后将两个插件内部的每个字段进行一个行级别的对应映射,但是这样做的话一方面是交互特别复杂,而在浏览器中不能做到这么灵活的交互,一方面如果字段特别多,都开发的话,占用浏览器内存过多,交互过程会比较卡(CS架构的Informactica powercenter就是这种打开后字段级别的交互,但是也很好奇迁移到云上之后,他们是怎么交互的)。于是就选择了另一个中交互,也就是只是表级别,在表之间连线,然后传递上游所有字段到下游。在下游中进行字段映射。映射过程中字段对应关系怎么体现那,最简单也是最不友好的形式就是默认从上到下的一一映射。

友好一些的就是将上游的将字段传递到下游插件,在下游插件内部展示上游字段,然后在下游插件内部自己做字段对照。 如果上游的字段进行字段变更了,那么下游什么时候获取到这写变更的字段,这个是增加了一个局部保存还是全局保存的能力来做的。

源端、目标端、中间转换插件(算子),通过插件间的映射链接连接到一起。就是一个完成的拖拽式的数据集成任务了。

五、是离线还是实时任务

在上面介绍的所有算子,其实都是从离线的视角来介绍的。但是对于实时的视角其实一样适用。只是中间的转换算子不一样。

这个如果是离线的那个就可以当做一个普通的离线任务,放在离线的DAG图中,配置调度,如果是一个实时的,就可以直接启动运行了。

六、总结

做产品的过程,就是实现自己想法的过程,在实现了拖拽式数据集成之后,算是实现了一个做产品的个人小目标。看着一件事物在自己的规划中实现,还是很欣喜的,这可能是创造的乐趣,也是做产品的乐趣。

本文由 @数据小吏 原创发布于人人都是产品经理,未经许可,禁止转载

题图来自 Unsplash,基于 CC0 协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。

","gnid":"9dfc4649c2e295f95","img_data":[{"flag":2,"img":[{"desc":"","height":"420","title":"","url":"https://p0.ssl.img.360kuai.com/t01763c5bf762514e27.jpg","width":"900"}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"pika","pub_time":1705886400000,"pure":"","rawurl":"http://zm.news.so.com/9db2a050103ecc0484cd7d68f9c29c2a","redirect":0,"rptid":"2d2f6437a122afbc","rss_ext":[],"s":"t","src":"人人都是产品经理","tag":[],"title":"数据平台产品-数据集成篇-拖拽式数据集成

游丁聂3251什么是数据同步方式和数据交换方式 -
广罗巧17681645480 ______ 数据同步是指在允许的时间内,保持两文件(文件夹)数据的一致,与PC与PDA的数据同步.数据交换是指两个设备之间进行你来我往的数据交换,交换的数据并不覆盖原来的数据,如机床与PC的数据交换,而同步则覆盖原来的数据.

游丁聂3251同步和异步的含义 -
广罗巧17681645480 ______ 你指的是同步电机和异步电机吧?所谓的同步电机,就是电枢绕组的磁场旋转速度与转子旋转方向一致,转速相同.这样的电机一般为如下结构:转子上有绕组,是集中式的励磁绕组;转子上无绕组,而采用永磁体结构;转子上无绕组,无永磁...

游丁聂3251同步异步传输的优缺点 -
广罗巧17681645480 ______ 同步与异步传输的区别 1,异步传输是面向字符的传输,而同步传输是面向比特的传输. 2,异步传输的单位是字符而同步传输的单位是帧. 3,异步传输通过字符起止的开始和停止码抓住再同步的机会,而同步传输则是以数据中抽取同步信息...

游丁聂3251计算机网络问题,概念有点混.不要复制.谢谢啊 -
广罗巧17681645480 ______ 题主的第一个问题应该是异步传输和同步传输的区分吧?那么我先回答第一个!先来理解一下他们存在的必要性吧.在网络通信过程中,通信双方要交换数据,需要高度的协同工作.为了正确的解释信号,接收方必须确切地知道信号应当何时接...

游丁聂3251蓝牙浏览器 - 蓝牙传输WWW浏览器PC数据同步是什么意?蓝牙传输WWW浏览器P
广罗巧17681645480 ______ 买手机的时候有数据线就应该送了光盘的,安装光盘里的软件,接上数据线,大概就可以了,每个品牌的细节可能不一样,但是大体上都是这样的 ,是PC同步~! 红外通...

游丁聂3251DDN、SDH和ISDN三者之间有什么区别? -
广罗巧17681645480 ______ DDN你可以理解为在SDH外面再加了一层,DDN传送小颗粒,SDH颗粒则比较大.它们的交换技术都是时隙交换(时隙复用分配的通道,和你直接连一根线通信,没有任何区别).(书上都讲DDN是非交换技术,我擦!非交换,什么东东?) ...

游丁聂3251同步信号的基本概念 -
广罗巧17681645480 ______ 同步信号就是给需要同步处理信息的机器设备提供相同时间参考的信号.如所有电视转播,手机通讯等,同步信号可以是一个开关信号,也可以是一个连续脉冲.一般地,我们生活中的GPS定位和手机通讯都是以GPS信号中提取的标准10MHZ...

游丁聂3251什么是EDO和SDRAM
广罗巧17681645480 ______ edo是早期的72线内内存.和386、486等cpu配合使用.现在已经看不到了. sdram是以前的168线内存,和以前的赛扬cpu1、2、3代,和amd的早期cPU配合使用.

游丁聂3251通信网基础 名词解释 1、自愈: 2、SDH: 3、ADSL: 4、VPI: 5、TM: -
广罗巧17681645480 ______ SDH:Synchronous Digital Hierarchy -- 同步数字系列 是一套可进行同步信息传输、复用、分插和交叉连接的标准化数字信号结构等级,在传输媒质上(如光纤、微波等)进行同步信号的传送.它是一种新的数字传输体制.将称为电信传输体制的...

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024