热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

大数据之ETL(数据仓库技术)

什么是大数据?大数据(bigdata),指无法在一定时间范围内用常规软件工具进行捕捉、

什么是大数据?


大数据(big data),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

大数据的5V特点(IBM提出):

1.Volume(大量)

2.Velocity(高速)

3. Variety(多样)

4.Value(低价值密度)  

5.Veracity(真实性)

大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理(MPP)数据库、数据挖掘、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。

特征:

容量(Volume):数据的大小决定所考虑的数据的价值和潜在的信息; 
种类(Variety):数据类型的多样性; 
可变性(Variability):妨碍了处理和有效地管理数据的过程。 
真实性(Veracity):数据的质量 
复杂性(Complexity):数据量巨大,来源多渠道 
价值(value):合理运用大数据,以低成本创造高价值


什么是ETL


ETL是数据仓库的后台,主要包含抽取、清洗、规范化、提交四个步骤

ETL代表Extract-Transform-Load,它是将数据从源系统加载到数据仓库的过程。用来描述将数据从来源端经过萃取(extract)、转置(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库
从OLTP(联机事务处理)数据库中提取数据,将其转换为与数据仓库模式匹配并加载到数据仓库数据库中。
许多数据仓库还包括非OLTP系统的数据,例如文本文件,遗留系统和电子表格。


看看它是如何工作的

例如,有零售公司有不同的部门,如销售,营销,物流等。他们每个都是独立处理客户信息,而且存储数据的方式是截然不同的。
销售部门按客户名称存储,营销部门按客户编号存储。

现在,如果他们想检查客户的历史,并想知道由于不同的营销活动,他/她购买的不同的产品?这将是非常困难的。

解决方案是使用数据仓库来使用ETL将来自不同来源的信息存储在统一的结构中。
ETL可以将不同的数据集转换为统一的结构。后来使用BI工具从这些数据中获得有意义的见解和报告。

ETL实战


        第一个步骤叫数据的收集。首先得有数据,数据的收集有两个方式,第一个方式是拿,专业点的说法叫抓取或者爬取,例如搜索引擎就是这么做的,它把网上的所有的信息都下载到它的数据中心,然后你一搜才能搜出来。

        第二个步骤是数据的传输。一般会通过队列方式进行,因为数据量实在是太大了,数据必须经过处理才会有用,可是系统处理不过来,只好排好队,慢慢的处理。

        第三个步骤是数据的存储。现在数据就是金钱,掌握了数据就相当于掌握了钱。要不然网站怎么知道你想买什么呢?就是因为它有你历史的交易的数据,这个信息可不能给别人,十分宝贵,所以需要存储下来。

        第四个步骤是数据的处理(清洗)和分析。上面存储的数据是原始数据,原始数据多是杂乱无章的,有很多垃圾数据在里面,因而需要清洗和过滤,得到一些高质量的数据。对于高质量的数据,就可以进行分析,从而对数据进行分类,或者发现数据之间的相互关系,得到知识。

        注:第三与第四个步骤,现存后清洗和先清洗再存,在真是的业务场景中可以适当互换。

        第五个步骤就是对于数据的检索和挖掘。检索就是搜索,所谓外事问google,内事问百度。挖掘,仅仅搜索出来已经不能满足人们的要求了,还需要从信息中挖掘出相互的关系。


会用到哪些测试工具


1.针对大数据单个组件测试工具

(1)GridMix针对Hadoop集群的测试基准,它具备评测大数据处理系统所需的各个模块,包括:产生数据,生成并提交数据,统计作业完成时间等;

(2)TeraSortzhendui针对文本数据排序;

(3)YCSB:专门用来对新一代数据库进行基准测试的工具。

(4)Filebench:文件系统性能的自动怀测试工具,通过快速模拟真实应用服务器的负载来测试文件系统的性能,同时也是一款负载自动生成工具。


 2.综合类测试工具,覆盖大数据平台多个功能组件


(1)Hibench是用来在速度方面评估不同的大数据框架的,它包括一系列的Hadoop,Spark,streaming 工作负载,包括sort,wordcount,TeraSort,Sleep,SQL,PageRank,Nutch indexing,Bayes,Kmeans,NWeight And enhanced DFSIO等,统一也为 park Streaming ,Flink,Storm and Gearpump 提供工作负载。
(2)BigDataBench 是中科院计算所提出的大数据测试工具,覆盖了结构数据,半结构数据和非结构数据,其负载模拟了搜索引擎,社交网络和电子商务等业务类型。


 3.具体应用领域端到端大数据测试工具
BigBench 是基于TPC-DS 端开发的端到端的测试工具,面向零售业务,模拟电子商务的整个流程,追忆测试MapReduce和并行DBMS


主要涉及技术如下:

大数据接入(采集/接入)

Socket、websocket、API、FTP/SFTP、filebeat、Logstash、logback、APIKafka、ActiveMQ

大数据清洗

Logstash、标准化(转换、脱敏、脱密

大数据存储

结构化数据存储、半结构化数据存储、非结构化数据存储 、MySQL、Redis、MongoDB、hbase、ElasticSearch

大数据分析(计算)

离线分析、准实时分析、实时分析、机器学习、strom、Spark

大数据展示

图化展示(散点图、折线图、柱状图、地图、饼图、雷达图、K线图、箱线图、热力图、关系图、矩形树图、平行坐标、桑基图、漏斗图、仪表盘),文字展示、Echarts、Tableau 

——————————————

阅读推荐

【大厂】基于rabbitMQ消息中心技术方案

【干货】一篇文章讲透数据挖掘

深度探讨知识图谱建模

【数据中台】数据中心建设规划

【流媒体】ffmpeg+HLS实现直播与回放

技术不能凌驾于业务,但可以引导业务

说框架设计思路

老王说架构

FaaS技术架构

从URL到看到网页的过程




推荐阅读
  • 什么是大数据lambda架构
    一、什么是Lambda架构Lambda架构由Storm的作者[NathanMarz]提出,根据维基百科的定义,Lambda架构的设计是为了在处理大规模数 ... [详细]
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 帝国CMS中的信息归档功能详解及其重要性
    本文详细解析了帝国CMS中的信息归档功能,并探讨了其在内容管理中的重要性。通过归档功能,用户可以有效地管理和组织大量内容,提高网站的运行效率和用户体验。此外,文章还介绍了如何利用该功能进行数据备份和恢复,确保网站数据的安全性和完整性。 ... [详细]
  • PHP中元素的计量单位是什么? ... [详细]
  • 阿里云大数据计算服务MaxCompute (原名 ODPS)
     MaxCompute是阿里EB级计算平台,经过十年磨砺,它成为阿里巴巴集团数据中台的计算核心和阿里云大数据的基础服务。去年MaxCompute做了哪些工作,这些工作背后的原因是什 ... [详细]
  • 本文深入探讨了HTTP头部中的Expires与Cache-Control字段及其缓存机制。Cache-Control字段主要用于控制HTTP缓存行为,其在HTTP/1.1中得到了广泛应用,而HTTP/1.0中主要使用Pragma:no-cache来实现类似功能。Expires字段则定义了资源的过期时间,帮助浏览器决定是否从缓存中读取资源。文章详细解析了这两个字段的具体用法、相互关系以及在不同场景下的应用效果,为开发者提供了全面的缓存管理指南。 ... [详细]
  • 【图像分类实战】利用DenseNet在PyTorch中实现秃头识别
    本文详细介绍了如何使用DenseNet模型在PyTorch框架下实现秃头识别。首先,文章概述了项目所需的库和全局参数设置。接着,对图像进行预处理并读取数据集。随后,构建并配置DenseNet模型,设置训练和验证流程。最后,通过测试阶段验证模型性能,并提供了完整的代码实现。本文不仅涵盖了技术细节,还提供了实用的操作指南,适合初学者和有经验的研究人员参考。 ... [详细]
  • 每日学术推荐:异质图神经网络在抽取式文档摘要中的应用研究
    在抽取式文档摘要任务中,学习跨句子关系是至关重要的一步。本文探讨了利用异质图神经网络来捕捉句子间复杂关系的有效方法。通过构建包含不同类型节点和边的图结构,模型能够更准确地识别和提取关键信息,从而生成高质量的摘要。实验结果表明,该方法在多个基准数据集上显著优于传统方法。 ... [详细]
  • 期末Web开发综合实践项目:运用前端技术打造趣味小游戏体验
    期末Web开发综合实践项目中,学生通过运用HTML、CSS和JavaScript等前端技术,设计并实现了一款趣味性十足的小游戏。该项目不仅检验了学生对前端基础知识的掌握情况,还提升了他们的实际操作能力和创意设计水平。视频链接展示了项目的最终成果,直观呈现了游戏的互动性和视觉效果。 ... [详细]
  • 技术日志:深入探讨Spark Streaming与Spark SQL的融合应用
    技术日志:深入探讨Spark Streaming与Spark SQL的融合应用 ... [详细]
  • 视觉图像的生成机制与英文术语解析
    近期,Google Brain、牛津大学和清华大学等多家研究机构相继发布了关于多层感知机(MLP)在视觉图像分类中的应用成果。这些研究深入探讨了MLP在视觉任务中的工作机制,并解析了相关技术术语,为理解视觉图像生成提供了新的视角和方法。 ... [详细]
  • Flink1.10定义UDAGG遇到SQL
    按照以下代码测试定义的UDAGG会一直出现org.apache.flink.table.api.ValidationException:SQLvalidationfailed.nu ... [详细]
  • 以Flink为例,消除流处理常见的六大谬见
    以Flink为例,消除流处理常见的六大谬见 ... [详细]
author-avatar
夕祈文_279
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有