zoukankan      html  css  js  c++  java
  • 大数据平台建设的思考

    笔者经历过几家公司,传统行业,互联网行业都经历过,每家公司对于数据的处理,使用都各不相同,但是总体上架构上都大同小异,
    传统行业有传统行业的整体架构,目前已基本形成一套套完整的解决方案,互联网行业目前已基本形成一套整体的开源解决方案。
    传统行业一般都是用的商用软件,一方面是为了系统的稳定,一方面也是少有这方面的人才,互联网呢,一般都是用开源软件,
    一方面是为了满足自身业务的需求,一方面呢互联网网罗了大量的人才,可以做个性化开发。
    数据平台的建设呢主要分为几部分,数据的存储,数据的清洗,数据的展现。
    先说一下传统行业的互数据建设,传统行业一般少有做数据平台,数据的存储呢,一般都是会商用软件,数据库一般用oracle,sqlserver,DB2 数据的清洗也就是ETL工具呢一般是informatic,datastage,当然有些小点的公司还有用免费的kettle等ETK工具,数据的展现呢也就是BI一般是congnos,BIEE等,目前呢市面上有很多的BI工具,做报表,做分析,做挖掘,百家争鸣,各有异同。
    目前也有很多厂商会给出一套完整的解决方案,包括数据的存储,数据清洗,数据展现,分析等。这也是很多传统公司使用的原因。
    互联网呢,目前大部分的存储是hdfs,数据清洗呢统一用开源免费的,五花八门,有mr,hive,spark,pig等,数据展现呢,好多都是自己开发的,也有用一些比较实惠点的报表展现工具,但是很多互联网公司也开发出一个数据平台,包含数据的存储,数据的清洗,数据的展现等功能。

    这里主要是对建设大数据平台做一些思考,数据平台的作用,数据平台包含哪些功能,数据平台的投入等。

    首先呢数据平台的作用,对于一个稍微大点的互联网公司,数据平台是必不可少的,在目前科技不断进步的社会,数据产生的价值是不可估量的,再者有数据平台,数据的管理也是有统一的规范,还有一点,用数据平台对于数据的流向以及数据的分析,挖掘都有很好帮助。只要有一个好的数据平台,那么公司的数据就是一笔很大的财产。
    数据平台的功能呢,其实就是几点数据的存储,数据的清洗,数据的展现,数据的分析,就我个人见解说一下。
    数据平台的存储,目前一般都是hdfs,在前期需要设计好数据仓库的架构,如何分层,在数据平台中,可以通过建表(hive)
    的形式,也可以通过创建路径的形式来对数据的存储,

    数据的清洗,这部分非常重要的,一般是hsql,spark,mr,pig等都而已可以,但是呢,根据每个公司的技术水平来,一般是hsql是必须的,毕竟sql比较简单易上手,当然mr,spark也是必须的支持的,如果有些数据的导入,导出也可以封装到sqoop进行抽取,当然还有数据的上传的功能支持txt,excel等。对于shell,python等脚本,个人建议还是支持比较好,可以通过权限等手段控制目录。

    数据的调度,这块也是非常必要的,调度可以分为强依赖和弱依赖,调度可以是原子的形式,也可以是流的形式,也就是任务组,这样可以公共的部分,关联密切的是封装成组,单独的封装成原子,这样后续依赖的任务就都可以依赖,当然少不了血缘关系,这块对于查找上下游依赖关系有很好的指引,对于查找问题也是特别方便的。

    数据的监控 这部分也是比较重要的,监控可以分为几部分,一部分是任务是否成功的监控,一部分是数据的监控,可以设置阈值,通过邮件和短信配合的形式进行监控。也可以做一个全局的监控,可以监处每天错误的任务,可以是列表,也可以是图标。

    数据的上下线以及版本管理,这个感觉很有必要,每一次测试都会形成一个版本,这样会回溯测试的任何一个版本,测试与线上严格分离,测试会把数据放到测试库中,根据对脚本进行解析,然后在测试时,把数据放到测试库中,可以对数据进行测试。

    数据的展现,可以分为几块,发邮件的功能是必不可少,常规领导,财务等每天都要看的的数据可以发邮件,查询系统比不可少,当然这个可以是数据平台的一个界面,通过权限控制,可以设置一些个性化的查询,根据需求进行查询,开放给运营,产品,市场等。
    数据的分析与挖掘,这块就等前期都做好了,后期可以通过一些报表,算法等进行数据分析和挖掘。

    先简单的写一点,希望大家指点,共同讨论,共同进步

  • 相关阅读:
    MVC3、如何应用EntityFramework 连接MySql 数据库 Kevin
    DEV EXPRESS Summary Footer 不显示 Kevin
    装饰模式 Kevin
    Dev 控件 GridControl 控件 二次绑定数据源的问题。 Kevin
    System.InvalidOperationException 异常 Kevin
    LINQ to XML Kevin
    代理模式——代码版“吊丝的故事” Kevin
    VS2012 中的设备 面板 Kevin
    maven 学习笔记(三)创建一个较复杂的 eclipse+android+maven 工程
    maven 学习笔记(一)eclipse+android+maven
  • 原文地址:https://www.cnblogs.com/wujin/p/6085470.html
Copyright © 2011-2022 走看看