首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

kettle的转换组件

1、转换是转换里面的第四个分类。转换属于ETL的T,T就是Transform清洗、转换。ETL三个部分中,T花费时间最长,是一般情况下这部分工作量是整个ETL的2/3。...在数据质量规范上使用非常多,比如很多系统对应性别gender字段的定义不同。 ? 4、增加常量就是在本身的数据流里面添加一列数据,该列的数据都是相同的值。 ?...12、排序记录,是按照指定的字段的升序或降序对数据流排序。 ? 13、唯一行(哈希值)就是删除数据流重复的行。注意:唯一行(哈希值)和(排序记录+去除重复记录)效果一样的,但是实现的原理不同!   ...15、列拆分为多行就是把指定分隔符的字段进行拆分为多行。 ? 16、列转行就是如果数据一列有相同的值,按照指定的字段,把多行数据转换为一行数据。去除一些原来的列名,把一列数据变为字段。   ...17、行转列,就是把数据字段的字段名转换为一列,把数据行变为数据列。 ? 18、行扁平化就是把同一组的多行数据合并成为一行。注意:只有数据流的同类数据数据行记录一致的情况才可使用!

2K20

ETL(六):筛选器转换组件的使用

,该目标表才能真正在目标数据库中创建; ④ 可以在目标数据库Oracle中的edw用户中查看该创建的表; 3)创建映射; ① 创建一个新的映射; ② 将源表和目标表都拖拉进右侧灰色区域...; ③ 在源表和目标表中间加一个“筛选器转换”组件; ④ 把给目标表的所有字段,都先传递给这个“筛选器转换”组件,进行过滤; ⑤ 编辑“筛选器转换”组件,过滤得到我们想要的数据...; ⑥ 再把“筛选器转换”组件中的字段,传递给目标表中; ⑦ 点击CTRL+S保存,当出现如下界面,证明映射创建成功; 4)定义任务 ① 创建任务; ② 选择该任务要执行的映射...; ③ 修改源表的连接对象; ④ 修改目标表的连接对象; ⑤ 点击CTRL+S保存,当出现如下界面,证明任务创建成功; 5)创建一个工作流 ① 创建一个工作流...,在M客户端可以查看执行日志,当出现了错误都可以在这里进行原因查找; ⑥ 此时,取edw用户下查看重新生成的edw_emp_deptno_30表,可以看到表中只有deptno=30的记录;

