大数据平台主要是解决对海量多样化的数据源进行数据采集、数据存储,数据分析和数据处理,并提供满足日渐增长的扩展性要求。大数据平台的应用场景,大致可分为如下几个:
场景一:舆情分析
有的客户需要做舆情分析,要求所有数据存放若干年,舆情数据每日数据量可能超百万,年数据量可达到几十亿的数据。而且爬虫爬过来的数据是舆情,通过大数据技术进行分词之后得到的可能是大段的网友评论,客户往往要求对舆情进行查询,做全文本搜索,并要求响应时间控制在秒级。爬虫将数据爬到大数据平台的Kafka里,在里面做流处理,去重去噪做语音分析,写到ElasticSearch里。大数据的一个特点是多数据源,大数据平台能根据不同的场景选择不同的数据源。
场景二:商业智能应用
BI产品主要针对数据集进行的数据分析以聚合运算为主,比如求合、求平均数、求同比、求环比、求其他的平方差或之类的标准方差。大数据平台既能满足大数据量的水平可伸缩,又能满足高性能的聚合运算。同时平台提供高效的列式存储,可以有效满足商业问题分析需求。
场景三:企业级大数据平台:
从业务的角度看,细分为查询检索、数据挖掘、统计分析、深度分析,其中深度分析分为机器学习和神经网络。
从技术的角度看,细分为Batch、SQL、流式处理、machine learning、Deep learning。
企业的数据一部分来自于本身的业务数据,比如:MySQL、oracle等,还有一部分是大量的事件。数据源不同,处理的方式也不一样。传统的技术手段很难全面覆盖。采用大数据实时分析平台,那么,基于日志数据源,就用事件写入kafka;如果是针对MySQL、oracle等传统rdbms,就用Sqoop,写入HDFS里,并建立Hive的集群。还可以存一份数据在云端。有一部分业务就是对数据合并后放入HDFS做大量的业务查询和业务统计。这时希望用SQL的方式进行查询,会有很多选项,它选择的是大数据平台的Impala等。还有一些流式处理或机器学习可以用到大数据平台的Spark。
从场景的角度出发,分析了倒推,用什么样的数据源,采用什么样的采集方法,什么样的存储方式,能够满足离线、内存、实时、流的各种模型,可以从图中得到解决方案。