大数据网站解决方案.doc

上传人:F****n 文档编号:90904349 上传时间:2019-06-20 格式:DOCX 页数:22 大小:38.71KB
返回 下载 相关 举报
大数据网站解决方案.doc_第1页
第1页 / 共22页
大数据网站解决方案.doc_第2页
第2页 / 共22页
大数据网站解决方案.doc_第3页
第3页 / 共22页
大数据网站解决方案.doc_第4页
第4页 / 共22页
大数据网站解决方案.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《大数据网站解决方案.doc》由会员分享,可在线阅读,更多相关《大数据网站解决方案.doc(22页珍藏版)》请在金锄头文库上搜索。

1、大数据网站解决方案篇一:基于大数据的能力开放平台解决方案基于大数据的能力开放平台解决方案1 摘要关键字:大数据 经分 统一调度 能力开放运营商经过多年的系统建设和演进,内部系统间存在一些壁垒,通过在运营商的各个内部系统,如经分、VGOP、大数据平台、集团集市等中构建基于ESB 的能力开放平台,解决了系统间调度、封闭式开发、数据孤岛等系统问题,使得运营商营销能力和效率大大提高。2 问题分析 背景分析随着市场发展,传统的开发模式已经无法满足业务开发敏捷性的要求。20XX 年以来,某省运营商经营分析需求量激增,开发时限要求缩短,业务迭代优化需求频繁,原有的“工单-开发”模式平均开发周期为 天,支撑负

2、荷已达到极限。能力开放使业务人员可以更便捷的接触和使用到数据,释放业务部门的开发能力。由于历史原因,业务支撑系统存在经分、VGOP、大数据平台、集团集市等多套独立的运维系统,缺乏统一的运维管理,造成系统与系统之间的数据交付复杂,无法最大化的利用系统资源。统一调度的出现能够充分整合现有调度系统,减少运维工作量,提升维护质量。驱动力一:程序调度管理混乱,系统资源使用不充分经分、大数据平台、VGOP、集团集市平台各自拥有独立的调度管理,平台内程序基本是串行执行,以经分日处理为例,每日运行时间为20 个小时,已经严重影响到了指标的汇总展示。驱动力二:传统开发模式响应慢,不能满足敏捷开发需求大数据平台已

3、成为一个数据宝库,已有趋势表明,只依赖集成商与业务支撑人员的传统开发模式已经无法快速响应业务部门需求,提升数据价值。驱动力三:大数据平台丰富了经分的数据源,业务部门急待数据开放某省运营商建立了面向企业内部所有部门的大数据平台,大数据平台整合了接入B域、O 域、互联网域数据,近100 余个数据接口,共计820T 的数据逐步投入生产。大数据平台增强了传统经分的数据处理的能力,成为公司重要的资产,但是传统经分数据仓库的用户主要面向业支内部人员,限制了数据的使用人员范围和数据的使用频度,已经无法满足公司日益发展的业务需求,数据的开放迫在眉睫。 问题详解基于背景情况分析,我们认为主要问题有三个:1、 缺

4、乏统一的调度管理,维护效率低下目前经分系统的日处理一般是使用SHELL 脚本开发的,按照串行调度的思路执行。进行能力开放后,目前的系统架构无法满足开发者提交的大量程序执行调度的运维需求。如果采用统一调度的设计思路则基于任务的数据表依赖进行任务解耦及调度,将大大简化调度配置工作和提高系统的并发度;2、 需求周期长,导致开发周期长现行的开发模式是由业务部门提出需求,业务支撑中心进行需求分析,然后再转派给开发厂商。厂商除了需要与业支沟通需求以外,有时候还需要与业务部门进行二次沟通,最终才能明确需求,开发周期比较长;3、 数据管理分散,存在数据冗余,营销效果欠佳经分系统对外提供数据,目前采用的是传统的

