大数据(Big Data)

大数据,官方定义是指那些数据量特别大、数据类别特别复杂的数据集,这种数据集无法用传统的数据库进行存储,管理和处理。大数据的主要特点为 数据量大(Volume)数据类别复杂(Variety)数据处理速度快(Velocity)数据真实性高(Veracity),合起来被称为4V。

大数据中的数据量非常巨大,达到了PB级别。而且这庞大的数据之中,不仅仅包括结构化数据(如数字、符号等数据),还包括非结构化数据(如文本、图像、声音、视频等数据)。这使得大数据的存储,管理和处理很难利用传统的关系型数据库去完成。在大数据之中,有价值的信息往往深藏其中。这就需要对大数据的处理速度要非常快,才能短时间之内就能从大量的复杂数据之中获取到有价值的信息。在大数据的大量复杂的数据之中,通常不仅仅包含真实的数据,一些虚假的数据也混杂其中。这就需要在大数据的处理中将虚假的数据剔除,利用真实的数据来分析得出真实的结果。

大数据分析(Big Data Analysis)

大数据,表面上看就是大量复杂的数据,这些数据本身的价值并不高,但是对这些大量复杂的数据进行分析处理后,却能从中提炼出很有价值的信息。对大数据的分析,主要分为五个方面: 可视化分析(Analytic Visualization)数据挖掘算法(Date Mining Algorithms)预测性分析能力(Predictive Analytic Capabilities)语义引擎(Semantic Engines)数据质量管理(Data Quality Management)

可视化分析是普通消费者常常可以见到的一种大数据分析结果的表现形式,比如说百度制作的“百度地图春节人口迁徙大数据”就是典型的案例之一。可视化分析将大量复杂的数据自动转化成直观形象的图表,使其能够更加容易的被普通消费者所接受和理解。

数据挖掘算法是大数据分析的理论核心,其本质是一组根据算法事先定义好的数学公式,将收集到的数据作为参数变量带入其中,从而能够从大量复杂的数据中提取到有价值的信息。著名的“啤酒和尿布”的故事就是数据挖掘算法的经典案例。沃尔玛通过对啤酒和尿布购买数据的分析,挖掘出以前未知的两者间的联系,并利用这种联系,提升了商品的销量。亚马逊的推荐引擎和谷歌的广告系统都大量使用了数据挖掘算法。

预测性分析能力是大数据分析最重要的应用领域。从大量复杂的数据中挖掘出规律,建立起科学的事件模型,通过将新的数据带入模型,就可以预测未来的事件走向。预测性分析能力常常被应用在金融分析和科学研究领域,用于股票预测或气象预测等。

语义引擎是机器学习的成果之一。过去,计算机对用户输入内容的理解仅仅停留在字符阶段,不能很好的理解输入内容的意思,因此常常不能准确的了解用户的需求。通过对大量复杂的数据进行分析,让计算机从中自我学习,可以使计算机能够尽量精确的了解用户输入内容的意思,从而把握住用户的需求,提供更好的用户体验。苹果的Siri和谷歌的Google Now都采用了语义引擎。

数据质量管理是大数据在企业领域的重要应用。为了保证大数据分析结果的准确性,需要将大数据中不真实的数据剔除掉,保留最准确的数据。这就需要建立有效的数据质量管理系统,分析收集到的大量复杂的数据,挑选出真实有效的数据。

分布式计算(Distributed Computing)

对于如何处理大数据,计算机科学界有两大方向:第一个方向是集中式计算,就是通过不断增加处理器的数量来增强单个计算机的计算能力,从而提高处理数据的速度。第二个方向是分布式计算,就是把一组计算机通过网络相互连接组成分散系统,然后将需要处理的大量数据分散成多个部分,交由分散系统内的计算机组同时计算,最后将这些计算结果合并得到最终的结果。尽管分散系统内的单个计算机的计算能力不强,但是由于每个计算机只计算一部分数据,而且是多台计算机同时计算,所以就分散系统而言,处理数据的速度会远高于单个计算机。

过去,分布式计算理论比较复杂,技术实现比较困难,因此在处理大数据方面,集中式计算一直是主流解决方案。IBM的大型机就是集中式计算的典型硬件,很多银行和政府机构都用它处理大数据。不过,对于当时的互联网公司来说,IBM的大型机的价格过于昂贵。因此,互联网公司的把研究方向放在了可以使用在廉价计算机上的分布式计算上。

