分布式存储和并行计算算法与海量数据分析-本科优秀毕业论文摘要
博客专区 > 为为02 的博客 > 博客详情
分布式存储和并行计算算法与海量数据分析-本科优秀毕业论文摘要
为为02 发表于8个月前
分布式存储和并行计算算法与海量数据分析-本科优秀毕业论文摘要
  • 发表于 8个月前
  • 阅读 49
  • 收藏 0
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

摘要: 2017年是我拿到本科毕业证的一年,是我将学生身份完全换为工程师的一年(虽然我从2016年就一直在外全职工作,几乎未回过学校)。在学生生涯的最后时光里,我连续三个月的每天下班之后准备材料、编写论文到深夜两点,最终获得了一个优秀毕业论文的荣誉,也算是为我十几年的学习生活划上了一个圆满的句号。 拼搏的人生最精彩,奋斗的经历值得纪录。希望多年后,当我看到今天这篇博文时,我能自然的为自己青春微笑。希望我能坚持自己的梦想,为改变人类的生活方式尽一份微薄之力。

分布式存储和并行计算算法与海量数据分析-摘要

软件学院   王为为

指导教师   霍 华

> 本文只是论文摘要,点击此处可以访问论文正文 。 

 要:本文主要分为两个大模块,理论研究和实际应用。通过对Hadoop、Storm、Zookeeper等技术架构的深入研究探讨,以这些理论技术为基础,设计研发基于海量数据的反欺诈系统。

理论研究模块首先探讨了在分布式存储技术,主要分析开源的Apache Hadoop分布式存储原理概念。反欺诈系统的源数据就是存储在HDFS之上,且有较大价值的数据存储正是存储在HBase。

在并行计算算法与海量数据分析方面,本文分文两个方向进行讨论。一并行计算方向:首先是分析了Hadoop MapReduce,讨论分析了其设计架构与优缺点。二实时计算:Storm是很强大的实时计算工具,本文就是以它为基础去讨论实时计算,另外还引入了消息中间件kafka。反欺诈系统的用户设备信息采集分析就是采用Storm为核心技术实现的。

最后本文附上了反欺诈系统的设计,反欺诈系统是以海量的数据作为支撑,借助上述理论技术作为数据层解决方案。反欺诈系统的应用层全部是基于HTTP去实现的,应用层主要是操作管理页面,业务进件接口。反欺诈的工作流程是在发生业务请求时,查询出指定的用户数据信息,根据业务情况定制规则智能的对数据信息进行分析,产生用户危险指数评分和分析报告,最终达到避免损失的目的。

关键词:反欺诈,大数据,分布式存储,并行计算

 

ALGORITHM AND MASS DATA STORAGE AND ANALYSIS OF DISTRIBUTED PARALLEL COMPUTING

Software College: Weiwei Wang

Instructor: Hua Huo

Abstract:The paper is divided into two large modules, theoretical research and practical application. Based on the deep research of Hadoop, Storm and Zookeeper, this paper designs and develops anti - fraud system based on massive data based on these theoretical techniques.

The theoretical research module first explores the concept of distributed storage technology, mainly analyzing the open source Apache Hadoop distributed storage principle. The source data of the anti-fraud system is stored on top of HDFS, and the data store with greater value is stored in HBase.

In the parallel computing algorithm and mass data analysis, this paper is divided into two directions to discuss. A parallel computing direction: First, the analysis of the Hadoop MapReduce, discussed and analyzed its design architecture and advantages and disadvantages. Real-time calculation: Storm is a very powerful real-time computing tool, this article is to use it as an entry to discuss real-time computing, in addition to the introduction of the message middleware kafka. Anti-fraud system user equipment information acquisition analysis is the use of Storm as the core technology to achieve.

Finally, this article is attached to the design of anti-fraud system, anti-fraud system is a massive amount of data as a support, with the theory of technology as a data layer solution. Anti-fraud system application layer is based on HTTP to achieve all, the application layer is mainly operational management page, business access interface. Anti-fraud workflow is in the event of business requests, the query out the specified user data information, according to the business situation custom rules intelligent analysis of data, resulting in user risk index score and analysis report, and ultimately to avoid the purpose of loss.

Key wordsAnti-Fraud,Big Data,Distributed Storage,Parallel Computing

 

1        研究背景

当前世界正处于第四次工业革命时代,各种智能设备和互联网已经成为现代化人类生活不可或缺的东西。在社会发展的同时产生了超大规模的数据,虽然这些数据大部分没有什么价值,但又不能白白丢弃。如何存储这些数据,挖掘这些数据的价值,这些问题一直在困扰着计算机专业的从业人员。而且国家正在正在大力支持科研人员对大数据和人工智能领域进行探索研究,让科技去服务大众的生活。

2        分布式存储

2.1        问题分析

2020年世界总数据量将达到35ZB,我所在的公司每天有18TB的新数据,传统的存储方案无法完成这种规模的数据存储。

2.2        HDFS

