大数据分析服务平台实践

时间:2023-06-07 18:24:03 公文范文 来源:网友投稿

摘要:近年来,在传统银行业务增长乏力及互联网金融冲击等多重压力下,中国银行业积极向智能化转型的趋势日渐明显。银行业务服务理念也正逐渐从“服务为王”向“体验为王”转变。作为智能化转型的一个重要环节 , 大数据分析通过对海量数据的挖掘提炼出有价值的信息,从而帮助银行做出有竞争性的决策。但是,数据分析的过程具有很强的专业性,对使用人员的技能要求较高。如何将专业性很强的数据分析和易用性结合,让各级用户都能分享到大数据建设的成果是一个业内都在研究的课题。该文以”体验好、操作易、可用性高和服务复用”的设计理念为切入点,结合双数据源架构设计、异步查询框架、参数化界面配置和联机构件等技术手段的支撑,阐述了基于服务的数据分析平台的构建思路。

关键词: 数据分析;易用性;基于服务;可定制;大数据可视化

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)01-0001-04

The Practice of the Big Data Analysis Service Platform

DING Xian

(Software Development Center, Industrial Commercial Bank of China Ltd, Shanghai 201206,China)

Abstract: In recent years, under the multiple pressure of the weak growth in the traditional banking business and the Internet financial impact, the trend that the service of Chinese banking is actively updated to the intelligent level is increasingly obvious. The concept of the Banking service is gradually changing from "service is the god" to "the experience is the god" . As an important part of intelligent transformation, the analysis of large data can extract valuable information by mining among the massive data, which can help the bank to make competitive decisions. However, the process of the data analysis is very professional and requires higher skills. How to combine the highly professional data analysis and the ease of use in order to share the achievements of the large data construction among the users is a widely studied topic. This paper takes the design concept of " good experience , ease of operation, high availability and the resue of service" as the starting point, combining some key technical measures which include the design of dual data souce and the framework of the asynchronous query ,etc, parameterized interface configuration and the on-line component techniques, expounds the idea of constructing the service-based platform of the data analysis.

Key words: data analysis; usability; service-based; customization; large data visualization

大数据作为一种重要企业资产,其重要性已深入人心。随之涌现了大批挖掘平台和工具,帮助业务部门挖掘大数据的潜在业务价值。由于数据挖掘工作本身有很强的专业性,对分析人员技能要求比较高,且存在重算法而轻交互的情况,一定程度上制约了大数据分析的推广。“如何降低使用门槛,使更多业务人员都能分享到大数据建设成果并应用到实际业务中”是大数据建设过程中所面临的一个重要课题。

作为以上问题的一种解决对策,该文叙述了一个基于服务的数据分析平台的构建思路。以”易“为切入,结合”提升用户体验”、“整合资源”、“系统灵活可订制”这3个主要着眼点展开平台的设计和构建工作,综合运用了消息队列、多级缓存、数据可视化、批量联机和负载均衡等技术手段。

1 总体框架

整个框架根据数据的流转进行了分层,具体包括资源层、核心功能层,基础服务层,服务构件层和应用领域层(如图1所示)。

各层的定位和技术实现如下:

资源层:数据分析平台的资源包括2大类,一类是数据资源,包括数据仓库、hadoop等,平台对于这类资源访问的技术手段以“数据是否落地”为标准分为2种,1种是通过消息队列的异步联机查询,另1种是通过下数加载的方式实现本地库的访问; 平台访问的另一类资源是系统资源,比如:SAS EG 等分析工具,对于该类资源的访问采用门户的方式进行集成,提供入口链接或基于服务的调用方式进行整合。

基础服务层:作为平台的服务基础,围绕着“提高联机响应、简化用户操作、确保系统稳定、降低维护成本和监控”等设计原则,综合运行了各类技术和算法为核心功能层提供保障。具体技术方式包括:基于双数源的消息队列、基于内存混存和文件缓存的多级缓存、基于双线程的预约定制功能、实现批量和联机资源动态调优的作业调度以及为减少维护成本而基于监听器的日志统计功能。

核心功能层:本层提供了与用户存在交互的联机功能。功能的设置贴近数据分析工作,以简洁的操作为设计目标。具体技术方面,包括跨hadoop&TD数据库的向导式功能、可灵活在线定制的模型、集成挖掘工具的分析工具集等。

