环境篇之项目架构|学习笔记

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 快速学习环境篇之项目架构

开发者学堂课程【大数据 Flink 实时旅游平台环境篇 2020版:环境篇之项目架构】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/643/detail/10690


环境篇之项目架构

项目架构

作为一个平台型的项目,或者是其他一些与大数据相关的普通型项目都需要对项目进行分层。

分层的主要意义是让整个项目的流程更加的清晰。

图片31.png

1、数据收集层(数据采集层)

最底层的数据收集层,或者叫数据的采集层,用户在去做一些访问,或者是做各种行为操作的时候容易产生数据,有的可能产生这日志数据,或者是产生到某一个接口上,或者进入到 MySQL 管理数据库里,所以最下面的一层其实就是得到一些数据,这里面的数据需要被采集出来,而不是在这里面直接分析,因为直接分析不能形成实时的分析。

2、数据存储

数据收集完成之后,自然就是数据存储了,因为数据收集就是要把数据转存到另外一个地方去,存储数据的载体主要有 Kafka、ES、Redis、HDFS、Druid、Neo4j、Alluxio,这几个是作为大数据,尤其是在实时项目中比较常用的载体。

我们在此选择重点的去讲,Kafka 本身就是大数据公司的标配,作为数据通道,即用户的一些行为数据数据是可以转存到这里面中的,当然也可以通过日志的形式,就是把日志里面的数据的实时采集到里面来,然后去实时的处理;

ES 其实是一个快速查询的搜索引擎;Redis 也可以存储一些数据,然后通过数据也可以去完成辅助分析,主要用于存储一些分布式的文件。

3、计算引擎

作为一个计算引擎,Flink是当前最新的,也是相对来说比较火的实时统计搜索引擎。Spark、Kylin、Hive、Presto 也是大数据里面常用的一些数据处理引擎,Spark 是典型的批处理计算引擎,Kylin 是进行预处理的,然后还有 HIve 主要用于作数仓,Presto 主要适用于结构形式的查询。

另外平台强调的是数据挖掘,或者说深度学习,在此项目主要使用 Flink 计算引擎,其他加以了解即可。

4、平台管理

有了计算引擎,也有了数据之后,接下来就是平台管理。给平台完善流程,包括数仓的组建、任务调度、数据质量、元数据与血缘、资源管理、搜索引擎。

数仓本身就是一种问题的解决思路,也是一种流程、一种规范,所以说用它可以把数据分别存放,本次项目也会用到实时的具体流程;做一个项目或者做一个平台,肯定会有很多的任务,哪些任务需要首先去执行,哪些任务不需要立马执行,都要依靠任务的调度;

后续的数据质量、元数据血缘、资源管理、搜索引擎等等,都是对大数据平台进行管理的工具,这些工具很多采用的是第三方的,或者是一些开源的,数据质量用来保证数据的安全,数据的一致性、完整性以及数据的正确性等等;

元数据就是整个系统的平台,然后会有很多种类型的数据,形成一个链路,即所谓的血缘;平台肯定要有资源的管理;这些我们都可以去借助一些第三方的对资源进行监控和管理。

5、应用

完成了上述流程后,已经完全可以进行条理分析已经信息的调度,分析完成之后结果数据会被返回到结果库里,接下来就是数据的应用。数据的应用是整个数据分析的核心,但是从价值层面去考虑的话,最终没有达到应用层面,无论前面再怎么分析,其实都是没有意义的。应用其实也包括很多,比如BI可视化、用户画像,把用户分为重点用户、老用户、青年用户以及学生群体的用户等等,对客户种类进行分类;

还有广告、推荐,数据分析完成之后,一般都会基于用户画像来去做一些精准的营销或者说推荐,包括广告的投放;另外基于结果数据去进行具体的查询以及整个的流量计算。

相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
2月前
|
设计模式 前端开发 测试技术
Flutter 项目架构技术指南
探讨Flutter项目代码组织架构的关键方面和建议。了解设计原则SOLID、Clean Architecture,以及架构模式MVC、MVP、MVVM,如何有机结合使用,打造优秀的应用架构。
112 1
Flutter 项目架构技术指南
|
25天前
|
Java 编译器 Maven
使用intellij idea搭建SSM架构的maven项目 详细
使用intellij idea搭建SSM架构的maven项目 详细
42 4
|
17天前
|
存储 负载均衡 网络协议
杨老师课堂之JavaWeb项目架构之NFS文件服务器
杨老师课堂之JavaWeb项目架构之NFS文件服务器
23 0
|
2月前
|
SpringCloudAlibaba Java 持续交付
【构建一套Spring Cloud项目的大概步骤】&【Springcloud Alibaba微服务分布式架构学习资料】
【构建一套Spring Cloud项目的大概步骤】&【Springcloud Alibaba微服务分布式架构学习资料】
321 0
|
6天前
|
设计模式 消息中间件 监控
如何在Java项目中实现可扩展性架构
如何在Java项目中实现可扩展性架构
|
7天前
|
安全 Java Maven
Spring Boot项目的模块化设计与架构
Spring Boot项目的模块化设计与架构
|
18天前
|
JavaScript 前端开发 Java
信息打点-JS架构&框架识别&泄漏提取&API接口枚举&FUZZ&插件项目
信息打点-JS架构&框架识别&泄漏提取&API接口枚举&FUZZ&插件项目
|
2月前
|
运维 监控 小程序
一个人也能支撑起的项目是怎样的架构
云托管真的是开发者的福音!!!不仅简化了小程序API的接入,还省了买服务器的钱。像灰度发布、监控实例、服务器规格调整这些头疼的事儿,统统都不用费心。
77 2
|
23天前
|
前端开发 JavaScript Java
计算机Java项目|基于SSM架构的网上书城系统
计算机Java项目|基于SSM架构的网上书城系统
|
25天前
|
Java Maven
使用intellij idea搭建SSM架构的maven项目 配置文件
使用intellij idea搭建SSM架构的maven项目 配置文件
27 0

热门文章

最新文章