服务器集群(Server Cluster)

服务器集群是一种提升服务器整体计算能力的解决方案。它是由互相连接在一起的服务器群所组成的一个并行式或分布式系统。服务器集群中的服务器运行同一个计算任务。因此,从外部看,这群服务器表现为一台虚拟的服务器,对外提供统一的服务。

尽管单台服务器的运算能力有限,但是将成百上千的服务器组成服务器集群后,整个系统就具备了强大的运算能力,可以支持大数据分析的运算负荷。Google,Amazon,阿里巴巴的计算中心里的服务器集群都达到了5000台服务器的规模。

大数据的技术基础:MapReduce、Google File System和BigTable

2003年到2004年间,Google发表了MapReduce、GFS(Google File System)和BigTable三篇技术论文,提出了一套全新的分布式计算理论。

MapReduce是分布式计算框架,GFS(Google File System)是分布式文件系统,BigTable是基于Google File System的数据存储系统,这三大组件组成了Google的分布式计算模型。

Google的分布式计算模型相比于传统的分布式计算模型有三大优势:首先,它简化了传统的分布式计算理论,降低了技术实现的难度,可以进行实际的应用。其次,它可以应用在廉价的计算设备上,只需增加计算设备的数量就可以提升整体的计算能力,应用成本十分低廉。最后,它被Google应用在Google的计算中心,取得了很好的效果,有了实际应用的证明。

后来,各家互联网公司开始利用Google的分布式计算模型搭建自己的分布式计算系统,Google的这三篇论文也就成为了大数据时代的技术核心。

主流的三大分布式计算系统:Hadoop,Spark和Storm

由于Google没有开源Google分布式计算模型的技术实现,所以其他互联网公司只能根据Google三篇技术论文中的相关原理,搭建自己的分布式计算系统。

Yahoo的工程师Doug Cutting和Mike Cafarella在2005年合作开发了分布式计算系统Hadoop。后来,Hadoop被贡献给了Apache基金会,成为了Apache基金会的开源项目。Doug Cutting也成为Apache基金会的主席,主持Hadoop的开发工作。

Hadoop采用MapReduce分布式计算框架,并根据GFS开发了HDFS分布式文件系统,根据BigTable开发了HBase数据存储系统。尽管和Google内部使用的分布式计算系统原理相同,但是Hadoop在运算速度上依然达不到Google论文中的标准。

不过,Hadoop的开源特性使其成为分布式计算系统的事实上的国际标准。Yahoo,Facebook,Amazon以及国内的百度,阿里巴巴等众多互联网公司都以Hadoop为基础搭建自己的分布式计算系统。

Spark也是Apache基金会的开源项目,它由加州大学伯克利分校的实验室开发,是另外一种重要的分布式计算系统。它在Hadoop的基础上进行了一些架构上的改良。Spark与Hadoop最大的不同点在于,Hadoop使用硬盘来存储数据,而Spark使用内存来存储数据,因此Spark可以提供超过Hadoop100倍的运算速度。但是,由于内存断电后会丢失数据,Spark不能用于处理需要长期保存的数据。

Storm是Twitter主推的分布式计算系统,它由BackType团队开发,是Apache基金会的孵化项目。它在Hadoop的基础上提供了实时运算的特性,可以实时的处理大数据流。不同于Hadoop和Spark,Storm不进行数据的收集和存储工作,它直接通过网络实时的接受数据并且实时的处理数据,然后直接通过网络实时的传回结果。

Hadoop,Spark和Storm是目前最重要的三大分布式计算系统,Hadoop常用于离线的复杂的大数据处理,Spark常用于离线的快速的大数据处理,而Storm常用于在线的实时的大数据处理。

