大数据的概念
大数据的特点可以用4个V来描述:Volume(大)、Variety(多)、Velocity(快)、Value(低)
大数据管理:
Hadoop是Google GFS以及MapReducc系统的开源实现,用户可以在不了解分布式底层细节的情况下开发分布式程序,但是无法做到动态和实时的分析。
流计算系统能够处理实时的数据流,实时分析系统主要采用传统的MPP技术从海量数据中实时提取有价值的汇总信息::
大数据理解:
大数据内部以及数据和数据之间关系的理解涉及数据挖掘、机器学习、多媒体理解等多个前沿领域的技术
大数据应用:
大数据技术应用在互联网营销将产生彭妾的商业价值
MapReduce
MapReduce框架会自动处理数据划分、多机并行执行、任务之间的协调,并且能够处理某个任务执行失败或者机器出现故障的情况。
框架实现时主要做了两点优化:
本地化:尽量将任务分配给离输入文件最近的MaP进程,
备份任务:如果某个Map或者Reduce任务执行的时间较长,主控进程会生成一个该任务的备份并分配给另外一个空闲的Map或者Reduce进程。
框架有效地解决了海量数据的离线批处理问题,
Google Tenzing:基于MapReduce模型构建SQL执行引擎、直接用SQL处理大数据
Microsoft Dryad:
Google Pregel:图像模型迭代计算
GoogleTenzing
MicrosoftDryad
GooglePregel
流式计算
流式计算解决在线聚合、在线过滤等问题,流式计算同时具有存储系统和计算系统的特点,
原理
流式计算强调的是数据流的实时性。
YahooS4
TwitterStorm
实时分析
MPP架构
并行数据库往往采用MPP架构
MPP架构是一种不共享的结构,每个节点可以运行自己的操作系统、数据库等。
常见的数据分布算法有两种:范围分区、哈希分区
EMCGreenplum
EMC公司研发的一款采用MPP架构的OLAP产品,底层基于开源的PostgreSQL数据库。
HPVertica
的学术研究项目C-Store的商业版本,
GoogleDremel
是Google的实时分析系统,可以扩展到上千台机器规模,处理PB级别的数据。
还是GoogleBigtable服务的底层存储和查询引擎。