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将不必要的数据过滤掉,这样能提高性能。

  • 相关阅读:
    Nginx反向代理和jetty服务器配置
    如何使用canvas绘图
    毕业后,你折腾了多久做了多少努力才找到正确的方向或者道路?
    如何提高用户逃离成本
    首次创业者必须知道哪些基本常识?
    拦截器、过滤器、监听器各有什么作用
    第一人称入行分享贴:大学混了四年,如何顺利入行互联网
    线下学习
    如何实现数组深拷贝和浅拷贝?
    从零学前端第二讲:CSS行内块级元素布局与定位
  • 原文地址:https://www.cnblogs.com/evencao/p/informatica.html
Copyright © 2011-2022 走看看