大数据(Big Data)扫盲相关推荐

  1. 大数据Big Data

    转载自  大数据Big Data 2012年本站曾对大数据预测:如果说2012年是大数据概念为人所知.引人瞩目.小试牛刀的一年,那么2013年大数据将会实现产品部署,早期投资获得回报,一小部分的产业被 ...

  2. 大数据(big data)_如何使用Big Query&Data Studio处理和可视化Google Cloud上的财务数据...

    大数据(big data) 介绍 (Introduction) This article will show you one of the ways you can process stock pri ...

  3. 认知:大数据-Big Data

    大数据-Big Data 作者 | WenasWei 一 大数据 大数据(Big Data)也称为海量数据(Massivee),是随着计算机技术及互联网技术的高速发展而产生的数据现象,2013年也称为 ...

  4. == 大数据 Big Data ==

    The Fourth Paradigm: Data-Intensive Scientific Discovery http://research.microsoft.com/en-us/collabo ...

  5. 阿里巴巴以9000万欧元收购德国大数据公司Data Artisans

    数据猿导读 阿里巴巴虽以电子商务而闻名,但同时拥有云计算.流媒体服务等众多业务.转向开源和基础架构技术,对阿里巴巴来说未来的意义非凡. 来源:数据猿丨作者:吴丹 数据猿官网 | www.datayua ...

  6. 大数据-数据仓库(Data Warehouse):概述【面向主题的、集成的、相对稳定的、反映历史变化的数据集合;是一个数据处理过程(清洗、转义、分类、重组、合并、拆分、统计等)】

    一.数据仓库介绍 1.数据仓库概念 数据仓库概念创始人在<建立数据仓库>一书中对数据仓库的定义是:数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented ...

  7. Spark - 大数据Big Data处理框架

    Spark是一个针对超大数据集合的低延迟的集群分布式计算系统,比MapReducer快40倍左右. Spark是hadoop的升级版本,Hadoop作为第一代产品使用HDFS,第二代加入了Cache来 ...

  8. 什么是大数据口子_大数据分析师年薪几十万,学什么专业才能从事大数据?

    近几年,大数据为各个领域带来了全新的变革,大数据的重要性越来越被企业和国家所看到,大数据工作者的需求再次被无限放大,他们的薪资和社会地位也在不断上涨.马云在演讲中就提到,未来的时代将不是IT时代,而是 ...

  9. 2013大数据全球技术峰会观后感

    今天很荣幸参加了51CTO举办的大数据全球技术峰会,并聆听了各行各业的专家们对于大数据的阐释,非常感谢51CTO举办这次峰会.以前,我认为大数据就是海量数据.但是今天我懂得了海量数据只是大数据的一部分 ...

  10. 科普丨数据中心、云计算、大数据之间有什么区别和联系?

    不少人把数据中心.云计算数据中心.大数据搞混淆,觉得这三者是一样的产品,其实有显著地区别,数据中心机房是一整套复杂的设施,如今,云计算即将成为信息社会的公共资源,而数据中心则是支撑云计算服务的基础设施 ...

最新文章

  1. 利用pmap查看进程的地址空间
  2. Python多进程编程
  3. activity 启动模式_Android世界:Activity的启动模式及其适用范围
  4. 技术人的未来在哪里?
  5. pyspark union代码示例
  6. php去字符串空格,php怎么去掉字符串中空格
  7. 我的世界服务器无限繁殖,我的世界村民无限繁殖方法_我的世界如何无限繁殖村民_牛游戏网...
  8. mcq 队列_MCQ | 密码学中作为IDEA,DES,AES,RSA的块密码
  9. NS2相关学习——完成一个新协议(3)
  10. Prompt learning入门
  11. indesign使用教程,如何将图形添加到项目?
  12. iec61508最新2020_什么是IEC 61508?
  13. Centos7重置密码后采用密钥登陆
  14. 1038:苹果和虫子
  15. 统计每个日期新用户的次日留存率
  16. 最熟悉的陌生人| 长文理解基因本体论 (Gene Ontology, GO)
  17. 基于 FPGA 的飞机大战游戏系统设计
  18. (c语言)通俗易懂的冒泡代码思路
  19. 使用antd-pro组件 实现图片上传和图片编辑
  20. 郭德纲恶心别人的台词大全

热门文章

  1. 《算法竞赛进阶》学习笔记
  2. 运行错误 terminate called without an active exception
  3. 如何提高自己的语言表达能力?
  4. Python冲击省一蓝桥杯 DFS集锦
  5. 史上最全的开源项目创作指南
  6. 笔记:《机器学习训练秘籍》-吴恩达deeplearningai微信公众号推送文章
  7. 回忆鸭掌门的麻辣兔丁
  8. 微软幽你一默,蓝屏死机屏保
  9. 不同坐标系BIM模型导出参数配置
  10. Hive 窗口函数大全