《数据库投资商和企业数据采集处理项目技术方案.docx》由会员分享,可在线阅读,更多相关《数据库投资商和企业数据采集处理项目技术方案.docx(56页珍藏版)》请在课桌文档上搜索。
1、数据库投资商和企业数据采集处理项目技术方案投资商与企业数据采集处理项目项目编号:15300000000617001206技术方案XXX有限公司二。一七年六月1引言31.1 项目背景31.2 项目目标31.3 建设原则31.4 参考规范41.5 名词解释52云数据采集中心72.1 需求概述72.2 总体设计72.3 核心技术及功能93大数据计算平台323.1 需求概述323.2 总体设计323.3 数据模型设计334数据运营364.1 数据挖掘分析364.2 数据分析处理的要紧工作364.3 数据分析团队组织与管理375安全设计406风险分析447部署方案458实施计划469技术规格偏离表471
2、0售后服务承诺5011关于运行保护的承诺5312保密措施及承诺5413培训计划561引言1.1 项目背景XXX大数据中心建设出发点考虑从投资者角度涵盖招商全流程,尽可能为投资者解决项目实施过程中的困难与问题,便于招商部门准确掌握全省招商数据,达到全省招商项目数据共享,形成全省招商工作“一盘棋、一张网、一体化”格局。大数据中心将充分发挥大数据优势,加强对企业投资项目、投资轨迹分析,评估出其到XX投资的可行性,为招商过程留下痕迹、找到规律、明辨方向、提供“粮食”、提高效率,实现数据寻商、数据引商、数据助商,实现数据资源实时共享、集中管理、随时查询,实现项目可统计、可监管、可协调、可管理、可配对、可
3、跟踪、可考核。本次数据运营服务要紧是为大数据平台制定数据运营规范及管理办法,同时为“企业数据库”提供数据采集、存储与分析服务,并根据运营规范要求持续开展数据运营服务。1.2 项目目标 制定招商大数据运营规范及管理办法。 制定招商大数据有关元数据标准,完成有关数据的采集、整理与存储。 根据业务需求,研发招商大数据招商业务分析模型,并投入应用。 根据运营规范及管理办法的要求持续开展数据运营工作。1.3 建设原则基于本项目的建设要求,本项目将遵循下列建设原则: 前瞻性与高标准整个项目要按照企业对大数据应用的需要的高要求与高标准建设,参考行业标杆应用,建立满足需求,面向未来的目标,整个项目具有一定前瞻
4、性。 经济性与有用性整个项目以现有需求为基础,充分考虑未来进展的需要来确定系统的架构,既要降低系统的初期投入,又能满足服务对象的需求,同时系统设计应充分考虑对已有投资的保护,对已建立的数据中心、基础平台、应用软件应提供完备的整合方案。 先进性与成熟性为了确保项目具有较长的生命周期,应充分考虑到管理创新、技术进展需要,按照先进的建设理念,选择先进的技术架构与成熟技术,满足业务需求。 高性能与安全性规范地进行系统建设与开发,提供合理且经济有效的应急方案,确保系统的稳固,向各类服务对象提供可靠的服务。具有安全性,在系统遭到攻击或者崩溃时能快速恢复,确保重要数据的机密性与完整性。1.4 参考规范GB/
5、T20269-2006信息安全技术一信息系统安全管理要求GB/T20984-2007信息安全技术一信息安全风险评估规范GB/T 22239-2008信息安全技术一信息系统安全等级保护基本要求GB/T 22240-2008信息安全技术一信息系统安全等级保护定级指南GA/T388-2002B计算机信息系统安全等级保护管理要求GB/T8567-1988计算机软件产品开发文件编制指GB/T11457-1995软件工程术语GB/T11457-2006信息技术软件工程术语GB/T16260.1-2006软件工程产品质量第1部分:质量模型GB/T 16260.2-2006 软件工程产品质量第2部分:外部度量
6、GB/T 16260.3-2006 软件工程产品质量第3部分:内部度量GB/T 16260.4-2006 软件工程产品质量 第4部分:使用质量的度量GB/T14394-2008计算机软件可靠性与可保护性管理GB/T17544-1998信息技术软件包质量要求与测试1.5 名词解释 S2DFS:简单存储分布式文件系统(SimpleStorageDistributedFileSystem) D2B:分布式数据库(DiStribUtedDatabaSe) JSS:作业调度服务(JobSehedUIerSerViCe) DCS:数据计算服务(DataComputerServrice) MPS:消息处理服
7、务(MessageProcessSendee) SDS:流数据处理服务(StrCamDataSerViCe) DMQ:分布式消息队列(DiStribUtedMeSSageQUeUe) JGS:作业生成服务(JObGeneratiOnSerViCe) ACS:自动清理服务进程(AUtOmatiCQeaningSerViCeS) SMB:服务器信息块协议(ServerMessageBlock)2云数据采集中心2.1 需求概述根据规划,云数据采集中心的建立至少满足1至2年内的数据存储与计算规模,需要满足:数据采集范围包含但不限于世界500强、全国500强、行业20强企业有关数据。总数据容量至少达到3
8、0T。2.2 总体设计整个云数据采集中心分为三部分:硬件资源层、软件平台层、软件应用层。硬件资源层要紧指实体硬件设备,包含用来存储数据的光纤阵列柜与存储服务器用来作统计分析与搜索用的计算服务器用来部署分布式消息DMQ)/WEB/APP软件的WEB及消息服务器,用来部署用PostgreSQL关系数据库软件的应用数据库服务器,用来部署作业调度服务进程(JSS)的作业调度服务器。作为数据通信用的全千兆三层交换机等等淇中光纤阵列柜要紧用来存储统计分析后的粗颗粒度数据。存储服务器用来部署分布式文件系统与分布式数据库,同时存储非结构化与结构化(台标图片,电商图片等等)与结构化数据行为数据,索引数据,log
9、数据,清理后的细颗粒度数据等等)计算服务器要紧用来完成数据的清理、统计、搜索等计算任务。为了节约成本与减少通信代价,建议存储服务器与计算服务器合二为一,因此该服务器同时具有计算与存储数据的功能,前期也能够考虑把作业调度服务进程(JSS)进程部署在存储/计算服务器上。由于云数据采集中心需要面对多种宽带用户(电信、移动、联通)因此,数据中心的对外的网络需要直连上电信、移动、联通三家公司的网络,保证以上三家公司间的通信性能高速与可靠。软件平台层是云数据采集中心的核心支撑层,也是我们这次方案设计与实施的主体部分,在核心技术章节会对“分布式文件系统(S2DFS)”、“分布式数据库(D2B)”、“分布式消
10、息服务(DMQ)”“作业调度服务进程(JSS)、数据计算服务进程(DCS)”要紧部分加以全面的描述。软件平台层的所有服务器都统一部署的64位操作系统CentOS6.5(也能够选择RHEL6.5x64);其核心软件或者者进程有:分布式文件系统(S2DFS)、分布式数据库(D2B)、作业调度服务进程(JSS)、数据计算服务进程(DCS)、作业生成服务进程(JGS)消息处理服务进程(MPS)、流数据处理进程(SDS)等等。WEB及应用服务器软件Apache&Tomcat,消息队列软件分布式消息(DMQ)。还要实现整个云数据采集中心的资源管理及监控管理系统。软件应用层是云数据采集中心的功能实现及UI表
11、达层,功能实现需要基于软件平台层的支撑,后期设计与实施的主体。该层的要紧功能应用有:数据采集应用、数据统计应用、云数据采集中心的资源监控及调度。开放 平台CentOS 6.5 64睡4BI-:奈存储设备网络设备服务器设备企业数据采集,投资商数据采柒,采柒任务管理I云数据管理I云中心监控云数据采集中心整体架构图云数据采集中心网络结构图2.3 核心技术及功能2.3.1 分布式文件存储技术(1) 传统存储技术面临的问题: 构建成本高:大容量及高网络带宽的高端存储系统架构昂贵。 文件系统功能与性能差强人意:难以实现全局命名空间的文件共享、文件系统难以扩展,容易形成瓶颈。 扩展性困难:技术存在瓶颈(Sc
12、ale-up架构决定的)扩展成本无法操纵。 可用性问题:潜在的单点故障,数据恢复困难,代价高。应用目标差异:要紧面临运营商、金融行业的OLTP应用、很少针对海量的流数据,或者者非结构化数据进行设计与优化。异构设备繁杂:不一致时期、不一致公司、不一致操作系统的异构设备纷繁复杂,无法整合,资源利用率极低。分布式文件系统要紧为解决以上问题而出现的一种新型大规模数据存储技术架构。要紧为非结构化数据(视频/文件/文档/图像/音频等非结构化数据)提供海量的存储平台,以集群的方式提供线性横向扩展能力。分布式文件系统是一种构建于通用86部件之上的高可用、高可靠、高可扩展的新型分布式文件系统。应用分布式文件系统
13、,用户能够使用廉价可靠的通用服务器、SATA/SAS硬盘与以太网络来构建媲美企业级存储产品的存储系统。(2) 分布式文件系统应对的数据特性与访问特性: 数据量巨大,数百TB或者PB级,增长迅速; 类型多样化,包含图像、文本、语音、视频等文件数据; 按时间有序生成,数据均带有的时候间标志; 前端数据写入速度很高,每秒钟写入数据可达几万甚至几十万条记录或者者上GB量数据; 更新操作极少:追加方式写入,一旦写入,几乎没有数据修改,查询涉及大量的磁盘读操作,查询处理产生大量的临时结果,不一致类型的数据存在联合分析查询;分布式文件系统的基本原理是使用集群方式来整合物理上独立的多个存储资源,以软件方式提供
14、单一的名字空间使用多副本的方式保证数据的高可用性,任意单一节点失效均不可能导致数据丢失与数据服务的正常运行;同时,分布式文件系统通过良好设计的系统结构与数据分布策略,可保证系统性能的高可扩展性,并支持存储容量/性能的在线扩展。相比较于DAS(直连存储)SAN(存储区域网络)与NAS(网络存储)应用分布式文件系统构建的网络存储系统更像是一个NAS提供类似于传统NAS的文件级访问接口(SAN与DAS都是块设备级别的访问接口)(3) 分布式文件系统与传统NAS/SAN设备的比较:比较项高端NASFC-SAN分布式文件系统性能通常双端口,性能受机头影响,难以扩展,出口带宽是瓶颈通常双端口,性能受机头影
15、响,难以扩展,IOPS较好性能随节点数的增加成线性增长扩展能力性能及容量无法扩展,或者者有限扩展能较好扩展,但成本高昂性能及容量按需扩展,动态均衡可用性RAID方式保护,双机保护,停机RAIDRebuid,耗时RAID方式保护,双机保护,停机RAIDRebuid,耗时基于灵活的多副本机制,自动检测,自动故障恢复,无需停机数据管理企业级功能需要单独购买企业级功能需要单独购买(还需要单独的文件系统,100多万一套)内嵌多种企业级应用:快照、镜像、回收站成本专有的硬件平台,软件拥有成本高,扩展成本高专有的硬件平台,软件拥有成本高,扩展成本高开发通用的硬件平台,一体化的软件,成本低,扩展成本低可保护性
16、专门的技术支持服务,需要培训结构特殊复杂,需要大量培训,厂商服务昂贵内嵌多种自动化的故障检测与恢复功能,国内开发,技术支持快速用户使用分布式文件系统如同使用本地文件系统。所不一致的是,传统NAS通常以单一节点的方式实现,容量与性能的扩展能力有限,易于成为性能瓶颈与单一故障点。而分布式文件系统则有多个节点集合地提供服务由于其结构特征,分布式文件系统的性能与容量均可在线线性扩展,同时系统内不存在单一故障点。对比参看下面两幅示意图:传统存储架构图分布式文件系统架构图分布式文件系统的设计应用特别适合海量非结构化数据存储,大量客户端并发的I/O密集型应用。目前,分布式文件系统已经被应用于政府、医疗影像、
17、勘查数据计算、视频服务与动画制作等领域。这些领域的数据访问特征均为:数据量巨大,I/O吞吐率高,数据增长迅速与数据可用性要求高。通过长时间的实际生产环境使用,分布式文件系统已被证明是该类型应用的有效解决方案。布式文件系统的服务器端程序运行于LinUXX64系统之上,支持多种LinUX64位发行版,包含RedhatCentOS等。分布式文件系统客户端则支持Linux与Windows,同时分布式文件系统还能够通过第三方软件输出CIFS与NFS接口,能够兼容大多数应用。(4) 分布式文件系统的核心技术及特征:扩展性与高性能:分布式文件系统利用双重特性来提供几TB至数PB的高扩展存储解决方案。SCaQ
18、OUt架构同意通过简单地增加资源来提高存储容量与性能,磁盘、计算与I/O资源都能够独立增加,支持IOGbE与InfiniBand等高速网络互联。分布式文件系统弹性哈希(ElaStiCHash)解除了分布式文件系统对元数据服务器的需求,消除了单点故障与性能瓶颈,真正实现了并行化数据访问。 高可用性:分布式文件系统能够对文件进行自动复制,如镜像或者多次复制,从而确保数据总是能够访问,甚至是在硬件故障的情况下也能正常访问。自我修复功能能够把数据恢复到正确的状态,而且修复是以增量的方式在后台执行,几乎不可能产生性能负载。分布式文件系统没有设计自己的私有数据文件格式,而是使用操作系统中主流标准的磁盘文件
19、系统(如XFS/EXT4/ZFS)来存储文件,因此数据能够使用各类标准工具进行复制与访问。 全局统一命名空间:全局统一命名空间将磁盘与内存资源聚集成一个单一的虚拟存储池,对上层用户与应用屏蔽了底层的物理硬件。存储资源能够根据需要在虚拟存储池中进行弹性扩展,比如扩容或者收缩。当存储虚拟机映像时,存储的虚拟映像文件没有数量限制,成千虚拟机均通过单一挂载点进行数据共享。虚拟机I/O可在命名空间内的所有服务器上自动进行负载均衡,消除了SAN环境中经常发生的访问热点与性能瓶颈问题。 弹性哈希算法:分布式文件系统使用弹性哈希算法在存储池中定位数据,而不是使用集中式或者分布式元数据服务器索引。在其他的Sca
20、le-Out存储系统中,元数据服务器通常会导致I/O性能瓶颈与单点故障问题。分布式文件系统中,所有在SCalC-OUt存储配置中的存储系统都能够智能地定位任意数据分片,不需要查看索引或者者向其他服务器查询。这种设计机制完全并行化了数据访问,实现了真正的线性性能扩展。 弹性卷管理:数据储存在逻辑卷中,逻辑卷能够从虚拟化的物理存,不可能导致应用中断。逻辑卷能够在所有配置服务器中增长与缩减,能够在不一致服务器迁移进行容量均衡,或者者增加与移除系统,这些操作都可在线进行。文件系统配置更换也能够实时在线进行并应用,从而能够习惯工作负载条件变化或者在线性能调优。 完全软件实现(SoftwareOnly)分
21、布式文件系统认为存储是软件问题,不能够把用户局限于使用特定的供应商或者硬件配置来解决。分布式文件系统使用开放式设计,广泛支持工业标准的存储、网络与计算机设备,而非与定制化的专用硬件设备捆绑。关于商业客户,分布式文件系统能够以虚拟装置的形式交付,也能够与虚拟机容器打包,或者者是公有云中部署的映像。开源社区中,分布式文件系统被大量部署在基于廉价闲置硬件的各类操作系统上,构成集中统一的虚拟存储资源池。简而言之,分布式文件系统是开放的全软件实现,完全独立于硬件与操作系统。 完整的存储操作系统栈(COmPIeteStorageC)PCratingSyStemStaCk:分布式文件系统不仅提供了一个分布式
22、文件系统,而且还提供了许多其他重要的分布式功能,比如分布式内存管理、I/O调度、软RAID与自我修复等。分布式文件系统汲取了微内核架构的经验教训,借鉴了GNU/Hurd操作系统的设计思想,在用户空间实现了完整的存储操作系统栈。 用户空间实现(USerSPaCCJ与传统的文件系统不一致,分布式文件系统在用户空间实现,这使得其安装与升级特别简便。 模块化堆栈式架构(ModUlarStaCkabIeArChitCCtUreJ分布式文件系统使用模块化、堆栈式的架构,可通过灵活的配置支持高度定制化的应用环境,比如大文件存储、海量小文件存储、分布式文件系统、多传输协议应用等。每个功能以模块形式实现,然后以
23、积木方式进行简单的组合,即可实现复杂的功能。比如,Replicate模块可实现RAIDl,Stripe模块可实现RAIDO,通过两者的组合可实现RAIDlO与RAIDOl,同时获得高性能与高可靠性。 原始数据格式存储(DataStoredinNatiVeFOrmatSJ分布式文件系统以原始数据格式(如EXT3、EXT4XFSZFS)储存数据,并实现多种数据自动修复机制。因此,系统极具弹性,即使离线情形下文件也能够通过其他标准工具进行访问。假如用户需要从分布式文件系统中迁移数据,不需要作任何修改仍然能够完全使用这些数据。 无兀数据服务设计(NQMetadatawiththeElasticHash
24、AlgorithmJ)对Scale-Out存储系统而言,最大的挑战之一就是记录数据逻辑与物理位置的映像关系,即数据元数据,可能还包含诸如属性与访问权限等信息。传统分布式存储系统使用集中式或者分布式元数据服务来维护元数据,集中式元数据服务会导致单点故障与性能瓶颈问题,而分布式元数据服务存在性能负载与元数据同步一致性问题。特别是关于海量小文件的应用,元数据问题是个非常大的挑战。分布式文件系统特殊地使用无元数据服务的设计,取而代之使用算法来定位,服务器都能够智能地对文件数据分片进行定位,仅仅根据文件名与路径并运用算法即可,而不需要查询索引或者者其他服务器。这使得数据访问完全并行化,从而实现真正的线性
25、性能扩展。无元数据服务器极大提高了分布式文件系统的性能、可靠性与稳固性。(5) 分布式文件系统技术及性能指标: 支持设备数量:最大百万台以上 支持存储容量:最大1024PB以上 客户端的数量:最大支持上亿并发 网络支持:以太网:IGbps、IOGbPS/INFINIBAND:1OGbps40Gbps 文件副本数量:任意(缺省1份) 支持文件数量:最大上亿个文件 最大单个文件:16TB(6) S2DFS与HDFS的比较对比项HDFS(GFS)S2DFS架构类型带元数据库中心架构(瓶颈及故障易发生点)全分布式去中心架构存在方式分布式文件系统软件,基于x86平台使用方式CLI/RESTAPINATl
26、VECLIENT/CIFS/NFS标准协议(应用代码与平台无关性,便于移植与保护)系统可用性低高数据可用性复制类RAID数据定位方式INodeHash同步方式异步同步负载均衡自动自动支持网络千兆以太网千兆/万兆以太网,IB网网络写:读(万兆/单流)约100MBs:160MBs约800MBs:1000MBs读(l*20GB)(万兆)约125s约25s写(1*20GB)(万兆)约200s约20s读/写(千兆)差距不大2.3.2分布式并行计算技术(1) 概述并行计算技术真正将传统运算转化为并行运算,从而更加充分的利用广泛部署的普通计算资源实现大规模的运算与应用的目的在此基础上为第三方开发者提供通用平
27、台,为客户提供并行服务。这里要紧为门户网站提供作业调度平台,实现日志分析,性能优化,全文检索,视频处理,用为分析等等的支撑平台。用户通过统一计算平台把任务分派给系统内的多个节点,调度节点资源执行任务,发挥多核并行处理优势,提升运算效率,充分运用网络内的计算资源达到解决大规模计算问题的目的。(2) 分布式并行计算架构图客户端应用(政府/电信/电商/金融/地理/)结构化数据/非结构化数据 分布式文件系统/分布式数据库分布式并行计算架构图(3) 作业调度及计算过程PaaS平台平台负责将并行于任务进行调度,自动的从系统中分配计算资源(4) 分布式并行计算技术特点池化资源管理利用池化技术,任何一台联在互
28、联网上的普通PC机从硬件到软件,可通过池化技术加入服务器池中,等待任务分配,系统能充分利用现有服务器资源,将所有运算子任务分配给节点服务器,有效避免计算资源闲置现象的发生。无中心系统架构在平台管理下的单节点能力一致,使节点在部署上与使用上具备无差别性,任一节点功能可由其他节点替代或者强化,能够最大程度确保平台资源使用的灵活性与在灾备环境下的可靠性系统架构。Z网络内节点具备相同的能力,既可作为客户端收发任务,又可作为服务器进行任务处理,使整个 网络形成无中心的资源架构)单节点能力 同质通道式工作机制平台为用户提供一个并行任务处理通道,处理过程对用户来说完全透明,由平台自动进行负载均衡、资源匹配、
29、任务传输等,使用户专注于自身任务管理,将执行过程交由平台完成。行辑分 并遗拆为用上提供端到端的任务处理能力且对用户透明,降低使用门槛负囊均衡MPl通信子寻址2.3.3分布式数据库技术D2B是一个具有高性能的高性能,可扩展,无模式,面向文档(document-oriented)的数据库,其内存储的是一种JSoN-Iike结构化数据的分布式数据库软件特别具有高扩展性与高可靠性支持大表水平折分与分区镜像。提供内存缓存数据,因此数据存取速度非常快,要紧是由于它处理写入的方式:它们存储在内存中,然后通过后台线程写入磁盘。该软件支持的数据结构非常松散,是类似Json的bjson格式,因此能够存储比较复杂的
30、数据类型。D2B另外的最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎能够实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。它的特点是高性能、易部署、易使用,存储数据非常方便。要紧功能特性:面向集合存储,易存储对象类型的数据“面向集合(COllenCtion-OrientCd),意思是数据被分组存储在数据集中,被称之一个集合(ConenCtion)。每个集合在数据库中都有一个唯一的标识名,同时能够包含无限数目的文档。集合的概念类似关系型数据窿RDBMS里的表table)不一致的是它不需要定义任何模式schema)。模式自由模式自由(SChema-
31、free),意味着关于存储在D2B数据库中的文件,我们不需要明白它的任何结构定义。假如需要的话,你完全能够把不一致结构的文件存储在同一个数据库里。 自动分片以支持云级别的伸缩性:自动分片功能支持水平的数据库集群,可动态添加额外的机器。 支持动态查询 支持完全索引,包含内部对象。 自动处理碎片,以支持云计算层次的扩展性。 可通过网络访问 可用于Windows、MacOSXLinux与Solaris的官方二进制版本。 可用于C、C#、C+HaskelRJavaJavaScriptPerkPHP、Python、Ruby与Scala的官方驱动程序,与广泛可用于其他语言的社区支持的驱动程序。 Ad-ho
32、cJavaScript查询让您能够使用基于任何文档属性的任何条件来查找数据。这些查询对应于SQL查询的功能,使SQL开发人员能够很直观地编写D2B查询。 支持查询中的正则表达式。 D2B查询结果存储在提供过滤、聚合与排序等一系列功能的游标中,包括limit。、skip()sort()count。、distinct()与group()等等高级特性。 高级聚合的map/reduce实现。 类似于RDBMS的属性索引支持,能够直接在文档的选定属性上创建索引。 使用提示、解释计划与分析的查询优化特性。 类似于MySQL的主/从复制,支持复制与故障恢复。 基于集合的对象存储,在需要规范化数据时同意参考查
33、询。 通过自动分片功能水平扩展。 高性能无争用并发机制的即时更新。D2B服务端可运行在Linux、Windows或者OSX平台,支持32位与64位应用。推荐运行在64位平台,由于D2B在32位模式运行时支持的最大文件尺寸为2GB。分布式数据库(D2B)集群示例图D2B与关系型数据库的逻辑结构对比:D2B关系型数据库数据库(database)数据库(database)集合(COneCtion)表(table)文档(document)行(row)D2B的性能指标:10亿约600GB以上(与每条记录大小有关系,这里的数据:IKb/条)写(1亿,无索引)约15000-20000条/s写(1亿,有索引)
34、约10000条/s写(1亿:ReplicaSets+Sharding模式)约6000-8000条/s读(1亿)约80MB-120MB/s读(1亿)8000-10000个查询/s统计一个值(10亿)1024(理论上)测试环境的硬件配直:ImelXeonE7-88372路16核心,256GB内存,15kSAS16*600GB硬盘,RAID50;总共12台设备;D2B的架构模式:ReplicaSets+Shardingo2.3.4负载均衡1)开源负载均衡软件比较LVSNginxHAProxyLVS(IJnuxVirtualScrcr)能够实现LinUX平台下的负载均衡,提供了含有三种IP负载均衡技术
35、的IP虚拟服务器软件IPVS基于内容请求分发的内核Layer_7交换机KTCPVS与集群等功能1、抗负载能力强、是工作在网络4 层之上仅作分发之用没有流量的 产生这个特点也决定了它在负载 均衡软件里的性能故强的;2、配置性比较低,这是一个缺点 也是一个优点由于没有可太多配 置的东西,因此并不需要太多接 触,大大减少了人为出错的几率;3、工作稳固,自身有完整的双机 热备方案,如LVS+Kccpalivcd与 LVS+ Heartbeat;4、无流量,保证了均衡器IO的 性能不可能收到大流量的影 响;2、NginX对网络的依靠非常小,理 论上能Ping通就就能进行负载功 能;3、NginX安装、配
36、置、保护比较简 单;4、能够承担高的负载压力且稔固, 通常能支撑超过几万次的并发量;5、NginX能够通过端口检测到服务 器内部的故障,不支持Url来检测;6、NginX也可作为WCb反向加速缓 存器;1、能够补充Nginx的一些缺点比如 Session的保持,Cookie的引导等工 作;2、HAPrOXy对网络的依靠非常小, 理论上能Ping通就就能进行负载 功能;3、它跟LVS一样,本身仅仅就只 是一款负载均衡软件学纯从效率 上来讲HAProxy更会比Nginx有更 出色,在并发处理上也是优于 Nginx;4、HAPrOXy安装、配置、保护比 较 简单;5、能够承担高的负载压力且稳固,建议
37、用Nginx(或者者HAProxy)作为负载均衡(反向代理)软件配合硬件负载均衡使用。毕竟选择Nginx还是HAProxy要看团队对这两种软件的熟悉程度,越熟悉,就能容易掌控,减少风险,我们团队对Nginx非常熟悉,因此,这里我们推荐用Nginx作为软件的反向代理工具。2.3.5数据采集1)概述数据采集功能要紧完成海量数球集、上传。数据采集的来源有:国家工商局、企业网站、百度、谷歌等。根据特定的数据源,不一致应用,不一致类型的数据进行收集,并提供统一的数据采集方式,方便后台数据集成、数据存储。数据采集结构图:t第线得敏IR采集模块AMKDMQ是一个分布式的消息服务平台,提供的功能包含:配置保护
38、、名字服务、分布式同步、组服务等,能提供一种高性能、可靠的、可扩展的、分布式的、可配置关键特性,DMQ的核心技术特点:大容量堆内存与高可用性:假设你有100台服务器,同时每个节点有2GB的空间用于复制缓存,最终你获得的总数据量的大小为200GB,每台服务器仅仅是一个拷贝。相反,借助于分布式复制架构,可获得IoOGB的备份虚拟堆内存,同时在网格中的任何位置都能访问。假如某台服务器崩溃了,网格只需要简单地创建一份丢失数据的新副本,并将它们放到另一台服务器上。应用也无需再借助于一个巨大的独立数据库来获取数据以追求最大性能的-这是80%以上的企业应用中的瓶颈所在!扩展性:由于数据是均匀分布的,因此除了
39、考虑到网络上的组通讯,根本就没有必要来限制网格的大小网络上的组通讯只要能够发现一个新的节点即可.所有的数据获取方式都是通过点对点通信,即节点之间直接进行通信,非常容易操纵。DMQ的增加或者者减少不需要关闭整个服务。简单的添加删除集群中的机器不可能引发任何服务中断。数据分布DMQ使用一致性哈希算法来决定集群中键值的存储位置。一致性哈希算法成本低,速度快同时最重要的是不需要额外的元数据或者者网络通信就能确定键值的位置。数据分布的目的是为了在集群环境下保持足够的状态副本以使其具备可持续性与容错性,但是又不会有过多的副本而阻碍DMQ的可扩展性。 原子性:-个Update操作不是成功就是失败不可能有第三
40、种状态出现。 顺序性:在一个DMQ集群中,其中一台DMQ服务器上的消息a在消息b之前公布,那么在所有的DMQ服务器上的消息a都会在消息b之前被公布,DMQ会保持一致顺序。 实时性:关于每个CUent,DMQ集群中的所有服务器都会保持实时更新制度,使得所有的服务视图都会是最新的。 分布式统一镜像:CIient不管连接到集群中的哪一个DMQ集群节点服务,都是得到同样的镜像视图。可靠性:数据在内存中缓存了2份,任何一台计算机故障,都不可能造成数据的丢失。2)分布式消息管理架构图:DMQ有下列几种关键较色,每类较色的职责如下表格描述?角色名称职责领导者(LCader)就是DMQ集群的老大,它不同意CI
41、ient的请求,是管理其他DMQ服务的,只负责进行投票的发起与决议,最终更新状态.追随者(Follower)追随者(Follower)的上司是领导者(Leader),参与领导者(Leader)发起的投票,向下是面向客户端的交互,用于接收客户端的请求与反馈客户端的结果。参与领导者(Leader)发起的投票。观察者(ObSerVer)观察者能够接收客户端连接,将写请求转发给领导者(Leader)节点。但是ObSerVer不参加投票过程,只是同步领导者(Leader)的状态。ObSerVer为系统扩展提供了一种方法。DMQ的核心是原子广播,这个机制保证了各个SerVer之间的同步,有两种模式,它们分
42、别是恢复模式与广播模式。恢复模式:通常是在服务刚启动或者者在领导者(IfadCr)崩溃后,开始进入恢复模式,如今先就会开始选举领导者(Leader)当领导者(Leader)被选举出来,同时追随者(Follower)完成了与当前领导者(Leader)的状态及数据同步以后,恢复模式就结束了。广播模式:恢复模式结束后,即领导者(Leader)已经与追随者(FoIIoWCr)进行了状态同步以后,他就能够开始广播消息了,即进入广播状态。3)分布式消息数据架构图:上图的MM(MessagesManager)消息数据管理者。通过嵌入式nosql内核完成上百万并发量的缓存数据来提供异步公布与订阅。应用程序通过
43、JDBe/REST/MemCaChed等符合业界标准接口完成集群中的消息缓存数据的操作,集群成员之间也通过该接口完成成员之间的数据同步,状探测步。4)典型分布式消息平台比较:由于常见的RabbitMQ、ActiveMQ与ZeroMQ消息中间件不具备分布式功能,因此不在比较之列。数据采集中心面对的是高并发海量数据上传,因此分布式消息平台务必在,数据接收数据缓存数据公布,整个过程保证数据的高性能吞吐、高可靠性、高扩展性、可保护性等属性。注:*越多速速越快。3大数据计算平台3.1 需求概述根据应用,这个项目数据量30T,企业数据量非常大,需要大量并发,网络爬虫爬取的企业数据信息存储在数据中心O此数据
44、量跟企业记录有关。同时,需要对清洗后的记录与计算好的推荐结果进行存储,但是这些数据不放在数据中心。此项目之后会做成实时计算,需要用到流式计算的有关计算与调度。计算量很大,能够多部署DCS进程,提高计算并发度,作业调度也要使用分部署调度架构。3.2 总体设计云数据采集中心与大数据计算平台的关系是,云数据采集中心提供存储与计算资源,通过API的方式访问资源,大数据计算平台要紧实现核心算法,包含图像匹配算法,挖掘算法,智能推荐算法,知识学习算法等等,也能够通过API的方式建立统计应用、智能推荐应用等等。大数据计算平台的需要的数据:包含网上实时爬取得、二次计算分析而获取的等等,都通过通用接口存储在云数
45、据采集中心的分布式存储平台中(分布式文件系统(S2DFS)分布式数据库(D2B)计算时候,通过接口发起作业,由云数据采集中心的作业调度服务进程JSS求责调度,由数据计算服务进程:DCS)负责计算处理并把结果反馈给大数据计算平台的各个应用。根据232小节对S2DFS分布式文件系统的全面介绍本章节就不重复叙述,由于要增加新的存储设备,关于新设备上安装分布式文件系统是否继续选用S2DFS还是HDFS,我们需要回答下列几个问题:第一,预算增加及扩展问题:要部署HDFS,还得单独购买两台高性能设备作为HDFS的元数据库服务器(注:两台设备,构成主备;配置不能比我们现在选择的设备配置差,不然就会成为瓶颈,
46、假如差了,数据节点就扩展不了几台)第二,学习成本及进度问题:要使用HDFS,务必熟悉它的API,与后面带来的整个HDFS集群部署保护等工作这个与可利用的团队资源相冲突;S2DFS提供标准的POSIX协议接口,应用程序代码不需作任何改变就能够执行。假如使用HDFS,为了保证应用系统的透明,那么统一接口的底层务必要写两种代码,第一是对面S2DFS,第二是面对HDFS。新增加了开发、保护、测试的时间。第三,空间浪费及孤岛问题:S2DFS与HDFS是两套不一致体系的文件系统,他们之间设备及存储空间是不能共用的,后面增加的6台,设备存储与前面部署的10台设备通过对原始数据处理压缩后,存储空间还有多余。二者构成了孤岛,同时造成空间浪费。第四,应用场景问题:HDFS对存储网页等文件比较友好,毕竟它的基因就是为互联网搜索而开发出来的。33数据模型设计数据模型要紧主企业数据模型与投资商数据模型两个部分。3.3.1企业数据