Lecture #01 & #02

2019-07-29  本文已影响0人  全村滴希望

大数据介绍

科学应用处理大量数据的两方面原因:科学应用计算仿真实验数据显著增加;观测数据,通过传感器等仪器得到的数据量庞大。
从生活中的例子,存储卡容量的翻倍也说明大数据已经不是一个新问题了。

两个案例

  1. 某一家(Target)连锁超市比一个女孩的父亲更早的发现这个女孩已经怀孕了。
  2. 美国节目60分钟,对华尔街的高频交易,分秒必争的背后也是使用高性能平台来处理庞大的交易量。

大数据的定义

3-V定义:
Volume:庞大的数据量
Velocity:高频的处理速度
Variety:多种类数据(视频音频、有无结构)

5-V定义:
Veracity/validity:数据的有效性
Valve:数据的有价值性

大数据涉及层面

  1. 理论算法层面
  2. 系统层面 *
  3. 管理层面 *
  4. 搜索挖掘层面
  5. 隐私安全层面
  6. 应用层面

系统层面

  1. 并行或分布式计算平台
  2. 高性能计算、网格计算、云计算平台
  3. 存储设备和存储结构
  4. 互联网络
  5. 磁盘、内存计算架构

基本解决方案:商业硬件+开源软件+可扩展

管理层面

  1. 并行或分布式文件系统
  2. 开发应用框架
  3. 去冗余(重复数据删除)
  4. 数据压缩
  5. 元数据管理
  6. 非关系型数据库的设计

并行计算:大数据计算的基础

1台机器 45分钟,10台机器 4.5分钟。并行分布式是基础,必须以此方案来解决大数据计算。

高性能计算

一种并行(分布式)计算形式,侧重于性能(大规模,大规模并行处理)
•超级计算的同义词(“超级计算机”)
•高端计算,云计算/数据中心(行业公司术语)

并行计算和分布式计算的区别? (紧密与松散耦合)
问题-解决该问题的算法-编程语言-编译器成机器语言(instructions)-CPU执行
并行计算的优势在于避免多级流水线执行,从算法设计上改编成并行分布式算法,用多核处理器同时执行。

高性能计算解决的问题

  1. 解决大型/复杂的问题
  2. 节约时间和成本
  3. 提供并发机制同步解决问题(上百万用户同时访问)
  4. 闲置资源远程利用
  5. 解决单台计算机的物理极限(提供单核的频率无法解决功耗问题,这能走多核这条路。而且芯片体积很难再缩小,单台机器的性能总会有一个瓶颈)

解决历程:DOE-ANL 实验室的一台机器
从一个芯片-集成到一颗CPU或GPU处理器Compute Card,再到多颗CPU和GPU组成的Node Card,再到一台单节点的Rack机架,加上互通的网络一整套机柜构成多节点计算平台。

谬论

高性能计算其实并不容易

高性能计算面临的挑战

可扩展性是关键 - 实现高持续性能而不是高峰性能

现状

Petaflops(> 1015 Flop / s)计算与117计算机系统完全建立
§三种技术架构或“泳道”蓬勃发展

TOP 10

大数据和HPC

第一范例:纯理论,数学物理等理论研究上的发现,带来了formula和equation
第二范例:实验,通过公式和等式来进行实验完成并验证理论。
第三范例:高性能计算。当物理实验很难做,需要计算机来完成,利用模型来编写程序完成实验。那么这个模型model的背后实际上就是formula的支撑。
第四范例:不一定有公式和模型来描述问题,只有观测数据和观测栈,那么如何通过数据来找到一些结论和关联,来发现一些理论,出发点是数据,不再是根本的fomula,从数据learn,学习出来一种model。

高性能系统架构怎么样支持大数据应用

传统高性能系统架构大部分资源集中在计算节点资源(大部分是CPU、GPU、Memery),没有全局的数据文件管理。
数据量很大的时候,数据从存储中取出,然后分步到众多计算核心,再处理后写回,数据移动时间是主导问题。

分离式Decoupled高性能架构:针对大型数据应用,计算资源不在集中在计算节点,有一部分资源专门用来做数据分析,能够更接近存储端,更接近数据源的位置,Compute-side先做数据分析,然后进行数据分离后再分散到计算资源。
Storage-side就是先把存储端数据源读取到内存前先进行数据分析再分配,处理过后再写回。

本质:计算挪到数据的地方,而不是把数据挪到计算的地方。

对比
传统计算科学数据量不大的情况下传统HPC架构可以满足,但是大量非关系型数据需要在数据源的地方分析进行Reduce的数据分离,然后再计算。

分布式计算

并行计算把一个问题分解成多份,同时计算,强调tightly-coupled,紧耦合。
而分布式计算主要强调loosely-coupled 松耦合
也是问题分割成多份,但是分配到不同的地方,不在同一台机器,物理上很远的距离。百度搜索的客户端请求关键字,百度数据中心处理返回就是物理上的远距离分布式。

网格计算

本质上就是分布式计算上的超级计算。将多个大规模高性能计算系统计算资源结合起来,形成超级计算资源网络。同样是松耦合,结合的资源包括HPC计算资源,存储资源,传感器资源甚至是人力资偶。

云计算

工业界用词,本质上还是并行分布式计算。商业模式和场景的角度出发。资源的分配管理定制化的进行移交和传递以及共享。

上一篇下一篇

猜你喜欢

热点阅读