5、文件接口形式,这样会造成经分和外围系统存在至少2 份的数据,随着经分的按天支撑模式,造成传统的营销效果欠佳,外围系统的存储浪费。3 解决方案介绍 业务目标将大数据平台及经分数据仓库平台的数据和系统处理能力进行标准化封装,按需进行开放,满足各业务部门数据使用的需求,并在经验成熟的情况下逐渐开放给外部众多的合作伙伴使用。统一调度:作为大数据开放基础平台,通过消息总线将大数据平台、经分、集市、VGOP、业务部门的应用进行统一的系统调度管控,提供跨平台调度、分发、解析等基础功能,实现大数据平台、经分数据仓库等多类型底层平台的能力互补,形成融合平台的协作效应;通过多租户技术,解决生产任务与数据开放能力争

6、用的问题,实现系统资源对生产任务与临时任务的合理分配及高效调度。统一开发:集成图形化的开发界面,通过统一封装的函数库提供类SQL 的开发语言,以屏蔽底层平台差异,降低业务人员的开发门槛,实现快速的业务开发及数据测试。通过元数据的数据模型抽象,逐步将Hadoop、DB2 的后台数据资源高效、安全并可控可管的开放给前端进行访问。数据共享:大数据平台将用户标签、营销目标、用户套餐剩余量等信息通过统一的数据服务方式开放给其他系统或者在线使用,确保数据的唯一性和数据响应的及时性。 方案内容及亮点图为基于大数据的能力开放体系架构,我们在原有大数据平台上进行整合。使得大数据的成果能够有效的被外部系统调用,并

7、具备标准的服务能力供后续的系统对接。能力开放平台由统一调度、统一开发、数据共享三大平台组成:统一调度平台将原大数据平台、经分数据仓库、VGOP 平台等关联度高的独立应用系统的任务进行统一管理、执行调度及监控,提升整体的执行效率并简化运维。统一开发平台搭建于统一调度的基础之上,开发者可以通过IDE 使用封装后的函数,以SQL 脚本进行图形化的数据处理程序设计及开发。通过多租户的方式,对开发者分配独立的大数据平台及数据仓库的存储、计算资源,确保开发者在共享数据、系统能力的同时,不影响生产系统的正常运行。数据共享平台提供标准API 封装,提供给外部系统进行数据查询和调用,实现经分系统对外数据服务标准

8、化,同时保障数据安全性并降低外部系统数据存储压力。 统一调度统一调度由控制中心和AGENT 两部分组成,如下图所示:(1)控制中心: 控制中心接收来自内部的消息,通过规则引擎判断任务是否满足触发条件并分发给Agent 进行处理,并对任务执行情况进行监控及消息生成。消息接收:支持各种事件触发消息,如文件到达、接口装载、表生成; 规则引擎:根据人工定义、系统资源情况、租户定义等设置制定任务的执行条件及前后依赖关系;任务触发:根据消息总线传递的消息,判断任务是否具备执行条件,并将满足触发条件的任务分发至各平台Agent 端执行;篇二:数据库大数据访问的解决方案数据库大数据访问的解决方案当系统要满足每

9、秒数万次的读写请求的需求时,我们可以用分布式计算、编写优良的程序代码、对海量数据进行分区操作、建立广泛的索引、建立缓存机制、加大虚拟内存、分批处理、使用数据仓库和多维数据库存储、使用负载均衡技术、将数据库的读写分离等等来解决数据库大数据访问的问题。随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用,每天百万级甚至上亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。 一、那么数据库如何处理海量数据呢?1、编写优良的程序代码处理数据离不开优秀的程序代码,尤其在进行复杂数据处理时,必须使用程序。好的程序代码对数据的处理至关

10、重要,这不仅仅是数据处理准确度的问题,更是数据处理效率的问题。良好的程序代码应该包含好的算法,包含好的处理流程,包含好的效率,包含好的异常处理机制等。2、对海量数据进行分区操作对海量数据进行分区操作十分必要,例如针对按年份存取的数据,我们可以按年进行分区,不同的数据库有不同的分区方式,不过处理机制大体相同。例如SQL Server的数据库分区是将不同的数据存于不同的文件组下,而不同的文件组存于不同的磁盘分区下,这样将数据分散开,减小磁盘I/O,减小了系统负荷,而且还可以将日志,索引等放于不同的分区下。3、建立广泛的索引对海量的数据处理,对大表建立索引是必行的,建立索引要考虑到具体情况,例如针对

