zoukankan      html  css  js  c++  java
  • 什么是数据仓库?

    什么时候需要用到数据仓库?

    一个公司里面不同项目可能用到不同的数据源,有的存在MySQL里面,又的存在MongoDB里面,甚至还有些要做第三方数据。

    但是现在又想把数据整合起来,进行数据分析。此时数据仓库(Data Warehouse,DW)就派上用场了。它可以对多种业务数据进行筛选和整合,可以用于数据分析、数据挖掘、数据报表。

    image.png

    数据仓库的特点

    • 主题性:数据仓库是针对某个主题来进行组织,比如滴滴出行,司机行为分析就是一个主题,所以可以将多种不同的数据源进行整合。而传统的数据库主要针对某个项目而言,数据相对分散和孤立。
    • 集成性:
      数据仓库需要将多个数据源的数据存到一起,但是这些数据以前的存储方式不同,所以需要经过抽取、清洗、转换的过程
    • 稳定性:保存的数据是一系列历史快照,不允许修改,只能分析。
    • 时变性:会定期接收到新的数据,反应出最新的数据变化。

    总的来说,数据仓库是将多个数据源的数据按照一定的主题集成起来,因为之前的数据各不相同,所以需要抽取、清洗、转换

    整合以后的数据不允许随便修改,只能分析,还需要定期更新。

    ETL

    上面我们说过,数据仓库接收的数据源是不同的,要做集成的话,需要抽取、清洗、转换三个步骤,这就是ETL(Extract-Transform-Load)

    • Extract:数据抽取,就是把数据从数据源读出来
    • Transform:数据转换,就是把数据转换为特定的格式
    • Load:数据加载,把处理后的数据加载到目标处。
      image.png

    主流的数据仓库

    国内最常用的是一款基于Hadoop的开源数据仓库,名为Hive,它可以对存储在HDFS的文件数据进行查询、分析

    Hive对外可以提供HiveQL,这是类似于SQL语言的一种查询语言。在查询时可以将HiveQL语句转换为MapReduce任务,在Hadoop层进行执行。

    Hive的最大优势在于免费,那其他知名的商业数据仓库有那些呢?比如Oracle,DB2,其中业界老大是Teradata

    Teradata数据仓库支持大规模并行处理平台(MPP),可以高速处理海量实际上,性能远远高于Hive。对企业来说,只需要专注于业务,节省管理技术方面的精力,实现ROI(投资回报率)最大化。

    参考

    本文为什么是数据仓库?的笔记

    也可以参见简书主页:https://www.jianshu.com/u/482f183ec380
  • 相关阅读:
    Selenium简单测试页面加载速度的性能(Page loading performance)
    Selenium Page object Pattern usage
    Selenium如何支持测试Windows application
    UI Automation的两个成熟的框架(QTP 和Selenium)
    分享自己针对Automation做的两个成熟的框架(QTP 和Selenium)
    敏捷开发中的测试金字塔(转)
    Selenium 的基础框架类
    selenium2 run in Jenkins GUI testing not visible or browser not open but run in background浏览器后台运行不可见
    eclipse与SVN 结合(删除SVN中已经上传的问题)
    配置Jenkins的slave节点的详细步骤适合windows等其他平台
  • 原文地址:https://www.cnblogs.com/dy2903/p/8416414.html
Copyright © 2011-2022 走看看