zoukankan      html  css  js  c++  java
  • FineBI学习系列之FineBI的ETL处理(图文详解)

    不多说,直接上干货!

      这是来自FineBI官网提供的帮助文档

    http://help.finebi.com/
    http://help.finebi.com/doc-view-48.html

    目录:

    1、描述

      ETL转换是指对分布的、异构数据源中的数据,比如说关系数据等底层数据进行一定的转换,然后将转换后的数据表保存在中间层中,成为数据分析的基础。
     
      FineBI中的ETL转换包括对数据表的ETL转化和对字段的ETL转换。数据表的ETL转化特指将关系数据表中的行转换为列,简单来说就是将转化前数据表中某个字段的所有值取出来,成为新表的列名;字段的ETL转换是指对业务包中某个数据表的字段进行操作,具体可操作类型包括:新增公式列、join、union、行列转换、使用部分字段、过滤、分组统计、构建自循环列、新增分组。
      FineBI的ETL转化既可以转化业务包内的数据表,也可以转化业务包外的数据表,最后将转化的中间表保存在业务包内。
     
     
      注:所有的ETL操作之后,需要更新Fineindex之后才可以查看到对应的更改结果数据集。对于Fineindex更新操作或者更新方式不了解的可以查看Fineindex更新设置

    2、外部数据表

      比如说我们想要基于业务包外部的数据表添加一个ETL转换表至销售DEMO业务包中,那么该如何选择外部数据表呢?
      用管理员账号登录FineBI系统:http://localhost:37799/WebReport/ReportServer?op=fs,点击数据配置>业务包管理,选中销售DEMO业务包,进入销售DEMO业务包配置界面,如下图:

       

      在页面上方点击“+添加表”,选择ETL表按钮即可进入ETL处理界面,如下图:

     

      点击右上角的添加表按钮即可添加非业务包内的数据表作为转化表的基本表,如下图:

     

      随便选择一张数据表,比如说签约事实表,选中它,点击下一步,页面跳转到数据表设置界面,此时显示的是选中的该表的设置界面,页面左半边为表数据设置区域,右半边是当前表进行etl处理的过程,如进行了N步etl操作都会记录,截图中圈出的就是进行etl操作按钮,点击,即可选择ETL转化的类型,如下图:

     

     

     

     

     

     

     

    3、业务包内数据表

      如果我们想要直接基于业务包内的数据表进行ETL转化,可直接点击业务包中数据表,进入数据表配置界面,在右侧的ETL处理界面对该数据表进行处理,如下图,选中销售DEMO业务包中的合同事实表数据表,即可在右侧的ETL处理界面进行转化,选择ETL处理的类型:

     

     

      注:不论是业务包外的数据表进行处理还是业务包内的数据表进行处理,选择数据表之后,页面都会回到上图的表数据设置界面,在该界面的右侧进行ETL处理。

     

     
    3.1 ETL流及业务包选择
      上面添加非业务包的数据表时,有看到ETL流的操作,下面对它详细介绍。ETL流功能并非一定需要选择业务包的数据表之后才能使用,直接在业务包界面中点击+ETL功能,即之前讲解的业务包数据表添加时,也可以直接选择ETL流进行操作。
     
      ETL流主要是:为了能让复杂的数据表在经过多步ETL操作之后仍能使用该表本身前面某一个ETL步骤之后的中间结果集(表自身可选中间步骤结果集)。
      如下图所示为经过ETL处理的签约事实表:

     

     

     

      此时,点击右上角的添加表按钮

     

     
     
     
      进入页面后可以点击ETL流,可以看到该数据表从原始步骤开始
     
     
     
      每一个ETL处理步骤得到的数据表结果集都可以选择并进行后续操作,如图所示:

     

       

      选择了某一个或者N个结果集之后,会回到之前的数据表操作界面,同时刚才选择ETL流中的结果集也会出现,如下图所示:

     

      针对上面新添加的另一个结果集,可以进行后续的ETL处理,将两个表join或者union等,在后续的功能模块会进行详细说明。
     
     
     
     
     
     

    4、ETL处理类型

      ETL处理的类型有很多种,如下图所示:
     
      注:ETL转换业务包内部数据表,转换完成之后,原始数据表消失,会变成新增的ETL数据表。请谨慎使用。
      注:ETL处理支持使用所有结果集,包括业务包中和数据库中的数据表。
     
     
    下面我们一一介绍所有ETL转换类型的使用方式。

    join

    union

    行列转换

    使用部分字段

    数据表过滤

    分组统计字段

    构建自循环列

    新增分组列

    sql数据分组处理

      见如下博客

      。。

    欢迎大家,加入我的微信公众号:大数据躺过的坑        人工智能躺过的坑
     
     
     

    同时,大家可以关注我的个人博客

       http://www.cnblogs.com/zlslch/   和     http://www.cnblogs.com/lchzls/      http://www.cnblogs.com/sunnyDream/   

       详情请见:http://www.cnblogs.com/zlslch/p/7473861.html

      人生苦短,我愿分享。本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
      目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件。 只要你一直关注和呆在群里,每天必须有收获

          对应本平台的讨论和答疑QQ群:大数据和人工智能躺过的坑(总群)(161156071) 

     

  • 相关阅读:
    hdoj 1305字典树水题之二
    nyoj 547 水池加水 priority_queue优先级队列初体验
    nyoj167 找奶牛病毒 “按位或”运算 递归
    HDOJ4525 吃鸡腿 腾讯马拉松(五)
    hdoj 4523 切蛋糕 腾讯马拉松 大数加法比较
    如何学好3D游戏引擎编程《转自3D游戏引擎网》
    priority_queue 优先级队列的基本应用和重载问题
    poj1611 传染病 并查集
    srand((unsigned)time(NULL))和rand()
    最近被一个windows mobile照相的问题给难住了
  • 原文地址:https://www.cnblogs.com/zlslch/p/8630058.html
Copyright © 2011-2022 走看看