“大数据系统”版本间的差异

来自iCenter Wiki
跳转至: 导航搜索
大数据的存储/管理/处理现状
第45行: 第45行:
 
# Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung. "The Google file system." SOSP 2003.
 
# Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung. "The Google file system." SOSP 2003.
  
== 并行处理 MapReduce框架 ==
+
== 并行处理 ==
 +
 
 +
=== MapReduce框架 ===
 
Map/Reduce编程模型 (Abstraction)和实现框架。
 
Map/Reduce编程模型 (Abstraction)和实现框架。
  

2017年5月6日 (六) 12:21的版本

分布式系统

信息技术是指电子、计算机与网络的相关技术,涉及信息的存储,传输与处理的内容。

信息系统(Information system)就是涉及信息的存储,传输与处理的软硬件设备。

大数据系统是实现大数据存储、管理、处理和服务的分布式信息系统。

Distributed Systems

  1. M Steen, AS Tanenbaum, Distributed systems: principles and paradigms, Prentice Hall, 2007.

信息系统的设计原则

基本原则:信息系统的软硬件的组织方式,如计算、存储、通信之间的模式,应该和信息系统的功用相适应。 类似于政治经济学中的“经济基础与上层建筑”。

设计问题:集中式与分布式?

信息系统的设计思路

大数据系统设计的基本思路:

  1. 单台机器能力有限,需要多机系统;(并行性)
  2. 数据要分布在不同机器上,之间需要网络通信;(扩展性)
  3. 单台机器容易出现故障,系统要能容错;(可靠性)
  4. 用户程序在多台机器上运行,编程要简单。(易用性)

分布式存储与并行处理系统

分布式文件系统

运行在由很多机器组成的集群上的文件系统;

所有文件都做了冗余备份,存放在不同的机器上;

机器的随机宕机,不会导致文件系统的可用性问题;

谷歌文件系统GFS

每台机器分配不同角色,称为Master和Slave

Master负责存储文件的元数据和在slave中的具体位置

Slave负责存储文件的具体内容,以块为单位,每块64MB

研究论文:

  1. Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung. "The Google file system." SOSP 2003.

并行处理

MapReduce框架

Map/Reduce编程模型 (Abstraction)和实现框架。

用户只要编写 Map()和 Reduce()函数。

Map/Reduce编程框架(programming framework)能够自动将MapReduce程序分配到集群上运行,并汇总运行结果

研究论文:

  1. Jeffrey Dean and Sanjay Ghemawat, MapReduce: Simplified Data Processing on Large Clusters, OSDI 2004.

大数据的存储/管理/处理现状

  1. Hadoop项目集成了大数据存储与处理技术
  2. Spark项目是目前最热门的大数据平台
  3. Real-time Analytics Platform 还没有统治性的软件框架

Hadoop

Hadoop分布式文件系统HDFS(Hadoop Distributed File System),是谷歌文件系统GFS的一个开源实现。

每台机器分配不同角色,称为Namenode和Datanode

Namenode负责存储文件的元数据和在datanode中的具体位置

Datanode负责存储文件的具体内容,以块为单位

Spark

BDAS (Berkeley Data Analytics Stack)

BDAS 是加州大学伯克利分校推出的大数据处理框架。BDAS以Spark软件为核心,结合其他处理软件,组成一套解决方案。

以databricks公司为主。

http://www.databricks.com

  1. Zaharia, Matei, et al. "Spark: cluster computing with working sets.“ Proceedings of the 2nd USENIX conference on Hot topics in cloud computing. Vol. 10. 2010.

Druid

RADStack(Real-time Analytics Data Stack)

RADS以Druid为核心,构建大数据实时解析系统。如事件大数据的可视化的创业公司Imply。

http://www.imply.io


大数据解析

  1. Yang, Fangjin, et al. "Druid: a real-time analytical data store." SIGMOD 2014.
  2. Yang, Fangjin, et al. "The RADStack: Open source lambda architecture for interactive analytics." Proceedings of the 50th Hawaii International Conference on System Sciences. 2017.

参考材料