当前位置:首页 > 数据中心 > 正文

数据中心数据库建设方案(数据中心设计建设方案)

什么是大数据?

大数据是指使用常规软件工具无法在一定时间范围内捕获、管理和处理的数据。通过大量统计了解每个人的喜好和需求,得到他们想要的东西,比如精准营销、信用分析、使用分析等。

数据仓库与ODS的区别,数据仓库和ODS并存方案

我想整理这个内容很久了。因为只是闲聊,所以我就说说我想到的吧。我一直从事互联网行业,就互联网行业而言。首先简单概述一下数据仓库和数据平台在互联网行业的用途:整合公司所有业务数据,打造统一的数据中心;准备各种报告,一些为高级管理层,一些为每个业务;为网站提供运营数据运营支持是利用数据让运营及时了解网站和产品的运营影响;为各业务提供线上或线下数据支持,成为公司统一的数据交换和提供平台;通过数据挖掘分析用户行为数据,降低成本。增加影响的成本;例如有对性的精准广告、个性化的用户推荐等;开发数据产品直接或间接为公司盈利;搭建数据平台,企业数据;。。。。。上面列出的内容看起来和传统行业中数据仓库的使用类似,都要求数据仓库/数据平台具有良好的稳定性和可靠性;但在互联网行业,除了数据量大之外,越来越多的业务需要时效性,甚至很多需要实时性。此外,互联网行业的业务变化很快。不可能像传统行业那样用自上而下的方式一劳永逸地构建数据仓库,其实互联网行业的数据仓库就是所谓的敏捷数据仓库,它不仅需要对数据的快速响应,也要求对业务的快速响应;构建敏捷数据仓库,除了需要架构技术之外,还有一个非常重要的方面,那就是数据建模。如果从头开始,想要构建一套兼容所有数据和业务的数据模型,就不得不回到传统数据仓库的建设,很难满足对业务变化的快速响应。应对这种情况,一般首先需要对核心持续业务进行深度建模(例如:基于网站日志的网站统计分析模型和用户浏览轨迹模型;基于公司核心用户数据的用户模型),而其他业务通常使用维度+宽度表来构建数据模型。这是以后的故事。整体架构下图是我们目前使用的数据平台的架构图。其实大部分公司应该都是类似的:图片描述。逻辑上有数据采集层、数据存储与分析层、数据共享层、数据应用层。。名称可能不同,但作用基本相同。我们从下往上看:数据采集数据采集层的工作就是将各种数据源的数据采集并存储到数据存储中,数据存储中可以做一些简单的清理工作。数据源有多种类型:网站日志:作为互联网行业,网站日志占比。网站日志存储在多个网站日志服务器上。Flumeagent通常用在各个网站日志服务器上,实时收集网站日志并存储在HDFS上;业务数据库:业务数据库的类型也有很多种,包括Mysql、Oracle、SqlServer等。目前,我们确实需要一个可以将多个数据库的数据同步到HDFS的工具,Sqoop是的,但是Sqoop太重了,而且无论数据量有多大,都需要启动MapReduce来执行,Hadoop集群中的每台机器都需要能够访问数据库业务;对付这种场景,开源的DataX就很好。解决方案(请参考文章《异构数据源海量数据交换工具-TaobaoDataX与使用》)。如果有资源的话,可以基于DataX进行二次开发,这将是一个很好的解决方案。我们也使用DataHub。当然Flume也可以通过配置和开发将数据库的数据实时同步到HDFS。Ftp/Http数据来源:可能有一些合作伙伴提供的数据需要通过Ftp/Http等定期获取。DataX也能满足这些要求;其他数据源:比如一些手动输入的数据,只需要提供一个接口或者一个小程序,就可以完成;数据存储与分析毫无疑问,HDFS是大数据环境下数据仓库/数据平台最完美的数据存储解决方案。离线数据分析计算,即对实时性要求不高的部分,我认为Hive仍然是首选,数据类型丰富,内置功能;ORC文件存储格式,具有极高的压缩比;非常简单的SQL支持使得Hive基于结构化数据的统计分析比MapReduce高效得多。一条SQL语句即可完成需求,开发一个MR可能需要数百行代码;当然,使用Hadoop框架自然也提供了MapReduce接口。如果你真的很乐意开发Java