您的位置:首页 > 其它

第50课 Spark 2.0项目概述

2016-09-20 21:25 204 查看
第一步:需求:数据的输入和数据的产出,大数据技术项目好比一台榨汁机,
                数据输入相当于例如苹果、柠檬等,然后通过榨汁机产出果汁;

 第二步:数据量、处理效率、可靠性、维护性、简洁性

 第三步:数据建模

 第四步:架构设计:数据怎么进来,输出怎么展示,最最重要的是处理流出的架构;

 第五步:我会再次思考大数据系统和企业IT系统的交互;

 第六步:最终确定的技术(例如Spark、Kafka、Flume、HBase)选择、规范等

 第七步:基于数据建模写基础服务代码

 第八步:正式编写第一个模块!编码、测试、调试、改进等等

 第九步:实现其它的模块,并完成测试和调试等

 第十步:测试和验收

Data Source:

机器 和用户的行为记录

Socket或者HTTP协议传输数据到服务端

Server:

第一步:服务器例如Apache,Nginx,Tomcat等接受到数据;

第二步:J2EE等技术处理接收到的数据,一般是通过日志的方式 把数据保存在特定的目录下面或者数据库

第三步:日志放置的目录是大数据组件中的Flume或者Kafka监控的目录

日志一般会经过Flume或者Kafka进行处理;

有时候数据比较复杂,需要我们使用定时系统或自己开发程序和脚本对数据进行初步处理,然后交给下游系统,一般是Flume

分布式数据管理:

这一个步骤重点说Flume:

Flume会监控具体的目录,当有数据来临的时候会把数据Sink到下游系统中. 

此时数据是直接交给HDFS?

还是交给数据仓库系统Hive?

还是交给消息组件Kafka?

还是交给流处理系统呢?

流处理系统:

现在主要适用Storm和Spark Streaming

从Spark Streaming的角度考虑,我们在流处理的过程中可能用SparkSQL,ML,Graphx等;

当今大数据业界80%到90%都是基于Hive数据仓库

Hive:

在数据仓库中建表并获取上游的日志数据

数据的离线分析:

Hadoop和Spark,其实绝大多数据情况下都 是使用Hive本身中或者Spark SQL进行数据的多维度分析;

定时调度的问题:

其实离线数据分析的一个基本任务是进行数据清洗。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