zoukankan      html  css  js  c++  java
  • 数据仓库基础(十)组件1

    Informatica主要的组件:

    Source Qualifier 从数据源读取数据

    Expression 行级转换,计算式

    Filter 数据过滤

    Sorter 数据排序

    Aggregator 聚合

    Joiner 异构数据关系连接

    Lookup 查询连接

    Update Strategy 对目标编辑insert, update,delete ,reject

    Router 条件分发

    Sequence Generator 序列号生成器

    Normalize 记录规范化

    Rank 对记录进行TopX

    Union 数据合并

    Transaction Control 对装载数据按条件进行事务控制

    Stored Procedure 存储过程组件

    Http www组件

    Java  java组件

    之后为常用的组件进行说明

    1.lookup组件:是一个passive组件

       在对源抽取过程中,有时候数据源的信息不完善,相关的详细信息不明确,去别的表或者数据源中去关联。

       这样输入一条记录,输出一条记录,否则为空。

       lookup能访问的源:表文件,同义词,视图。

       lookup cached:如果源的数据比lookup表的数据量多时,使用cached.这样的每次都要去数据库查询,性能不好。

    例:

       

       主要从invoice表传入字段,经过一个filter 过滤 ,条件为Not(ISNULL(DATE_CLOSED))and CANCELED=0,然后就是到lookup组件

    通过cust_no和customer表中的Cust_id相等去从customer查找相应的条件,输出到目标数据表。

       lookup 组件设置如图:

    这样一个mapping就完成了。启用一个简单的workflow,这样执行结果如图:

    2.Update Strategy:知道这条数据要做什么样的操作,对流过组件的每一条记录赋予一个恶操作标志

                                    根据操作标志对目标表关系型数据库表生成SQL操作

                                    操作标志有DD_INSERT,DD_DELETE,DD_UPDATE,DD_REJECT.

        例:

    在这个例子用lookup的作用是探查目标表里面是否存在这条记录,起到一个预判断的作用。

    然后再update组件中的条件如图:

    这个条件就是在lookup组件中返回的结果进行判断,如果为空即不存在这条记录就插入,如果存在就更新

    DISCONTINUED_FLAG是源数据的字段,是判断这个商品是否被废弃掉。

    可以创建一个wordflow运行它。验证结果。

    3.Source Qualifier与filter :对流入组件中等的数据进行过滤。例子在例子1中已经做过。只能有一个条件。

    先可以在Source Qualifier将不必要的数据过滤掉,这样能提高性能。

  • 相关阅读:
    FRAM在智能电子式电表中的应用
    element UI实现动态生成多级表头
    小微信小程序开发相关网站
    响应式开发bootstrap
    媒体查询
    前端导出功能实现的两种方式
    watch监听对象遇坑
    vue中使用v-for时为什么要用到key?为什么不能用index作为key?
    vue中我改变了data中的一个值,但现在视图上没有实时更新,请问我怎么拿到更新后的值?
    python 链接数据库的模块
  • 原文地址:https://www.cnblogs.com/evencao/p/informatica.html
Copyright © 2011-2022 走看看