2.2.1    HDFS概念设计

HDFS(Hadoop Distribute Filesystem) 是 Hadoop 的分布式文件系统,架构与多台机器的集群之上。。其设计的目的主要以流式数据访问的模式来存储使用超大文件。HDFS中的数据是分块存储的,每个块都是HDFS中独立的存储单元。存储在HDFS上的数据被分为块大小的多个分块,但如果一个文件的大小小于块的大小在存储时并不会占据整个块的村空空间。HDFS集群中主要有NameNode和DataNode两种节点。

2.2.2    DockerHadoop搭建

Docker可以从系统内核层搭建共享硬件资源的环境隔离容器,本文的Hadoop实验环境就是基于Docker搭建的一个Pass私有云平台。

2.3        HBASE数据仓库

2.3.1    HBase概念

HBase是工作在HDFS之上的一个NoSQL分布式数据库,适用于实时访问超大规模数据集的场景。在HBase中表由行和列组成,应用把数据存放在带有标签的表中。行中的列被分为列族(column family),同一个列族的所有的列的前缀相同,且同一个列族的所有的列存储到同一个文件系统里。HBase会自动为表建立表分区(region),分区是HBase在分布式文件系统上的最小存储单位,由它所属的表信息与其第一行和最后一行的编号来表示。HBase的元数据信息meta表,集群中各个节点的位置信息等数据都存放在Zookeeper中。Master节点对RegionServer节点的状态监控也是通过Zookeeper完成的。

2.3.2    Zookeeper概念

Zookeeper是一个专业的分布式协调应用,在实现原理上,其提供一个树形的高性能文件系统。Zookeeper实现了分布式系统中的顺序一致性、原子性、明确唯一性(每台Zookeeper里的数据都一样)、持久性、及时性。

3        并行计算

3.1        问题分析

顺序完全读取1TB磁盘的数据需要两个多小时,随机读取的情况下磁盘寻址时间远大于读取数据时间,整体耗费时间更长。如何保证多台计算机之间的高效数据传输,稳定性和公平性问题。

3.2        MapReduce

MapReduce是Hadoop的两大核心(另一个是HDFS)之一,是一个并行计算模型。Map的含义为映射,即把需要处理的数据以某种规则进行映射生成一个中间数据的key/value对集格式的数据集发送到Reduce上。Reduce的意为化简,将经map映射分析后的key/value对集格式的数据再次进行化简合并计算,得到想要的数据。MapRduce集群中有一个JobTracker和多个TaskTracker节点。MapReduce作业主要有五个阶段:Split、Map、Combiner、Shuffle、Reduce。

3.3        YARN

YARN:另一个资源协调者(Yet Another Resource Neogotiator),新一代的MapRduce引擎。其将Jobtracker划分为多个各有所司的实体,将原本在超大规模集群上MapReduce作业的瓶颈问题通过一种更为完善的架构模式解决,大大的提高集群的可管理性与资源利用率。YARN中主要有RM、AM、Containers、NM几个概念。

3.4        Storm

Storm以持续不断的流数据处理为核心任务,在设计上着重于考虑分布式、高并发、高容错的需求,以 Nimbus/Supervisor 主从模式为核心架构,构建更加易于开发维护的并行计算模型 Spout/Bolt ,以任务调度系统为内核的实时计算系统。在Storm中Topology 是一个完整的Stream数据流的拓扑结构,其管理着数据流中所有的 Spout 和 Bolt。数据流由无限的Tuple元组组成,Tuple是Storm中各个组件所传输和处理的数据单位。

4        反欺诈系统

4.1        项目概述

4.1.1    项目背景

为应对互联网金融的挑战,商业银行加大了科技投入,在强化传统电子银行优势的基础上,积极介入互联网金融领域,进军直销银行,搭建电商平台,拓宽网上银行的外延,开展基于社交平台的金融服务,发展网上贷款业务,和支付平台公司、互联网金融公司等合作,拓展业务渠道。

4.1.2    业务目标与意义

网络空间的无限性,使很多不法分子在消费信贷平台开始从伪造信息、盗用账户、套现等多种方式对平台进行攻击,造成平台的高逾期率和坏账率。为有效保障在线业务的开展,避免相关系统被不法分子利用,成为其非法获取利益的通道,有效防范欺诈风险,降低银行的损失,需要同步建设反欺诈系统。

4.1.3    总体模块

反欺诈系统主要包含如下功能模块:工作台、规则中心、配置中心、统计中心、系统管理、预警信息、综合查询模块。

4.2        详细设计

4.2.1    工作台

工作台的主要功能是用户审核的流程中待当前登录用户进行人工审核的信息。

4.2.2    规则中心

规则中心主要包含规则集管理,规则变量管理,规则管理,规则应用,规则回溯等功能。

