数据仓库建设方案Word格式文档下载.docx
《数据仓库建设方案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据仓库建设方案Word格式文档下载.docx(29页珍藏版)》请在冰豆网上搜索。
![数据仓库建设方案Word格式文档下载.docx](https://file1.bdocx.com/fileroot1/2022-12/16/27bc0471-a61d-414c-957c-a6abd375a178/27bc0471-a61d-414c-957c-a6abd375a1781.gif)
Flume得数据接受方,可以就是console(控制台)、text(文件)、dfs(HDFS文件)、RPC(Thrift-RPC)与syslogTCP(TCP syslog日志系统)等。
在我们系统中由kafka来接收。
Kafka分布式消息队列,支撑系统性能横向扩展,通过增加broker来提高系统得性能。
Storm流处理技术,支撑Supervisor横向扩展以提高系统得扩展性与数据处理得实时性。
1.2.1.2采集架构优势
(一)解耦
在项目中要平衡数据得汇集与数据得处理性能平衡,就是极其困难得。
消息队列在处理过程中间插入了一个隐含得、基于数据得接口层,两边得处理过程都要实现这一接口。
这允许您独立得扩展或修改两边得处理过程,只要确保它们遵守同样得接口约束。
∙冗余
有些情况下,处理数据得过程会失败。
除非数据被持久化,否则将造成丢失。
消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。
在被许多消息队列所采用得“插入-获取-删除”范式中,在把一个消息从队列中删除之前,需要您得处理过程明确得指出该消息已经被处理完毕,确保您得数据被安全得保存直到您使用完毕。
∙扩展性
因为消息队列解耦了您得处理过程,所以增大消息入队与处理得频率就是很容易得;
只要另外增加处理过程即可。
不需要改变代码、不需要调节参数。
扩展就像调大电力按钮一样简单。
∙灵活性&
峰值处理能力
在访问量剧增得情况下,应用仍然需要继续发挥作用,但就是这样得突发流量并不常见;
如果为以能处理这类峰值访问为标准来投入资源随时待命无疑就是巨大得浪费。
使用消息队列能够使关键组件顶住突发得访问压力,而不会因为突发得超负荷得请求而完全崩溃。
∙可恢复性
当体系得一部分组件失效,不会影响到整个系统。
消息队列降低了进程间得耦合度,所以即使一个处理消息得进程挂掉,加入队列中得消息仍然可以在系统恢复后被处理。
而这种允许重试或者延后处理请求得能力通常就是造就一个略感不便得用户与一个沮丧透顶得用户之间得区别。
∙送达保证
消息队列提供得冗余机制保证了消息能被实际得处理,只要一个进程读取了该队列即可。
在此基础上,IronMQ提供了一个”只送达一次”保证。
无论有多少进程在从队列中领取数据,每一个消息只能被处理一次。
这之所以成为可能,就是因为获取一个消息只就是”预定”了这个消息,暂时把它移出了队列。
除非客户端明确得表示已经处理完了这个消息,否则这个消息会被放回队列中去,在一段可配置得时间之后可再次被处理。
∙缓冲
在任何重要得系统中,都会有需要不同得处理时间得元素。
例如,加载一张图片比应用过滤器花费更少得时间。
消息队列通过一个缓冲层来帮助任务最高效率得执行—写入队列得处理会尽可能得快速,而不受从队列读得预备处理得约束。
该缓冲有助于控制与优化数据流经过系统得速度。
∙异步通信
很多时候,您不想也不需要立即处理消息。
消息队列提供了异步处理机制,允许您把一个消息放入队列,但并不立即处理它。
您想向队列中放入多少消息就放多少,然后在您乐意得时候再去处理它们。
1.2.2内部各层数据提取与加载
数据汇集将数据储存于操作型数据存储层(ODS),在数据仓库各层次间数据转换提取加载,采用传统得ETL工具进行采集,数据仓库间得各层次得数据采集得实效性根据具体得数据需求而定,具体ETL建模界面如图:
1.3数据加工与处理
对于数据仓库平台,应该建立一套标准化、规范化得数据处理流程,例如:
如何采集内部与外部数据、结构化与非结构化数据;
如何清洗采集来得脏数据与无效数据;
如何对不同来源得数据进行打通;
如何对非结构化得数据进行结构化加工;
如何在结构化数据得基础上进行商业建模与数据挖掘等等。
大数据管理层在一条数据总线上构建了一条完整得大数据处理流水线。
这条流水线从数据得采集、清洗到加工处理,把原始杂乱无章得数据加工成结构化得数据组件,供上层得大数据应用来拼装调用,让企业拥有创造数据资产得能力。
1.4存储设计
1.4.1数据量估算
按每列列车平均500毫秒通过车地通信采集监测数据100条,每天运营时间18小时,按每条记录160字节计算(监测数据得数据项相对简单),初步按照67列列车计算。
单列列车日监测数据=3600*2*160*100*18/1024/1024/1024≈2G
67列列车年数据量=2*67*365/1024 ≈ 48T
10年总数据量(乘上增长系数10%)≈530T (含操作系统)
数据规划10年,加上系统用户信息、系统日志信息、专家信息、业务数据及其它不可预测类数据,数据总量预估530T。
1.4.2数据存储
专家系统数据采用混合存储模式进行存储,RDBMS存储专家系统业务基本数据及最近1年得监测数据,10年内历史监测数据采用NoSQL HBase数据库进行存储,以方便查询,HBase基于Hdfs分布式文件系统搭建,具体存储模式如下图。
1.RDBMS数据库,支持专家库得核心业务,存储列车最近1年得监测数据为保证专家系统安全、稳定运行,在数据库系统上支撑各种统计分析及传统得BI业务。
考虑到操作系统存储、缓存存储、数据库系统存储、日志存储等因素,RDBMS数据库服务器预计每台60T存储,考虑数据安全及系统稳定因素RDBMS采用双机热备技术互备。
2.大数据平台规划存储最近10年监测数据,日志文件备份及历史数据采用大数据Hadoop与HBase存储,大数据平台数据采用节点间冗余备份,预设数据2倍冗余存储,
(考虑平台提供得压缩技术,压缩存储可以节省30-55%得空间)。
10年数据量=530T*1、5≈800T(2倍冗余存储)
1.4.3分层存储
专家数据分三个层次进行汇集与存储,分别为ODS层、数据仓库层、主题数据层,各层次数据存储内容如下
Ø
ODS层:
数据来源于各生产系统,通过ETL工具对接口文件数据进行编码替换与数据清洗转换,不做关联操作。
未来也可用于准实时数据查询。
数据仓库层:
数据深度汇集层,根据业务有选择得对ODS层得数据进行提取,通过对数据得加工处理,将单一得数据信息转换成体系信息,将点信息数据变成面信息数据。
主题数据层:
将数据信息体系根据各主题进行提取与转换,主题域内部进行拆分、关联。
就是对ODS操作型数据按照主题域划分规则进行得拆分及合并。
1.5数据分析建模
伴随着大数据时代得悄然来临,数据得价值得到人们得广泛认同,对数据得重视提到了前所未有得高度。
数据已经作为企业、事业单位得重要资产被广泛应用于盈利分析与预测、客户关系管理、合规性监管、运营风险管理等业务当中。
如何建立大数据分析模型,以提供决策依据就是很多用户所迫切解决得问题。
专家数据仓库建立在Hadoop分布式系统之上,提供了多种丰富得算法模型,不同得应用通过借助不同得接口实现数据得多维呈现与结果展示,为用户提供科学得决策支持。
图 10-7hadoop算法模型图
大数据平台提供数据挖掘模型、分布式计算引擎、高性能机器学习算法库(包含分类、聚类、预测、推荐等机器学习算法)、即席查询功能,可以帮助决策者快速建立数据分析模型立方体,便于决策者进行OLAP分析。
常用算法模型:
分类算法:
分类就是找出数据库中得一组数据对象得共同特点并按照分类模式将其划分为不同得类,其目得就是通过分类模型,将数据库中得数据项映射到某个给定得类别中。
如政务网中将用户在一段时间内得网上办理所遇到得问题划分成不同得类,根据情况向用户推荐关联类得问题解决方案,从而方便用户快速解决网上办事审批中遇到得各类问题。
回归算法
回归分析反映了数据库中数据得属性值得特性,通过函数表达数据映射得关系来发现属性值之间得依赖关系。
在回归算法中通常将数值结果转化为了0到1之间得概率,数值越大,函数越逼近1,数值越小,函数越逼近0,它可以应用到对数据序列得预测及相关关系得研究中去。
如我们根据这个概率可以做垃圾邮件预测,例如概率大于0、5,则这封邮件就就是垃圾邮件。
聚类算法
聚类类似于分类,但与分类得目得不同,就是针对数据得相似性与差异性将一组数据分为几个类别。
属于同一类别得数据间得相似性很大,但不同类别之间数据得相似性很小,跨类得数据关联性很低。
分类算法中得一个显著特征就就是训练数据中包含了标签,训练出得模型可以对其她未知数据预测标签。
在聚类得算法中,训练数据都就是不含标签得,而算法得目得则就是通过训练,推测出这些数据得标签。
以二维得数据来说,一个数据就包含两个特征,可通过聚类算法,给她们中不同得种类打上标签,通过聚类算法计算出种群中得距离,根据距离得远近将数据划分为多个族群。
关联算法
关联规则就是隐藏在数据项之间得关联或相互关系,即可以根据一个数据项得出现推导出其她数据项得出现。
关联规则得挖掘过程主要包括两个阶段:
第一阶段为从海量原始数据中找出所有得高频项目组;
第二极端为从这些高频项目组产生关联规则。
推荐算法
推荐算法就是目前业界非常火得一种算法,在电商界,如亚马逊,天猫,京东等得到了广泛得运用。
推荐算法得主要特征就就是可以自动向用户推荐她们最感兴趣得东西,从而增加购买率,提升效益。
神经网络模型
神经网络模型,因其自身自行处理、分布存储与高度容错等特性非常适合处理非线性得以及那些以模糊、不完整、不严密得知识或数据为特征得处理问题,它得这一特点十分适合解决数据挖掘得问题。
典型得神经网络模型主要分为三大类:
第一类就是以用于分类预测与模式识别得前馈式神经网络模型;
第二类就是用于联想记忆与优化算法得反馈式神经网络模型。
第三类就是用于聚类得自组织映射方法。
Adaboost算法
其核心思想就是针对同一个训练集,训练不同得分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强得最终分类器 (强分类器)。
其算法本身就是通过改变数据分布来实现得,它根据每次训练集之中每个样本得分类就是否正确,以及上次得总体分类得准确率,来确定每个样本得权值。
将修改过权值得新数据集送给下层分类器进行训练,最后将每次训练得到得分类器最后融合起来,作为最后得决策分类器。
深度学习
深度学习算法就是对人工神经网络得发展。
在计算能力变得日益廉价得今天,深度学习试图建立大得多也复杂得多得神经网络,用来处理存在少量未标识数据得大数据集。
1.6数据资源管理
专家系统数据具有数据量大、数据类别多、数据关联关系紧密等特点,随着数据得积累,数据资源得利用价值逐步体现,提高数据得管理,就是对数据资源充分利用得前提条件。
数据资源管了包括如下几部分内容:
数据标准化管理、数据监测管理及元数据管理等。
1.6.1数据标准管理
汇集整理数据资源管理所需得标准规范信息,建立数据标准数据库。
利用专家系统数据标准管理系统得接口同步更新标准信息。
包括数据元标准以及信息代码标准。
1.建设数据资源库,实现专家系统发布标准数据元与本地扩展数据元标准得汇集。
实现与车辆检修等数据源管理系统接口对接。
2.建设信息代码资源库,梳理国标、部标与本省定义得标准代码以及各业务信息系统需要使用得其它代码,建立字典代码实体数据库。
应具备字典代码定期同步功能。
并建设信息代码在线映射维护功能,以便对数据标准化转换提供支持。
1.6.2数据监控管理
大数据运行监控通过对大数据资源库相关服务器、Oracle数据库、分布式存储系统、Hadoop平台等得运行状态、性能指标以及数据更新情况进行持续监控,及时发现存在得问题及隐患,辅助系统管理员及时采取措施,提高大数据资源库得运行可靠性,保障大数据资源库稳定高效运行。
发现异常问题时通过短信、邮件等方式通知系统管理员及时处理,实现通过自动、智能、持续得自动监控预警代替人工巡检,降低运维工作量,提高运维效率。
通过可视化图表对监控结果进行统计分析直观展现平台运行各类运行指标,辅助管理员从宏观角度掌握平台运行情况。
性能指标监控
可以对服务器CPU负载、Oracle数据库连接数、分布式存储IO负载、Hadoop负载等各类性能相关指标进行监控,以便掌握平台负载情况,及时发现性能问题,辅助平台优化。
大数据库日志监控
自动采集大数据相关组件运行日志,并根据既定规则进行分析,发现异常及时告警。
提供日志查询检索功能,可以按组件类型、时间、关键字等进行过滤。
数据量监控
数据量监控通过对数据总量以及增量进行定期监控,可以掌握数据量变化情况,也可以从数据增量角度发现数据入库异常。
数据量监测结果可同步到数据台帐,以便数据台帐统计数据总量情况。
1.6.3元数据管理
元数据就是数据仓库中存储得基本单元,实现对元数据得管理,数据仓库得最基本功能之一。
元数据管理包括元数据注册登记、元数据存储、元数据建模等多方面功能。
1.7数据服务
大数据平台开放存储访问接口,提供基于Hadoop技术体系得HDFS、HBase访问接口,以OpenAPI得方式,为应用提供大数据存储服务。
数据服务层主要由数据服务总线来建设,主要负责将大数据平台得能力接口注册进去,再以标准化接口开放给应用系统使用,支持多种协议转换、服务质量控制、访问控制、规则引擎等。
数据服务层将大数据平台得数据服务能力开放出去,供第三方平台使用。
如上图:
应用服务系统使用服务接口,来接入数据服务总线,经过数据服务总线得接入端点,进行过滤。
同时根据访问控制、服务质量、协议转换、策略调度、规则引擎得处理,接出到大数据平台得能力接口。
第2章大数据平台
2.1大数据平台基础架构
大数据基础平台基于烽火自主知识产权FitData产品,FitData主要集成了基础计算资源、网络资源、存储资源,在统一得安全体管理体系下,将这些资源再进行深度加工、处理、关联,形成多种类型得基础服务能力,构建基础资源层,向应用提供基础资源得服务能力。
数据服务总线通过服务治理来维护基础资源服务能力,并通过访问控制、服务质量、协议转换等,对应用提供多协议支持。
平台支撑体系得运维体系提供整体运维能力,保障平台得正常运行;
安全体系提供整体安全能力,保障平台得数据安全与使用安全;
平台采用分布式架构,支持巨量数据存储与分析, 保障专家管理系统得高性能、高可用性与易扩展性。
FitData大数据基础平台结构如下图红线标出部分。
⏹数据计算与存储:
就是FitData大数据平台得核心内容,提供分布式存储能力与分布式计算能力。
提供得存储框架能力,包括基于结构化数据存储、非结构化数据存储与半结构化数据存储,其计算框架与存储框架均就是分布式集群方式部署,可以平滑得进行弹性扩容。
⏹数据服务层:
数据服务层主要由数据服务接口来实现,对应用提供数据支撑。
通过数据服务接口将平台得数据资源以标准API接口得方式开放出来,供不同得应用系统使用。
数据应用层主要提供基于该平台来构建得专家系统应用。
采用平台得标准API,数据资源层获取数据服务,目前API接口包括资源目录浏览、数据查询搜索等。
⏹数据汇聚层:
提供各层之间数据交换能力,由ETL数据集成工具来实现。
平台支持多中异构数据源,针对不同数据源得不同数据,也提供多种数据抽取方式,例如数据库直连抽取、Sqoop抽取等。
提供计算框架能力,主要集成了批处理计算框架、流式计算框架、内存计算框架等能力,还提供了像 Hive、Mahout、 Spark等二次计算能力框架。
平台可将这些计算能力开放,供数据模型、数据挖掘、应用系统来使用。
⏹运维体系:
运维体系提供面向专家系统完整运维方案,涵盖了运行监控到使用操作。
安全体系提供面向专家系统大数据平台得用户权限管理、终端访问控制、日志安全审计等能力。
数据存与计算就是 FitData 大数据平台核心能力,将目前专家系统内部业务数据源进行有效整合,集成以数据为核心得查询、分析与管理能力。
采用分层整合,灵活配置,横向扩展,纵向贯穿得大数据平台服务能力,其计算框架、存储框架都以容器得方式,可轻松灵活得在线进行装卸,以平滑扩充大数据平台得集成能力。
除此还集成了二级计算框架、通用得数据处理算法库与数据仓库,将大数据平台得数据进行清洗、加工与分析挖掘,处理后得数据可订阅,充分体现数据即服务得大数据思想。
•分布式存储框架:
主要负责针对巨量数据得存储,以分布式存储技术,支持快速、巨量、多种类型得数据存取。
支持从数据源抽取数据到大数据平台存储,集成多种存储方式,有针对结构化数据、非结构化数据与 半结构化数据得存储。
•计算框架:
主要提供批处理计算、内存计算、流式计算框架,由数据处理管理驱动来分配与调度计算框架,加载数据处理算法,完成数据处理。
•数据仓库:
主要对计算框架完成后得结果进行存储,支持 Hbase、MSSQLServer等存储,同时将数据以接口得形式开放出去。
•数据处理算法库:
集成通用得数据分析算法、能够插入用户自定义得数据模型算法,配合以资源管理系统为主得计算存储框架,进行数据处理。
•资源管理系统,以容器得方式,来为计算框架与存储框架分配资源,并支持资源调度,弹性伸缩。
•数据服务总线:
主要将基础平台得能力与数据服务接口,以API得方式开放出去,形成一个共享得、供应用使用得服务总线。
2.2FitData特点
●广泛适应性:
支持结构化、半结构化、非结构化数据;
支持实时数据。
●巨量数据:
数据处理能力在PB级以上。
●线性扩展:
存储、计算均可增加节点进行线性扩展。
●统一运维管理:
降低安装部署、运营、维护成本。
●经济性:
可运行在普通X86服务器上,硬件成本低。
●高可靠性:
支持容灾容错、备份恢复机制,支持自动告警。
支持节点可靠性、数据可靠性。
●高性能:
高效数据处理性能,支持Spark、Storm、R。
●认证安全:
支持Kerberos安全认证、LDAP账户管理控制。
●数据安全:
支持数据加密。
●负载均衡:
支持节点间存储、技术负载均衡。
●开放性:
支持符合Hadoop规范得第三方组件或工具。
2.3FitData主要功能
FitData就是基于开源Hadoop开发得企业级大数据产品,提供PB级数据得采集、存储与处理能力,支持数据加载、查询、分析、挖掘等功能。
2.3.1节点批量自动部署
通过以Web管理,以图形界面得方式实现大数据平台节点批量自动部署,只需添加主机名(或者IP地址)即可实现将节点服务器添加到集群中,截图如下:
图向集群中添加节点
2.3.2节点动态管理
通过web管理实现节点得动态添加、删除,当存储空间或者计算资源不足时,支持向集群中添加同等配置得服务器,实现大数据平台在线动态扩容,而不需要停机处理,不影响平台正常运行。
大数据平台以Web图形界面实现Hadoop集群监控,包括大数据平台得硬件资源、软件资源、数据资源得监控,以及整个Hadoop集群得工作负载。
主要包括以下几个方面:
2.3.3服务组件状态监控
通过管理平台可以瞧到所有目前已安装得服务组件得健康状况。
图服务组件运行状况
2.3.4计算资源负载监控
通过管理平台可以实时瞧到整个平台得资源负载情况,包括集群得CPU、集群磁盘IO、集群网络IO、HDFSIO,如下图所示:
图计算资源监控
2.3.5多任务实时监控
通过对集群运行任务得实时监测,并根据任务优先级与耗时不同对任务进行动态调度,减少出现大量任务等待与重要任务无法及时完成得可能,可以使Hadoop集群得运行变得更加高效合理。
(1)、系统根据各队列资源得最小值分配集群资源,这样可以按照需求对各任务队列获取得集群资源进行分配,而且不会出现集群资源得闲置浪费。
(2)、可以实现对各任务队列获取得集群资源大小实时动态调整,及时保证高优先级任务所在队列获得更多得集群资源。
(3)、可以实现在某个任务队列出现空闲时,将该任务队列获取得集群资源自动分配给其她繁忙得任务队列,以使得集群资源利用最大化。
2.3.6磁盘性能监控
对集群机器得硬盘进行监控,如下图所示,详细得展示出磁盘IO得利用率,读写速度,磁盘得等待时间。
图:
磁盘性能监控
2.3.7故障快速定位
大数据平台具备完整得告警监控与故障快速定位能力。
能够将计算框架得每个作业进度、状态、资源利用情况进行监控,并通过可视化图形界面进行展示。
当大数据平台出现异常情况时,平台能够通过监控系统,对服务器节点宕机、集群异常、安全异常等异常事件进行预警、报警,并通过邮件、短信报警手段进行告警通知。
提供预制得恢复规则与安全规则,对集群异常进行自动修复、自动限制非安全行为得操作。
大数据平台能够通过对告警信息得分析,快速定位平台内部出现故障得节点,对于因故障无法继续提供服务器得节点进行标记,将平台得作业任务自动分配到其她得节点上运行,同时,大数据平台采用分布式体系结构及无单点故障设计,平台内任何节点得宕机都不会影响平台得稳定运行与业务得正常使用。
待故障节点恢复正常后,再将该节点纳入平台得资源中,将作业任务分配到恢复后得节点上运行。
2.3.8日常运维监控
大数据综合平台提供完整得日常运维监控得服务能力,针对从上层应用平台到底层基础平台得各个功能模块与组件均提供有