基于内存的轻量级分布式计算引擎的设计与实现-计算机系统结构专业论文.docx
文本预览下载声明
摘要
摘要
I
I
摘要
近年来随着网络技术的发展,网络用户数量在日益增长。用户在上网的过程 中会产生用户行为数据,这其中包括浏览网页,网络购物,观看视频等一系列的 信息。数以亿计的用户产生的数据量无疑是巨大的。存储和维护这些数据给我们 带来了挑战,同时这些海量的用户行为数据也给我们带来了新时代的机遇。将海 量的用户数据进行数据挖掘,并向用户提供定向推荐、实时推送成为了一种可盈 利的商业模式。为了从海量数据中得到精确的用户分类信息,需要对数据进行多 次迭代的计算。因此如何实现一个可支持高速迭代计算的分布式引擎是当前的问 题之一。
本文设计和实现了一个基于内存的轻量级分布式计算引擎,并对整个系统的 整体架构和实现细节进行全方面的阐述。系统充分利用分布式计算的特点,将数 据散列到不同的机器上,减轻每台机器的负担并且提高计算的速度。为了支持多 次迭代的计算,将每次计算的数据保存在内存中而不是在磁盘上,减少了每次迭 代磁盘 I/O 的时间,提高了计算的效率。在整个计算过程开始之前,系统生成本 次计算的执行计划图,计划图保存了数据之间的转换关系。当数据由于意外故障 丢失,系统可以根据计划图重新恢复丢失的数据。系统同时对用户提供了一套编 程接口,数据的分布式和容错恢复对用户是完全透明的。系统同时将一个分布式 计算任务的控制节点和计算执行节点都纳入统一的资源管理。系统引入负载均 衡,实时监控每个节点的运行情况,根据节点的运行状况,下发计算任务。
在实现方面,模块通信选型 Epoll 驱动满足异步事件到达的处理。在多路网络 I/O 通信的情况下依然可以高效并发的处理报文。此外引入线程池模型处理文件 I/O 操作,数据库操作,在进行相对慢速的磁盘操作的同时不降低高速的网络 I/O
的处理效率。
本文最后对系统进行了全方面的测试,结果表明在功能上能够为一些分布式 计算算法提供高效的运行支撑和容错处理。在性能上跟传统的分布式计算引擎相 比有较大的改善。此外,在同时承载多个业务系统时,和当代主流的基于内存的
分布式计算引擎相比有一定性能提升
关键词:分布式计算、基于内存、负载均衡、容错、迭代计算
ABSTR
ABSTRACT
II
II
ABSTRACT
In recent years, with the developing of the network technology, the number of network users is growing. While surfing on the Internet, the users may product multiple behavior data, including web pages, shopping online, video, etc. The quantity of data which is producted by billions of people is enomous. How to store and maintain these data is a challange to us, but these ocean data can bring us a new era of opportunity. Using the data to data mining, giving the users personal reconmmending and real-time pushing become a profitable business model.For geting the exact user classification information, data need to be iterative computed. Therefore, how to support the high-speed iterative computation is a problem for us.
A lighting distributed computation engine base on memory has been designed and implemented in this paper. It introducts the whole structure, and implement details. The system make suse of distributed computing, distributes the data to different machines, and alleviate the load, increase the computing speed. For supporting iterative computat
显示全部