大数据运算系统二

目录

一、同步图计算

1.图算法

2.同步图计算

3.系统实现

二、异步图计算

1.数据模型

2.计算过程

(本文为陈世敏老师课程笔记)

-------------------------------------------

一、同步图计算

1.图算法

PageRank:随机游走模拟网页浏览得到网页重要度排名,从1/N初始化,直到公式收敛

(1-d)/n是任意跳转的概率,后面的邻居通过超链接跳到他的概率。为了防止N很大时候精度不够,公式两边乘以N,R‘=NR,R’初始化为   1

2.同步图计算

+超步内顶点并行计算,步间全局同步。

+特点:BSP模型、基于顶点编程(每个顶点都调用computer函数:接收消息->进行计算->发送消息)

+结束:所有顶点处于非活跃态(初始所有顶点是活跃态,非活跃态的顶点可以转变为活跃态)

3.系统实现

GraphLite为例,运算在内存中实现

超步开始master->worker(调用computer 收、算、发)->完成通知master->下一个超步.....

初始In-message list为空->received list是上个超步发来的信息,放入In-message list->computer

Aggregator全局统计量:本地副本->超步结束发送到master->master 汇总->master发送给worker

容错靠定期地把图状态写入硬盘生成检查点

二、异步图计算

1.数据模型

Data graph G=(V, E)
  每个顶点可以有数据Dv
  每条边可以有数据Du->v
  +全局数据表(SDT, shared data table)
  SDT[key]  value
  可以定义全局可见的数据

2.计算过程

直接访问内存进行,update修改立即可见

DScopev = update (DScopev ;SDT)

SDT是全局数据表(SDT, shared data table),修改全局可见

三个一致性模型,规定了scope的范围:

full consistency:范围到邻居顶点可读写

edage consistency:update不能写邻居顶点,可写本顶点和临边

vertext consistency:update只能写本顶点,可读临边数据

Update 函数的 Scheduling策略:

+同步调用

+Round -robin :顺序计算每个顶点,下一个顶点可以看到

+FIFO:创建Task,按照Task顺序

+Prioritized :创建Task并指定优先顺序

sync全局计算

3.Graplab

以顶点为中心计算,异步可制定不同scheduling策略,共享内存编程,需要一致性模型,全局aggregate判断是否收敛

p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: "Times New Roman"; font-size: 10.5000pt }
span.msoIns { text-decoration: underline; color: blue }
span.msoDel { text-decoration: line-through; color: red }
div.Section0 { }

时间: 2024-12-12 03:19:24

大数据运算系统二的相关文章

蔡先生论道大数据之二 , 国外互联网公司的大数据应用

第一章我阐述了大数据的前世今生,今天我们来看看国外大公司如何利用和布局大数据的. IBM IBM是商业分析和大数据技术的最活跃厂商之一.早在大数据概念进入媒体视野之前,IBM就提出"智慧地球"的说法,其核心是把"智慧"嵌入系统和流程之中,使服务的交付.产品开发.制造.采购和销售得以实现,使亿万人生活和工作的方式变得更加智慧.现在,大数据技术为IBM提供了一种实现途径.近年来,IBM先后投资了SPSS.Clarity.penPages.i2.Algorithmics等

大数据【二】HDFS部署及文件读写(包含eclipse hadoop配置)

一 原理阐述 1' DFS 分布式文件系统(即DFS,Distributed File System),指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连.该系统架构于网络之上,势必会引入网络编程的复杂性,因此分布式文件系统比普通磁盘文件系统更为复杂. 2' HDFS 借此,关于GFS和HDFS的区别与联系查看 我于博客园找到的前辈的博客>>http://www.cnblogs.com/liango/p/7136448.html HDFS(Hadoop Dis

大数据之二:Hadoop与Spark辨析