11、大表的分组、排序等字段,都要建立相应索引,一般还可以建立复合索引,对 经常插入的表则建立索引时要小心,笔者在处理数据时,曾经在一个ETL流程中,当插入表时,首先删除索引,然后插入完毕,建立索引,并实施聚合操作,聚合 完成后,再次插入前还是删除索引,所以索引要用到好的时机,索引的填充因子和聚集、非聚集索引都要考虑。4、加大虚拟内存如果系统资源有限,内存提示不足,则可以靠增加虚拟内存来解决。笔者在实际项目中曾经遇到针对18亿条的数据进行处理,内存为1GB,1个P4 的CPU,对这么大的数据量进行聚合操作是有问题的,提示内存不足,那么采用了加大虚拟内存的方法来解决,在6块磁盘分区上分别建立了6个 4

12、096M的磁盘分区,用于虚拟内存,这样虚拟的内存则增加为 4096*6 + 1024 = 25600 M,解决了数据处理中的内存不足问题。5、分批处理海量数据处理难因为数据量大,那么解决海量数据处理难的问题其中一个技巧是减少数据量。可以对海量数据分批处理,然后处理后的数据再进行合并操作,这样逐 个击破,有利于小数据量的处理,不至于面对大数据量带来的问题,不过这种方法也要因时因势进行,如果不允许拆分数据,还需要另想办法。不过一般的数据按 天、按月、按年等存储的,都可以采用先分后合的方法,对数据进行分开处理。6、使用数据仓库和多维数据库存储数据量加大是一定要考虑OLAP的,传统的报表可能5、6个小

13、时出来结果,而基于Cube的查询可能只需要几分钟,因此处理海量数据的利器是OLAP多维分析,即建立数据仓库,建立多维数据集,基于多维数据集进行报表展现和数据挖掘等。7、使用采样数据,进行数据挖掘基于海量数据的数据挖掘正在逐步兴起,面对着超海量的数据,一般的挖掘软件或算法往往采用数据抽样的方式进行处理,这样的误差不会很高,大大提高了处理效率和处理的成功率。一般采样时要注意数据的完整性和,防止过大的偏差。笔者曾经对1亿2千万行的表数据进行采样,抽取出400万行,经测试软件测试处理的误差为千分之五,客户可以接受。还有一些方法,需要在不同的情况和场合下运用,例如使用代理键等操作,这样的好处是加快了聚合

14、时间,因为对数值型的聚合比对字符型的聚合快得多。类似的情况需要针对不同的需求进行处理。海量数据是发展趋势,对数据分析和挖掘也越来越重要,从海量数据中提取有用信息重要而紧迫,这便要求处理要准确,精度要高,而且处理时间要短,得到有价值信息要快,所以,对海量数据的研究很有前途,也很值得进行广泛深入的研究。二、下面注意讲解下负载均衡技术、数据库的读写分离、数据库拆分1、负载均衡技术负载均衡集群是由一组相互独立的计算机系统构成,通过常规网络或专用网络进行连接,由路由器衔接在一起,各节点相互协作、共同负载、均衡压力,对客户端来说,整个群集可以视为一台具有超高性能的独立服务器。实现原理实现数据库的负载均衡技

15、术,首先要有一个可以控制连接数据库的控制端。在这里,它截断了数据库和程序的直接连接,由所有的程序来访问这个中间层,然后再由中间层来访问数据库。这样,我们就可以具体控制访问某个数据库了,然后还可以根据数据库的当前负载采取有效的均衡策略,来调整每次连接到哪个数据库。实现多据库数据同步对于负载均衡,最重要的就是所有服务器的数据都是实时同步的。这是一个集群所必需的,因为,如果数不据实时、不同步,那么用户从一台服务器读出的数据,就有别于从另一台服务器读出的数据,这是不能允许的。所以必须实现数据库的数据同步。这样,在查询的时候就可以有多个资源,实现均衡。比较常用的方法是Moebius for SQL Server集群,Moebius for SQL Server集群采用将核心程序驻留在每个机器的数据库中的办法,这个核心程序称为Moebius for SQL Server 中间件,主要作用是监测数据库内数据的变化并将变化的数据同步到其他数据库中。数据同步完成后客户端才会得到响应,同步过程是并发完成的,所以同步到多个数据库和同步到一个数据库的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号