精华内容
下载资源
问答
  • 详情请看:DataX 数据源指南 四、DataX3.0 核心架构 DataX 3.0 开源版本支持单机多线程模式完成同步作业运行,本小节按一个 DataX 作业生命周期的时序图,从整体架构设计非常简要说明 DataX 各个模块相互关系。...
  • Kettle 的简单介绍

    2020-02-25 00:55:48
    作为一款主流ELT工具,比同类数据抽取工具DataX、Sqoop更加强大,可以通过图形化界面直接对接各个数据源,进行任何数据格式的数据转换及处理。 一、核心:作业及转换 转换(步骤流):数据输入——处理逻辑——...

    前文:

                 作为一款主流ELT工具,比同类数据抽取工具DataX、Sqoop更加强大,可以通过图形化界面直接对接各个数据源,进行任何数据格式的数据转换及处理。

    一、核心:作业及转换

    转换(步骤流):数据输入——处理逻辑——输出

    专业(工作流):Start——转换1——转换2——成功/失败——邮件

    二、简单转换流程

    1、配置连接

    2、添加组件并进行启动执行

    3、查看作业相关参数性能

    二、作业操作

    说明:Start——多个转换模块——写日志、发邮件等等。。

    通过Start可以设置定时执行

    三、大数据平台相关配置

    1、不同平台环境

    选择如:hdp30文件夹存放

     

    2、配置文件  pdi-ce-9.0.0.0-423\data-integration\plugins\pentaho-big-data-plugin\plugin.properties

    四、调优

    1、调整JVM大小进行性能优化,修改Kettle根目录下的Spoon脚本。

     

    参数参考:

    -Xmx2048m:设置JVM最大可用内存为2048M。

    -Xms1024m:设置JVM促使内存为1024m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。

    -Xmn2g:设置年轻代大小为2G。整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小。持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。

    -Xss128k:设置每个线程的堆栈大小。JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K。更具应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。

    2、 调整提交(Commit)记录数大小进行优化,Kettle默认Commit数量为:1000,可以根据数据量大小来设置Commitsize:1000~50000

    3、尽量使用数据库连接池;

    4、尽量提高批处理的commit size;

    5、尽量使用缓存,缓存尽量大一些(主要是文本文件和数据流);

    6、Kettle是Java做的,尽量用大一点的内存参数启动Kettle;

    7、可以使用sql来做的一些操作尽量用sql;

    Group , merge , stream lookup,split field这些操作都是比较慢的,想办法避免他们.,能用sql就用sql;

    8、插入大量数据的时候尽量把索引删掉;

    9、尽量避免使用update , delete操作,尤其是update,如果可以把update变成先delete,  后insert;

    10、能使用truncate table的时候,就不要使用deleteall row这种类似sql合理的分区,如果删除操作是基于某一个分区的,就不要使用delete row这种方式(不管是deletesql还是delete步骤),直接把分区drop掉,再重新创建;

    11、尽量缩小输入的数据集的大小(增量更新也是为了这个目的);

    12、尽量使用数据库原生的方式装载文本文件(Oracle的sqlloader, mysql的bulk loader步骤)。

     

    展开全文
  • 1、数据来自多个不同的系统,存在需要跨数据源分析,需要对接各种不同数据源等问题。 2、需要分析的数据体量越来越大,并且要快速获得分析结果的问题。 3、部分数据还需要二次加工处理的问题。 供数支撑方在业务...

    一、应用背景

    随着各个业务系统的不断增加,以及各业务系统数据量不断激增,IT数据支撑方的工作变得越来越复杂。主要问题如下:

    1、数据来自多个不同的系统,存在需要跨数据源分析,需要对接各种不同数据源等问题。

    2、需要分析的数据体量越来越大,并且要快速获得分析结果的问题。

    3、部分数据还需要二次加工处理的问题。

    供数支撑方在业务系统的前端看起来基本没有任何操作,但背后的逻辑十分复杂,实现难度也很大。就像看得到的是冰山一角,看不到的是海水下绝大部分的支撑。

    FineBI为了适应大数据时代,完善大数据解决方案,解决日益激增的大数据量分析诉求,为数据分析展示的最后一公里做好支撑。

    自助式商业智能分析工具FineBI V5.0版本的Spider引擎应运而生。

    二、Spider引擎介绍

    为什么叫Spider引擎呢?

    听起来很像爬虫软件,和数据分析又有什么关系呢?

    一则是字面翻译过来的意思——蜘蛛,从蜘蛛就很容易联想到结网。从结网的角度的看,有两个含义,一是将之前已有的引擎功能全部联结在一起,因为5.0引擎实现了实时数据与抽取数据的对接与灵活切换;二是5.0数据引擎比较重要的分布式模式,这种模式是由各个组件组合起来的架构,结网就是将这些组件联结起来的意思。

    二则是谐音法拉利的一款敞篷跑车。跑车嘛,速度快。这款跑车做了加长与加宽设计,使其更稳定,保持性能且更安全。恰好与我们的数据引擎理念不谋而合。

    因此,就取名Spider引擎。

    再来说说它的发展史。

    FineBI的数据引擎从起初做数据抽取的cube/FineIndex引擎,发展到后来开发了直连引擎/FineDirect引擎。再到2016年开发,17年到18年迅速扩展到60多家客户使用的分布式引擎。引擎功能与支撑数据量都在伴随着时代的发展不断进步。然而引擎类别繁多,用户理解与使用都是问题。

    因此,到v5.0版本,将引擎做了大一统,Spider引擎将之前所有引擎功能全部囊括其中,抽取数据与实时数据可互相切换,本地模式可根据数据量情况扩展为分布式模式,使用与理解上都更加简单了。

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    三、灵活的大数据解决方案

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    很多企业本身就有高性能数据查询引擎,或业务的实时性要求特别高,那就可以使用Spider引擎直接对接数据库。

    然而,很多时候,BI工具需要一个为灵活自助分析提供的敏捷型数据引擎。也就是需要将数据抽取到中间层中存储下来,以便计算不受数据库影响,并且快速得到分析结果。抽取数据的情况下,FineBI默认的应用与数据引擎可以是一台服务器,数据量在亿级以内的情况下,展示速度十分优秀。由于没有网络传输的限制,本地计算效果会优于分布式扩展后的分布式计算效果。在数据量激增之后,就需要扩展之后的Spider分布式引擎,在功能实现上,依旧是将数据抽取到敏捷型数据集市中做分布式存储,从而对接前端的分析查询,实现快速分析展示。

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    以上的数据抽取或实时从数据库获取的方式可灵活切换,既数据即可来自数据库,也可以来自中间存储引擎,且这两种方式又可以任意切换,前端分析展示不受影响,从而在BI分析的各种应用场景中更加灵活。

    在实际使用中,抽取数据与实时对接通常是并存的,如下是一些常见应用架构:

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    因此在整体实现上可以如下所示:

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    四、大数据展示实施分解

    FineBI的架构设计很容易将不同模块内容,分解界定到不同部分。(避免引起部门内矛盾)

    将干系人团队分解出来三种类型,分别是IT信息/科技部门、中间技术人员/数据分析部门、业务部门,不同的部门对应不同事项内容与项目产出。

    • 大量级的数据处理与准备等,必然需要很强的技术实力。因此数据处理部分的工作全部交由IT部门来处理。IT信息科技部负责对接到数据分析部,为其提供需要的基本数据。
    • 数据分析部联结业务部门与IT信息科技部门,负责将业务常规所需(根据历史经验分析)的表添加到业务包中,覆盖大部分的业务常用分析,同时将其他业务相关的基础表也添加到业务包中以供使用。也会制作复杂分析模板挂出以供业务部门使用,同时常用复杂逻辑计算分析也做成demo形式提供给业务部门作为参考,以便复用。
    • 业务部门的人员根据提供的业务包以及示例和demo,自行做一些常用分析。

    如下,是典型实施内容的分解:

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    五、典型应用案例

    1.汇总数据灵活分析

    大型企业以客户维度的汇总数据,总数都在百万千万,甚至上亿级别。而细粒度维度灵活切换与组合的统计分析,则无法估量每一次分析的数据量。大量级数据即时维度组合与计算,就需要有强大计算能力的计算引擎。结合FineBI展示优势与分析能力, 引擎的计算性能优势得到发挥。

    从而便于让企业以客户为中心,实现商业价值最大化,通过数据来回答最本质的商业问题。

    • 市场营销上能准确定位到目标客户,把控风险。
    • 客户经营上发现与探索客户需要什么,痛点是什么。
    • 风险管控上,能有效控制自己的风险。
    • 产品创新上,始终能够不断给到用户最新最优体验。

    主要使用场景如下:

    (1)用户画像

    示例1:

    在某个新项目的新系统推广到市场的情况下,会采取由内部推广到外部的方式。如下图所示,是项目推广前中阶段需要重点关注的信息。通过时间线,观察用户属性、性别、年龄、地域分布,从而调整营销策略。

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    示例2:

    某保险行业示例,通过企业内的核心业务数据、用户数据、日志数据,结合外部数据、网络爬虫数据,建立企业的大数据标签库、用户标签库等等。从而在整体上观察用户各维度情况,再到细粒度层级,查看细节信息。

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    (2)风险控制

    根据理赔风险预测、分产品费用结构、费用构成等指标实时管控风险,做到防患于未然。 根据内外部数据。

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    (3)营收分析

    不同时间周期范围内,不同分部、支部以及更细粒度的营收状况,以及营业状况的分析查询。数据容纳更广的时间周期,除了近期之内的,也包括几年之前的历史数据。历史的回溯分析,当前的状况把控与未来的展望,均能有效支撑。

    帆软FineBI大数据Spider引擎——为海量数据分析而生

     

    2.更细维度的分析查询

    (1)保险行业的明细分析应用

    在保险行业,有大数据量明细清单查询与分析场景,这种场景在稍大型保险企业,明细数据量动辄上亿。

    保险行业常用传统展示分析工具如BO、SSAS、cognos、Microstrategy等,常规汇总分析数据与粗粒度维度汇总计算较为方便,固定的指标查看等都没有问题。但是到明细数据的展示分析与汇总时候,就存在各种性能瓶颈以及传统BI工具的约束,比如维度过多导致cube难以支撑; 无法在线查看实际明细数据,而下载导出的数据有数据量的限制;任意维度调整、查询条件改变都需要IT人员的修改;图表可视化效果一般等。

    因此使用FineBI及其Spider引擎来做补足。从而实现:

    • 更多明细数据全维度展示分析:承保、批改、理赔、再报、收付、客服六大环节明细数据实现全维度分析。
    • 数据校验、核对:检验统计指标的计算正确性,支付金额的确认与核对,以及结算对账等。
    • 问题深入挖掘:从粗粒度统计报表维度结论追朔到明细清单层面,发现问题并处理。
    • 任务完成情况跟踪:未决清单情况的跟踪等。

    (2)不断调整岗位的绩效考核应用

    企业总会调整、增加一些岗位,对这些岗位的政策总是在不断调整。调整过程中对明细数据经过观察与统计计算,比如考勤机制、奖励政策、核心工作处理时长等都需要对每个明细情况做细节上的掌控,从而发现核心需要关注的指标。从而调整那个岗位的KPI制定。(这也是内部精益创业原则说明的,快速试错与调整,以及确定核心指标)

    (3)质检品控需要

    • 各种需要基层业务人员录入数据的场景,比如保险员/用户系统录入一份份保单、银行业务员录入每一笔流水交易等,需要对录入清单质量、服务质量等做检查。需要细化到保单级数据中排查,从而将问题单下发到机构进行修改。
    • 制造业/生产业生产产品的场景下,某一批次的产品特别不符合标准要求,就需要对本批次汇总核心指标情况进行分析排查,从而细化到某个场次/流水线。

    最后,喜欢我们文章的话赶紧来官网体验下吧 !

    下载地址://www.finebi.com/?utm_source=media&utm_medium=csdn

    展开全文
  • 数据交换

    2020-10-15 15:08:53
    数据整合是平台建设的基础,涉及到多种数据的整合手段,其中,数据交换、消息推送、通过服务总线实现应用对接等都需要定义一套通用的数据交换标准,基于此标准实现各个系统间数据的共享和交换,并支持未来更多系统与平台...

    一. 数据交换的基本概念

    数据交换是将符合一个源模式的数据转换为符合目标模式数据的问题,该目标模式尽可能准确并且以与各种依赖性一致的方式反映源数据。

    二.数据交换的实现模式

    数据整合是平台建设的基础,涉及到多种数据的整合手段,其中,数据交换、消息推送、通过服务总线实现应用对接等都需要定义一套通用的数据交换标准,基于此标准实现各个系统间数据的共享和交换,并支持未来更多系统与平台的对接.平台数据交换标准的设计,充分借鉴国内外现有的各类共享交换系统的建设经验,采用基于可扩展标记语言(XML)的信息交换框架.XML 定义了一组规则,用于以人类可读和机器可读的格式编码文档,它由国际万维网联盟计.XML 文档格式良好且结构化,因此它们更易于解析和编写.由于它具有简化、跨平台、可扩展性和自我描述等特征,XML 成为通过 Internet 进行数据传输的通用语言[59].XML 关心的重点是数据,而其他的因素如数据结构和数据类型、表现以及操作,都是有其他的以 XML 为核心的相关技术完成.基于基本的 XML 语言,通过定义一套数据元模型(语义字典)和一套基于 XML Schema 的描述规范来实现对信息的共同理解,基于此套交换标准完成数据的交换.
    数据交换概括地说有以下两种实现模式.

    2.1 协议式交换

    协议式数据交换是源系统和目标系统之间定义一个数据交换交互协议,遵循制定的协议,通过将一个系统数据库的数据移植到另一个系统的数据库来完成数据交换.
    Tyagi 等人于 2017 年提出一种通用的交互式通信协议,称为递归数据交换协议(RDE),它可以获得各方观察到的任何数据序列,并提供单独的性能序列保证[60];并于2018 年提出了一种新的数据交换交互协议,它可以逐步增加通信大小,直到任务完成,还导出了基于将数据交换问题与秘密密钥协议问题相关联的最小位数的下限[61].这种交换模式的优点在于:它无需对底层数据库的应用
    逻辑和数据结构做任何改变,可以直接用于开发在数据访问层.但是编程人员基于底层数据库进行直接修改也是这种模式的缺点之一,编程人员首先要对双方数据库的底层设计有清楚的了解,需要承担较高的安全风险;其 次,编程人员在修改原有的数据访问层时需要保证数据的完整性和一致性.此外,这种模式的另一个缺点在于系统的可重用性很低,每次对于不同应用的数据交换都需要做不同的设计
    下面我们举一个通俗易懂的例子:安徽人和新疆人有生意上的往来,但由于彼此说的都是家乡话,交易很难进行,于是双方就约定每次见面都使用安徽话或者新疆话.假如他们规定一个协议,每次见面都以安徽话来交谈,那么新疆人每句话的语法结构和发音标准都按照安徽话来修改,同时要保证每句话的完整性和准确性,保证双方顺利的交谈.然而在下次的生意中,新疆人可能面对的是一位广东人,那么交流依旧出现了困难,此时新疆人又需要把自己的新疆话转换为广东话.

    2.2 标准化交换

    标准化数据交换是指在网络环境中建立一个可供多方共享的方法作为统一的标准,使得跨平台应用程序之间实现数据共享和交换.下面我们依旧以安徽人与新疆人作交易为例来解释这种交换模式.为了解决双方无法沟通的困境,双方约定每次见面交易都使用普通话这种标准来交流,当下次即使遇到全国各地的人,也可以使用普通话来交流,而且大家只需要熟悉普通话的语法规则即可,不需要精通各地的语言.这种交换模式的优点显而易见,系统对于不同的应用只需要提供一个多方共享的标准即可,具有很高的可重用性.
    实现基于 XML的数据交换平台确实需要一系列的努力和资源来创建/管理交换,但它不是对现有系统的大规模改变而是有限的改变,所以使用基于 XML 数据交换的关键优势是信息共享的组织不需要更改其现有的数据存储或标准,使得异构系统之间可以实现最大限度的协同,并能在现有数据交换应用的基础上扩展更多新的应用,从而对不同企业间发展应用集成起到促进作用.

    展开全文
  • 作用:主要是对接数据源,将数据源的数据在ODS层构建表,讲数据源中完整的数据拷贝过来,一般来说,业务数据源中有几个表数据,在ODS层就会有几个表与之对应。 DW层:数据仓库层 作用:数据都来源于ODS层,将ODS层...

    数仓的分层:
    宽泛的概念一共分三层:ODS DW APP(DA)

    ODS层:源数据层
    作用:主要是对接数据源,将数据源的数据在ODS层构建表,讲数据源中完整的数据拷贝过来,一般来说,业务数据源中有几个表数据,在ODS层就会有几个表与之对应。

    DW层:数据仓库层
    作用:数据都来源于ODS层,将ODS层数据根据业务主体要求,将数据抽取到DW层,主要进行数据的统计分析工作。
    DW又分三层:
    DWD 明细层
    (Data Warehouse Detail):作用将ODS层数据根据业务主体要求,将OSD数据抽取到DW层,形成一份最详细的明细数据,同时此层还可以进行一定维度退化的方案
    例如: ODS层有一个时间字段 date 内容2020-12-25 15:30:20 但是后续需要分别根据 年月日 小时来统计: 转换工作:将date字段拆分成多个字段,在DWD层有 hourinfo yearinfo monthinfo dayinfo
    DWM层 中间层:
    作用:对DWD层的数据根据某些维度进行具和操作,形成一份中间表数据,同时,此层可以进行围堵退化的手段
    例如: 我们按照对实施表分别按照 年 月 日 小时老统计操作 (即周期快照事实表)
    需求:统计每年每月每天每小时的访问量
    统计每年每月每天访问量
    统计每年每月访问量
    统计每年访问量
    如果没有中间表,每一次都需要找事务事实表,进行一次局和操作,如果有中间表,可以现在中间表为其按照小时聚合统计形成一份结果数据,后续统计每年每月每天访问量的时候,只需要将每小时对应累加在一起即可

    DWS层 业务层
    作用:主要是对DWD 和DWM层数据进行聚合统一操作,这一次聚合统计是需要将各个维度的数据都要细化统计出来,形成一个宽表,词表就包含了针对这个主题的所有维度的细化统计结果
    (注意:这一层在大多数情况已经是最终结果数据了)
    DIM层:维度层
    作用:磁层主要是用于存储维度表的数据

    **APP(DA)层:**数据应用层
    作用:存储DW层分析以后的结果数据在这里插入图片描述

    各个分层都是逻辑架构,都是人为划分的,所有的层次结构都在hive中
    问题来了既然人为为的逻辑分层,如何区分各个层次的表呢?
    方案一:构件表的时候,表明后携带一个标识
    如:ods_student
    方案二:创建多个不同库,通过库对不通层次表命名
    如; 构建 ODS_db DW_DB APP_DB

    为什么要设置分层呢?
    1 对数据进行规划管理
    2 利于后期的维护工作
    3 保证数据更加清晰化

    展开全文
  • ## sentinel规则持久化生产环境上,一般都是通过动态规则持久化的方式来动态的管理限流规则,...所谓的动态规则就是通过控制台配置规则后持久化到各个数据源中。![](https://img.kancloud.cn/cf/e8/cfe8227514224d31...
  • 1、数据来自多个不同的系统,存在需要跨数据源分析,需要对接各种不同数据源等问题。 2、需要分析的数据体量越来越大,并且要快速获得分析结果的问题。 3、部分数据还需要二次加工处理的问题。 为了解决日益激增...
  • 1、数据来自多个不同的系统,存在需要跨数据源分析,需要对接各种不同数据源等问题。 2、需要分析的数据体量越来越大,并且要快速获得分析结果的问题。 3、部分数据还需要二次加工处理的问题。 供数据支撑方在...
  • Apache Flume笔记

    2019-09-25 23:19:51
    Apache Flume 概述 flume是一款大数据中海量数据...source :用于对接各个不同的数据源 sink:用于对接各个不同存储数据的目的地(数据下沉地) channel:用于中间临时存储缓存数据 运行机制 flume本身是ja...
  • Flume 是 Cloudera 提供的一个高可用的,高可靠的,分布式的海量日志采 ...source:对接各个不同种类的数据源 sink:对接各个不同数据存放的目的地(下沉地) channel:中间用于临时缓存数据的 以上三个组件...
  • flume常见问题总结

    2020-11-24 22:55:28
    可以收集日志 行为 事件等数据信息 并且将这些信息从各个数据源集中起来存储的工具 2.flume怎么工作的? 核心概念 agent agent分为三个组件 source channel sink source 负责读取采集 sink负责写入...
  • source:用于对接各个不同的数据源 sink:用于对接各个不同存储数据的目的地(数据的下沉地) channel:用于中间临时存储缓存数据 Flume采集系统结构 运行机制 flum本身就是java程序,在需要采集数据的机器上启
  • Flume基础学习实践

    2021-02-04 11:45:54
    2、Flume可以对接数据源? Console、RPC、Text、Tail、Syslog、Exec等 3、Flume接受的数据源输出目标? 磁盘,hdfs,hbase, 经过网络传输kafka data->flume->kafka->spark stre...
  • 自行实现 dotnet core rpc

    2018-05-27 20:34:30
    ”胖子:“那是你的事,你都不提供数据源,我咋接?”小李:“你想要什么样的数据源?”胖子:“我想要一个调用简单点的!”小李:“我这个数据源是在linux平台使用docket封装发布的,webapi的怎么样?”胖子:“也...
  • 5G时代的到来令物联网的未来加速形成,在一个万物互联的时代,各个端口也需要互联对接,下面介绍一下 挖数据实名认证接口,精准对接联网权威数据源,旨在为企业提供高效率、低成本的实名认证解决方案。 接口简介: ...
  • b)即席查询只能基于各个只读实例,需要配置多个数据源,增加开发难度。c)自助式查询,在执行SQL验证正确性时的时执行时间较长,影响开发效率。2、运维类a)除了日常维护外,还需要维护只读实例,包括白名单、访问控制...
  • 周期短、零编码、成本低、风险小,报表和数据源的任意定制,工作流程和表单任意定制,应用和业务系统的任意定制,数据分析图谱的任意定制。 8.极致体验 T-OS应用、消息、协同一体化桌面,移动、PC终端精灵,精致易用...
  • 体检系统(源码).rar

    2020-05-28 12:16:01
    不均,体检过程相对程序化,重点解决了体检流程化问题,把体检信息采集放 在各体检科室的医生工作台上,各种设备检查信息全部来源与相关医疗设备,使 体检人员的全部检查信息贯穿在系统工作流的全过程,使其真正...
  • 善沟通:GO在项目中扮演一个非常重要的角色,一般是在企业里做服务这块,需要跟各个部门进行协调沟通,所以要具备良好的沟通能力,业务对接能力!   课程研发环境及内容简介: 1.课程研发环境 项目代码...
  • 在文件里修改数据源hera的数据源(修改druid.datasource下的配置)即可进行下面的操作。 ## 省略部分 druid: datasource: username: root #数据库用户名 password: moye #数据库密码 driver-class-name: ...
  • 02、独立完整的会员体系,与论坛体系分离,可删除、替换其他会员系统,并能无缝对接各种大中型网站的会员系统; 03、优化各大搜索引擎的收录,全站默认全伪静态(后缀名.html)访问; 04、全新原创的树形论坛架构...

空空如也

空空如也

1 2
收藏数 24
精华内容 9
关键字:

对接各个数据源