转载自知乎:https://www.zhihu.com/question/26568496 1) MapReduce:是一种离线计算框架,将一个算法抽象成Map和Reduce两个阶段进行 处理,非常适合数据密集型计算. 2) Spark:MapReduce计算框架不适合迭代计算和交互式计算,MapReduce是一种磁盘 计算框架,而Spark则是一种内存计算框架,它将数据尽可能放到内存中以提高迭代 应用和交互式应用的计算效率. 3) Storm:MapReduce也不适合进行流式计算.实时分析,

大数据存储系统二

目录 一.Key-value store 1.Dynamo 1.1 consistence hash 1.2 Quorum机制保证无主节点正确性 1.3 Eventual Consistency 2.Bigtable/Hbase 3.Cassandra 二.Distributed Coordination:Zookeeper 1.概念 2.数据模型 3.基本原理 4.应用案例 (本文为陈世敏老师课程笔记) ---------------------------------------------

怎么把大数据的二维数组转化为一维数组????

今天做了一场比赛发现一个题卡死在数据上,原本要开一个二维数组a[2e5][2e5]但是这样肯定要re.我一直卡死在这个地方,比赛中想到了一个方法. 那就是用string数组去计数,那样就可以开一个st[2e5]的数组就可以了...然而这样伴随着一些问题.我发现直接用st[i][j]=t;这样是不对的,输出发现没有输出数据!!! 后来我发现必须先把string数组的每一个元素先赋值一个东西,因为我表示的是一个矩阵,所以我把string数组的每一个元素,也是一个string,这里定义为ss了,那么如

大数据(十二) - Oozie

基本概念 眼下计算框架和作业类型繁多: MapReduce Java.Streaming.HQL.Pig等 怎样对这些框架和作业进行统一管理和调度: 不同作业之间存在依赖关系(DAG): 周期性作业 定时运行的作业 作业运行状态监控与报警 多种解决方式: Crontab 自己设计调度系统 直接使用开源系统 Hadoop作业流调度系统基本功能 对常见作业类型进行调度 MapReduce(Java.Streaming等)作业 Hive作业 Pig作业 Shell -. 依据须要对作业进行调度 按周期

Azure HDInsight 和 Spark 大数据实战(二)

HDInsight cluster on Linux 登录 Azure portal (https://manage.windowsazure.com ) 点击左下角的 NEW 按钮,然后点击 DATA SERVICES 按钮,点击 HDINSIGHT,选择 HADOOP ON LINUX,如下图所示. 输入集群名称,选择集群大小和账号,设定集群的密码和存储账号,下表是各个参数的含义和配置说明. Name Value Cluster Name Name of the cluster. Clust

大数据学习总结(8)大数据场景

大数据场景一.各种标签查询 查询要素:人.事.物.单位 查询范围:A范围.B范围.... 查询结果:pic.name.data from 1.痛点:对所有文本皆有实时查询需求2.难点:传统SQL使用WHERE子句匹配LIKE关键词,在庞大的数据字段中搜索某些想要的字,需遍历所有数据页或者索引页,查询效率底,当出现千万级以上数据时,耗时较高,无法满足实时要求3.方案:使用全文检索方案,分布式架构,即使PB级量级也可做到毫秒级查询 大数据场景二.客户事件查询 查询条件:城市.区域.时间跨度(2017

大数据学习总结(7)we should...

大数据场景一.各种标签查询 查询要素:人.事.物.单位 查询范围:A范围.B范围.... 查询结果:pic.name.data from 1.痛点:对所有文本皆有实时查询需求2.难点:传统SQL使用WHERE子句匹配LIKE关键词,在庞大的数据字段中搜索某些想要的字,需遍历所有数据页或者索引页,查询效率底,当出现千万级以上数据时,耗时较高,无法满足实时要求3.方案:使用全文检索方案,分布式架构,即使PB级量级也可做到毫秒级查询 大数据场景二.客户事件查询 查询条件:城市.区域.时间跨度(2017