服务构件层:数据分析平台对服务展现方式和服务提供方式也进行了构件化。具体技术包括:基于会话同步的界面嵌入、基于接口调用的异步查询以及基于echarts的大数据可视化构件应用。

应用领域层:分析平台的服务对象,可以是各业务领域的业务人员,也可以是相关业务领域的其它应用。

2 技术实现

2.1 综述

数据分析平台力求将高深的大数据挖掘以一种更加简洁的方式提供给广大用户并提供门户式的访问路径,使更多基层用户能分享到大数据建设的成果并应用到工作中。图2列出了本文的总体业务价值和技术体系,接下来将围绕着“提升用户体验”、“整合资源”、”系统灵活可订制”这3个方面深入进行探讨。

2.2提升数据分析用户体验方面的技术实现

2.2.1 基于OLAP+OLTP的双数据源消息队列设计助力数据分析

数据服务平台是基于OLAP系统开展数据分析工作。相较OLTP系统,OLAP的特点是存放海量数据,但联机响应效率相对较慢。为了确保数据分析平台有良好的用户体验,综合OLAP+OLTP的特点,构建了基于双数据源的消息队列处理机制。

该处理机制的核心思想是, 利用oracle数据库联机响应能力强的特点,将模型管理、查询队列等涉及联机交互的操作数据部署在oracle上,海量的业务数据仍保留在数据数据库上。通过ETL调度+消息队列的方式,将oracle的“快”数据以及数据仓库的”海量“数据粘合起来。

具体流程是: 用户通过前台提交查询请求,该查询请求存放在oracle数据库中;在ETL 调度服务器起服务,每间隔一段时间(可参数配置)扫描oracle的队列表,若发现待处理的请求,则根据优先级和并发数抓取一定数量的请求进行查询;ETL服务器上查询完成后,生成文件放到外置存储,同时更新oracle上消息队列表中的执行状态,供前台联机访问。

2.2.2 通过多级缓存设计提高数据分析采样访问效率

在数据分析的实际操作时,为确保样本数据的代表性,采样结果集往往非常大,如何对结果集进行有效管理,提高类似查询的效率也是平台在建设过程中需要解决的问题。

为实现结果的复用,提高业务数据的访问效率,数据分析平台对缓存进行了分层设计和实现。

根据使用特点,分为以下3个层次。

1) 本地缓存:定位为用于保存一些静态的参数,比如:字典类参数。在应用服务器启服务时读取oracle参数表的数值加载到本地内存中,供联机访问。

2) 分布式缓存:定位为存放一些动态变化且访问频次较高的数据。比如:用户最关心的模型信息,考虑到该信息访问频繁且由于用户可以实时部署模型存在动态变化的特点,为此在向数据库新增模型数据的同时向分布式缓存中写入模型信息,既提高了访问效率同时也减轻了数据库的压力。

3) 文件缓存:定位用于保存每次模型的查询结果。为提高查询结果的复用性,数据分析平台采用文本的方式保留查询结果。后续再次查询历史结果则可直接访问文件缓存即可,减少了再次查询的开销,提高了查询效率。

2.2.3 通过大数据可视化技术直观展现数据的内在联系

对于大数据分析而言,传统的表格形式无法直观的发现隐藏在复杂、多维数据后的规律,需要有一种直觉的、可交互的可视化环境来帮助深度挖掘数据价值。

大数据可视化的工作分为2个层面:静态展示和交互性。

其中,静态展示的实践可按照以下3个场景有针对性的开展:

1) 将数值图形化:当1个指标时,将数据的大小以图形的方式表现

2) 指标关系图形化:当存在多个指标时,挖掘指标之间的关系并将其图形化,可提升图表的可视化深度。

3) 按空间可视化:当图表数据存在地域信息并需要突出表现时,可用地图将空间可视化。

2.3 系统灵活可定制方面的技术实现

2.3.1 基于”双线程调度+用户在线定制“的数据分析预约采样功能

预约采样功能提供给分析人员在将来某个时间点或某段时间内周期性运行取数模型的功能。主要解决数据分析过程中2个业务问题:

1) 需定期获取采样数据的任务,免除了用户反复提交的重复劳动。

2) 充分利用计算资源空闲的特点,实现”晚上定时预约,白天看数”的工作模式,提高工作效率。

预约采样功能的具体技术实现由3部分组成:基于双线程的调度框架、 时间频度表达式和预定义时间变量和解析。