79920
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ETL(四):LOOKUP查找转换组件的使用

    1、在我的ETL(三)这篇文章中,我们使用“汇总转换”组件和“表达式转换”组件,将items中的源数据,按照供应商分组,求出了产品的最大价格、最小价格…如下图所示; 学习本篇文章可以参考我的上一篇文章...:https://blog.csdn.net/weixin_41261833/article/details/103639918 2、本篇文章需求:在上述结果的基础上,使用lookup查找转换组件进行匹配查找...② 添加一个“lookup查找转换组件”; 效果如下: ③ 将“汇总转换”组件中的MANUFACTURER_ID拖拉到“LOOKUP查找转换组件”,效果如下; ④ 下面进行...“LOOKUP查找转换组件”的操作; ⑤ 还有一个需要注意的地方,如下所示; ⑥ 进行映射关系的连接,效果如下; ⑦ 点击CTRL+S保存,当出现如下界面,证明修改的映射创建完成...; 4)创建任务 ① 对于之前创建的任务,不用修改,可以查看里面多了一个lookup组件; ② 点击CTRL+S重新保存一下这个任务; 5)创建工作流 ① 由于之前创建的工作流还在

    55140

    ETL(八):路由器(rounter)转换组件的使用

    1、需求 2、路由器转换组件的功能 3、ETL开发流程 1)定义源表 2)定义三个目标表:edw_emp_deptno_10、edw_emp_deptno_20、edw_emp_deptno_30...; ③ 在源表和目标表之间,添加一个“路由器转换组件”; ④ 把源表中的所有字段,首先传递给“路由器转换组件”; ⑤ 双击“路由器转换组件”,对其进行“组设置”;...⑥ 上述操作完成以后,会出现如下结果; 对上图的解释如下: ⑦ 将“路由器转换组件”中不同的分组,分别传递给不同的目标表; ⑧ 使用CTRL + S保存一下创建的映射;...4)创建一个任务 ① 创建一个任务; ② 选择该创建任务,所要执行的映射; ③ 修改源表的连接对象; ④ 修改目标表的连接对象:三张目标表都要修改; 注意:...尤其是当我们出现错误的时候,日志信息可以帮助我们找到自己的错误究竟在哪里; ⑥ 最后可以去edw用户下,查看3张目标表中的数据,正是我们想要的效果;

    52730

    ETL(十一):增量抽取(更新策略转换组件的使用)

    对上述图的一个说明: ④ 完成上述操作后,就会出现如下界面; ⑤ 将源表中的cust_id字段,移动到“查找转换”组件中; ⑥ 双击“查找转换”组件,进行查找条件的设置;...对第⑤步和第⑥步操作进行一个详细说明: ⑦ 在“查找转换”组件中,我们查找的是“目标表”,因此还要设置目标表的来源; ⑧ 添加“更新策略转换”组件,做增量抽取;...⑨ 将源表中的字段(目标表需要什么字段就移动什么字段)都移动到“更新策略转换”组件中,同时将“查找转换”组件中目标表中的cust_id字段移动到“更新策略转换”组件中; 双击“更新策略转换”组件...,设置【更新策略表达式】; 利用上面两张图说明“更新策略转换”组件的作用: ⑩ 在“更新策略转换”组件和目标表之间,添加一个“表达式转换”组件,因为目标表中有ETL_DATE字段,“...更新策略转换”组件中没有该字段; ⑪ 双击“表达式转换”组件,新增一个ETL_DATE字段; ⑫ 将“表达式转换”组件中的字段,传递给目标表; ⑬ 使用CTRL + S保存一下创建的映射

    73330

    ETL(十):异构关联(联接器转换组件的使用)

    Oracle中的emp表定义目标表; ① 将emp表拖动到右侧的灰色区域; ② 双击该目标表,给目标表重命名; ③ 设置目标表的列字段:将dept中的字段加入到目标表的字段中去;...③ 修改dept表中的deptno字段的数据类型:添加一个“f(x)表达式转换”组件,并将dept表中的所有字段,都传递给“f(x)表达式转换”组件; ④ 双击“f(x)表达式转换”组件,进行数据类型的转换...; ⑤ 添加一个“联接器转换”组件,并将各自的字段都传递到“联接器转换”组件中; ⑥ 双击“联接器转换”组件:设置一个关联条件; ⑦ 将“联接器转换”组件中的字段都传递给目标表...源表的数据库连接对象; Ⅱ 创建mysql中dept源表的数据库连接对象; Ⅲ 创建目标表的数据库连接对象,这个在oracle数据库中; ④ 修改源表的连接对象;...mysql中的dept表和oracle中的emp表关联到一起了;

    67330

    ETL(九):同构关联(源限定符转换组件的使用)

    SQ表,效果如下; ④ 新建一个“源限定符转换SQ”组件,将上述两张表进行关联; ⑤ 完成上述操作后,就会产生如图所示的“源限定符转换SQ”组件; ⑥ 双击“源限定符转换SQ...”组件,设置上面两张表的关联条件; ⑦ 将“源限定符转换SQ”组件中的字段,与目标表之间的字段进行连接; ⑧ 使用CTRL + S保存创建的映射; 4)定义任务 ① 创建一个任务...为了和上面目标表的结果区分开,我们完成如下效果展示; 1、直接从原来创建好的映射那里,开始进行修改; ① 先来查看一下之前创建好的映射,是啥样; ② 删除原来的“源限定符转换SQ”组件;...③ 重新添加一个“源限定符转换SQ”组件; 完成上述操作后,就会出现如下界面; ④ 双击c,就会出现如下界面; ⑤ 在上述基础上,进行如下操作(这一步很关键);...上述操作只是第一步,接着进行下面这一步; ⑥ 然后在将“源限定符转换SQ”组件中的字段,全部传递给目标表中的字段; ⑦ 使用CTRL + S保存修改好的映射; ⑧ 重新刷新一下映射

    29030

    React中传入组件的props改变时更新组件的几种实现方法

    我们使用react的时候常常需要在一个组件传入的props更新时重新渲染该组件,常用的方法是在componentWillReceiveProps中将新的props更新到组件的state中(这种state...React 16.3中还引入了一个新的钩子函数getDerivedStateFromProps来专门实现这一需求。...现在点击‘编辑’和‘新建’按钮,输入框中的文字并不会切换,因为点击‘编辑’和‘更新’时,虽然UserInput的props改变了但是并没有触发state的更新。...而派生状态揉合了两种数据源,当两种数据源产生冲突时,问题随之产生。 问题一 当在修改一个用户的时候,点击‘确定’按钮,输入框里的文字又变成了修改之前的文字。...发生改变时,我们可以通过传入一个不一样的key来重新创建一个component的实例来实现页面的更新。

    5.2K30

    React 路由详解(超详细详解)

    2)注册路由: 3)工作过程:当浏览器的path变为/test时, 当前路由组件就会变为Test组件 react-router-dom...css演示使用的 Bootstrap 的样式, 具体如何使用请移步此文章: 点我跳转 4.路由组件与一般组件 import React, { Component } from 'react';..., 所以我使用 NavLink 来替代它 App.js文件修改的代码 { /* 在React中靠路由链接实现切换组件 */} <NavLink activeClassName="add" className...' 7.解决多级路径刷新页面样式丢失的问题 如果匹配的路径不对, 就会引发css样式的丢失问题 解决: 1.public/index.html中引入样式时 不写./ 写/ (常用) 2.public...' 10.嵌套路由 注意: ​ 1.注册子路由时要写上父路由的path值 ​ 2.路由的匹配是按照注册路由的顺序进行的 我们要在 Home 组件中写入组件, 首先先创建两个组件 News 和

    5.7K20

    抖音前端团队的设计稿转代码 — Semi D2C 实践方案

    我们的 MVP 版本,在不包含组件的场景例如 Landing Page 类业务中,跑通了核心的布局还原逻辑,实现了将 Figma 元素到 React 代码的转换,实现了常规 Frame 等元素的 D2C...我们可以把它理解为阉割版的 CSS flex。由于它的限制,我们无法 CSS flex 布局与其一一对应。针对这些限制,我们需要在生成设计组件时做特殊的处理。...转码时,会自动将区块进行分组,并转换为 flex 布局。蓝色线框是转码时区块的划分位置。 转码后,可以看到把水平方向上的区块划分为了一个大区块,并使用了 flex 布局。...最后我们选择了 C2D2C(见上方“核心实现原理简介”章节) 将设计组件识别为代码组件 在解决了如何将 Figma Component 转换成 React Component 后,我们仍面临一个问题...设计师在画稿时常会修改这些地方的内容,D2C 时需要将这一部分识别为 ReactNode 类型的 prop(在 React 中)。

    93030

    设计稿转代码 — Semi D2C 实践方案

    我们的 MVP 版本,在不包含组件的场景例如 Landing Page 类业务中,跑通了核心的布局还原逻辑,实现了将 Figma 元素到 React 代码的转换,实现了常规 Frame 等元素的 D2C...我们可以把它理解为阉割版的 CSS flex。由于它的限制,我们无法 CSS flex 布局与其一一对应。针对这些限制,我们需要在生成设计组件时做特殊的处理。...转码时,会自动将区块进行分组,并转换为 flex 布局。蓝色线框是转码时区块的划分位置。 转码后,可以看到把水平方向上的区块划分为了一个大区块,并使用了 flex 布局。...最后我们选择了 C2D2C(见上方“核心实现原理简介”章节) 将设计组件识别为代码组件 在解决了如何将 Figma Component 转换成 React Component 后,我们仍面临一个问题...设计师在画稿时常会修改这些地方的内容,D2C 时需要将这一部分识别为 ReactNode 类型的 prop(在 React 中)。

    88130

    8分钟为你详解React、Angular、Vue三大框架

    显著特点 组件化 React代码由称为组件的实体组成。组件可以使用React DOM库渲染到DOM中的一个特定元素。当渲染一个组件时,可以传入被称为 "props "的值。 ?...4、变换效果 当从DOM中插入、更新或删除项目时,Vue提供了多种方法来部署变换效果。这包括了以下工具: 自动应用CSS变换和动画的类 集成第三方CSS动画库,如Animate.css等。...当在变换组件中的元素被插入或移除时,会出现这样的情况: Vue会自动检测到目标元素是否应用了CSS变换或动画。如果有,CSS变换类将在适当的时间添加/删除。...如果变换组件提供了JavaScript hooks,这些hooks将在适当的时间被调用。...此外,当某些浏览器事件发生在按钮或链接上时,使用前端路由器可以有意识地转换浏览器路径。 Vue本身并没有自带前端路由。

    22.2K20

    字节新开源 Arco Design,同时支持 Vue 和 React

    ArcoDesign 拥有系统的设计规范和资源,依据此规范提供了覆盖 React、Vue、Mobile 的原子组件。...React 和 Vue 同步支持 基于 ArcoDesign 设计规范,Arco 同时提供了 React 和 Vue 两套 UI 组件库。...Less 变量负责编译时的色彩计算,基于主色计算亮 / 暗两套梯度色板,CSS 变量负责页面渲染时的最终引用,从而实现了无缝切换亮 / 暗色风格。...开发工具 Webpack 插件:帮助开发者在 Webpack 构建中方便地使用主题、实现按需加载、替换组件内置图标。...未来展望 ArcoDesign 在字节跳动内部还做了更多方面的探索,如可视化建站平台、D2C 设计图转代码工具、C2D 代码转设计图工具、品牌库等。

    3.1K31

    如何用纯css打造类materialUI的按钮点击动画并封装成react组件

    但随着对用户体验的越来越重视,对交互体验要求的提高以及css3等新标准的出现,使得web更加大放异彩, 各种动效的实现都变得非常容易.笔者在研究materialUI框架时对于它的交互及其赞叹.所以为了自己能实现一个类似...上图已经是笔者基于react封装好的一个按钮Button组件,那么我们就先一步步实现它吧. 1....基于以上几点,我们来设计这个react组件. 3....基于react和css3的button组件具体实现 首先,我们的组件是采用react实现, 技术点我会采用比较流行的umi脚手架, classnames库以及css Module, 代码很简单, 我们来看看吧...其实不仅仅是react, 我们使用同样的原理也可以实现一个vue版的按钮组件或者一个angular版的组件,变得只是语法而已.这样的组件设计思路和元素被官方用在很多ui库中, 比如单一职责原理, 组件的开闭原则

    1.9K30

    前端高级工程师(大前端)

    在大前端开发中,前端开发人员需要掌握HTML、CSS、JavaScript等基础知识,同时也需要了解新兴的前端技术和框架,如React、Vue、Angular等,以及移动端开发技术,如React Native...同理在写样式的时候,如果我们需要某种特殊的样式,会在很多地方应用,那么我们也可以采用一定的方式进行CSS的模块化。...具体说来,JS模块化方案很多有AMD/CommonJS/UMD/ES6 Module等,CSS模块化开发大多是在less、sass、stylus等预处理器的import/mixin特性支持下实现的。...组件化将页面视为一个容器,页面上各个独立部分例如:头部、导航、焦点图、侧边栏、底部等视为独立组件,不同的页面根据内容的需要,去盛放相关组件即可组成完整的页面。...组件具有独立性,因此组件与组件之间可以自由组合;当不需要某个组件,或者想要替换组件时,可以整个目录删除/替换。

    24710

    如何在 React 中点击显示或隐藏另一个组件?

    使用 React 状态管理控制组件可见性React 中的状态是指组件私有的数据,它决定了组件在呈现时的外观和行为。当状态更改时,组件会重新呈现,以反映这些变化。...React 组件有两种类型的状态:本地状态和全局状态。本地状态(也称为组件状态)是组件内部的状态,只能在组件内部进行修改。...使用事件处理机制响应用户交互React 组件可以用 onClick 事件处理函数来响应用户的单击事件。当用户单击按钮时,onClick 事件处理函数被触发,并执行一些逻辑代码。...在上一节中,我们已经编写了一个简单的点击按钮来切换组件可见性的例子。接下来,我们将看看如何使用事件处理函数实现更高级的功能。显示/隐藏菜单我们可以使用事件处理函数来显示或隐藏菜单。...当用户单击打开模态框的按钮时,模态框应该出现;当用户单击关闭按钮或模态框之外时,模态框应该消失。下面是一个示例,展示如何使用 React 和事件处理函数来实现模态对话框的显示和隐藏。

    5.1K10

    Taro

    微信小程序原生方式开发起来太费劲,遂想用React开发微信小程序 延伸 在React业务代码转微信小程序代码这个最初的需求实现之后,发现依靠同样的转换思路可以适配多端,即从1对1延伸到1对n: ?...、属性名/值及默认值,甚至CSS特性支持程度都存在较大差异 编译转换 要把一份代码A转换成另一份代码B,需要做3件事情: 解析代码A生成抽象描述(AST) 根据一些映射规则操作AST,生成新的AST 根据新的.../组件 @tarojs/taro-components-rn:支持ReactNative环境的React组件库(之所以ReactNative组件库独立出来,可能是因为差异较大,难以通过编译手段实现转换)...,运行时的环境区分仅备不时之需 四.结构 从设计上看,Taro方案分为3层: 业务层(类React代码) --------------------- 转换层(JSX转微信小程序) -----------...只能传递不能操作 … 对于这些转换限制,弥补性方案是Lint检查报错,并提供替代方案 除JSX外,还有2点比较大的限制: CSS:受限于ReactNative的CSS支持程度(只能使用flex布局) 标签

    1.7K50
    领券