什么是大数据?
大数据(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到看到网页的过程