2.3.1.1 双线程调度框架

应用服务器上启动两个线程ScheduleCheck和ScheduleScan。 其中,线程 ScheduleCheck属于守护线程,负责监控线程ScheduleScan是否处于活动状态,若发现未启动则会通过new ScheduleScan().start() 自动启动ScheduleScan线程。线程ScheduleScan是工作线程,作为定时任务扫描预约规则表,根据时间频度表达式的计算,将达到执行周期的查询记录添加到查询队列中。该工作线程的扫描频度目前为10分钟,通过配置文件灵活配置。

2.3.1.2 时间频度表达式和解析

参照Quartz的Cron 表达式对频度定义的格式,通过自定义程序进行解析。

具体实现步骤如下:

①定义频度格式:在预约功能使用到了以下表的6个域,粒度到分钟

例如 每月15号的 10:15 AM 表示 0 15 10 15 * ?

②解析表达式,计算下次预约时间点:对于周期性运行的预约,将解析表达式后得到的频度与最后一次运行时间结合计算出下次预约的具体时间点。

③对满足时间窗口的预约触发查询:将前一步计算出的下次预约的具体时间点和当前扫描时间进行比较,若误差在10分钟以内,则认为达到预约窗口(考虑到轮询存在时间间隔),则将其对应的预约的查询任务添加到查询队列中并执行。

2.3.1.3 预先定义时间变量和解析

为解决周期性执行脚本中只是时间变量在变化的特点,预先定义了一批日期变量并应用到模型脚本中。当预约时间点到达并执行时,系统解析脚本中的时间变量替换成实际的日期后完成查询。例如:当系统读取到变量${TX_MONTH_END}时,系统用日期函数Calendar的getActualMaximum方法得到当前月份的最大日期,拼接当前年份和月份后组成当前月末的时间格式(yyyy-MM-dd),之后用这个时间替换掉查询脚本中的${TX_MONTH_END},然后执行。

2.4 整合第三方数据分析资源的技术实现

分析工具集实现了对各类第三方分析工具的资源整合,以门户的方式作为工具访问的统一入口。

根据工具的特点不同,资源整合可分以下几种:

1) 若工具本身是WEB应用,则通过URL进行调用。比如:配置联接"location.href=http://IP:6401/AnalyticsPlatform/Status"来访问SAS EM

2) 若工具本身是C/S软件,则在页面上通过windows的shell命令来调用客户端

var fso = new ActiveXObject("Scripting.FileSystemObject");

...

if (fso.FileExists(egPath)) {

var objShell = new ActiveXObject("Wscript.Shell");

objShell.exec(egPath);}

3) 若涉及其他类型的异构资源,则通过基于SOA的Webservice来进行异构系统的服务集成.具体方式是: 相关资源封装为webserivce,通过UDDI进行服务的发布(同步发布 WSDL web服务描述), 数据分析平台通过http协议检索WSDL获取对应的web service信息,然后通过SOAP协议进行远程调用;将调用结果在数据分析平台侧进行页面整合,然后提供给用户访问.

3 结束语

数据分析平台的业务价值是解决大数据分析过程中使用”易”的问题。数据分析平台力求将高深的大数据挖掘以一种更加简洁的方式提供给广大用户并提供门户式的访问路径,使更多基层用户能分享到我大数据的成果并应用到工作中。走出一条有特色的大数据分析业务推广之路:即因“使用易”到“受众广”,继而到大数据分析“应用深”的升华。

参考文献:

[1] 张良均,陈俊德,刘名军,陈荣.数据挖掘:实用案例分析[M].北京:机械工业出版社,2013.

[2] 陈哲.数据分析:企业的贤内助[M].北京:机械工业出版社,2013.

[3] 彭渊.大规模分布式系统架构与设计实战[M].北京:机械工业出版社,2014.

[4] IT架构设计研究组.大数据时代的IT架构设计[M].北京:电子工业出版社,2014.

[5] 陈康贤.大型分布式网站架构设计与实践[M].北京:电子工业出版社,2014.

[6] 李智慧.大型网站技术架构:核心原理与案例分析[M].北京:电子工业出版社,2013.

[7] 赵勇等.大数据革命——理论、模式与技术创新[M].北京:电子工业出版社,2014.

[8] 涂子沛.数据之巅:大数据革命,历史、现实与未来[M].北京:中信出版社,2014.

推荐访问:大数 服务平台 据分析 实践