规则是反欺诈系统对客户进行分析的方法,其包含数据匹配的逻辑和权重。如果某客户命中了一条规则,规则的权重就会成为其在反欺诈系统中的风险值。规则集是对个规则的集合,规则集对应一个或多个数据接口,在发生进件时解析数据接口返回数据,将值赋到规则变量上,然后逐个匹配规则,将命中的规则权重相加,形成最终的风险值。而规则回溯功能可以使新旧规则产生对比,根据数据何业务的稳定性综合判断是否允许规则修改。

4.2.3    配置中心

配置中心主要包含业务产品配置,流程配置,特殊名单管理,参数配置等功能。

业务产品是银行实际的产品如某贷款产品,信用卡产品等。流程是客户要申请一个业务产品所必须的审批步骤,流程节点可以包含规则集,让反欺诈系统智能进行风险审核判断,也可以进行人工审核,可以灵活的根据业务需求进行配置。特殊名单是银行的黑名单或白名单。参数是整个系统的数据字典,主要包含各种业务类型信息。

4.2.4    统计中心

统计中心主要包含反欺诈规则命中率统计报表,数据产品命中率统计报表,反欺诈流程拒绝率统计报表,风险事件类型统计报表,风险地图,风险大图等功能。

4.2.5    预警信息

预警信息主要包括预警处理,授信、用信查询、登录、注册查询等功能。

预警信息处理授信、提现的业务中需要登录者本人进行人工审核的数据。授信、用信查询、登录、注册查询主要记录业务产品进件审核历史。

4.2.6    系统管理

主要包含日志管理,角色管理,用户管理,机构配置等功能。

4.2.7    综合查询

主要包括个人分析报告,贷后审查等功能。

个人分析报告依托海量数据源和智能规则,可根据姓名、身份证号码、手机号码 三要素信息,生成客户的信誉风险分析报告。贷后审查询客户在反欺诈系统中的历史审核记录,并且可以通过执行事后审查流程获得客户当前的风险状况。

4.3        核心功能设计

4.3.1    设备信息采集

通过部署采集设备相关信息传入das接口,推送到云端设备信息库(本步骤依赖外部系统的设备反欺诈sdk部署情况),然后通过api接口返回设备反欺诈相关数据。使用Storm、kafka、HBase等技术进行实时数据处理,云端计算用户设备风险信息。

4.3.2    外部系统对接接口

与外部系统的接口通过json数据格式进行数据交互,采用负载均衡,分布式缓存,一致性控制,分布式轻事务控制,数据读写分离等技术共同打造。目前反欺诈系统能满足日均并发量8000万,单条数据请求相应时间小于200毫秒的性能要求。

4.3.3    数据引擎

离线使用基于Hadoop二次开发的框架批处理源数据,存储到优化的HBase,RDBMS,Neo4j中。数据在线检索分析采用elastic,Storm等技术综合搭建高并发的秒级响应数据引擎。

4.3.4    规则引擎

基于Nashorn引擎二次开发的编译型高性能动态语言解析引擎,可以做到50ms内对数百条规则进行解析匹配。规则引擎采用资源池模式,可以支持超高并发的规则匹配解析任务。

4.3.5    流程引擎

基于Activity流程引擎进行优化的更简单更适用于金融行业业务人员使用的流程引擎。

5        结论与小结

分布式存储和计算技术今年来在业内人士的共同探索之下已经有了长足的进步,并且基于这些技术的大数据又可以用来培养训练人工智能,最终人类一定会创造出一种智能的大脑。

反欺诈系统是在这个时代背景下,专为金融行业征信而研发的产品。其基于商业数据源,定时处理源数据,提取影响个人信誉的信息。然后通过接口调用的方式让应用端查询这些数据,再使用规则引擎分析,最终达到减少金融行业信誉风险的目标。

需求决定技术,我对于分布式系统的研究都是为了解决现实社会中所出现的问题。研究本应该服务于社会,技术本应该去服务人类, 反欺诈系统是我提供数据服务的开始。

参考文献:

[1]   White T. Hadoop: The Definitive Guide[M]. O'Reilly Media, Inc. 2012.2.

[2]   Ghemawat S, Gobioff H, Leung S T. The Google file system[J]. Acm Sigops Operating Systems Review, 2003, 37(5):29-43

[3]   Dean J, Ghemawat S. MapReduce: Simplified Data Processing on Large Clusters.[C]// Conference on Symposium on Opearting Systems Design & Implementation. DBLP, 2004:137-150

[4]   Chang F, Dean J, Ghemawat S, et al. Bigtable: a distributed storage system for structured data[J]. Acm Transactions on Computer Systems, 2008, 26(2):15-15

[5]   Leibiusky J, Eisbruch G, Simonassi D. Getting Started with Storm[M]. O'Reilly Media, Inc. 2012.

[6]   Vijay Srinivas Agneeswaran, 吴京润. 颠覆大数据分析[M]. 电子工业出版社, 2015.

[7]   曾宪杰. 大型网站系统与Java中间件实践[M]. 电子工业出版社, 2014.

 

 

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 42
博文 39
码字总数 88849
×
为为02
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: