作者:mobiledu2502911457 | 来源:互联网 | 2023-09-13 21:15
frompc˃大数据处理流程˂imgsrchttps:p26.toutiaoimg.comoriginpgc-image5bad25974bd34106ac179ee
《GitHub精选》是一个分享Github优秀项目的栏目,包括技术、学习、实用性和各种有趣的内容。 这次推荐的是大数据的内容。 想学习大数据的学生的福利来了。
大数据处理流程。
学习框架日志收集框架:框架、日志统计、文件投注
分布式文件存储系统Hadoop HDFS
数据库: Mongodb、h基本型
分布式计算框架:
批处理框架: Hadoop MapReduce流处理框架: Storm混合处理框架: Spark、Flink查询分析框架: Hive、Spark SQL、Flink SQL、Pig、Pig
集群资源管理器: Hadoop YARN
分布式协调服务: Zookeeper
数据迁移工具: Sqoop
任务调度框架: Azkaban、Oozie
群集部署和监视: Ambari、云era管理器
数据收集:大数据处理的第一步是数据的收集。 由于目前大中型项目通常采用微服务架构进行分布式配置,因此数据采集需要在多台服务器上进行,采集过程不会影响常规业务的开展。 基于这些需求,诞生了Flume、Logstash、Kibana等各种日志收集工具。 这些工具可以通过简单的配置进行复杂的数据收集和数据聚合。
数据存储收集数据后,下一个问题是该如何保存数据。 众所周知,传统的关系数据库(如MySQL和Oracle )具有快速存储结构化数据和支持随机访问的优点。 但是,大数据的数据结构通常是日志数据等半结构化,甚至视频、音频数据等非结构化,为了解决大量半结构化数据和非结构化数据的存储,Hadoop HDFS、KFS、GFS等分布式文件
分布式文件系统完美地解决了大量的数据存储问题,但优秀的数据存储系统必须同时考虑数据存储和访问问题。 例如,希望随机访问数据的人擅长传统的关系数据库,但不擅长分布式文件系统。 基于这些需求,您的存储方案是否兼具分布式文件系统和关系数据库的优点? 基于这一需求,HBase、MongoDB应运而生。
数据分析大数据处理最重要的环节是数据分析,数据分析通常分为批处理和流处理两类。
批处理:在一定期间内统一处理大量脱机数据。 对应的处理框架有Hadoop MapReduce、Spark、Flink等; 流处理:处理运动中的数据。 即,在接收数据的同时进行处理。 对应的处理框架是Storm、Spark Streaming、Flink Streaming等。 批处理和流处理各有适当的场景,由于对时间不敏感或硬件资源有限,可以采用批处理; 如果时间敏感性和及时性要求高,可以采用流处理。 随着服务器硬件价格的下降,对及时性的要求越来越高,流处理(如股价预测和电子商务数据分析)变得越来越普遍。
上面的框架都需要通过编程进行数据分析,如果不是后台工程师,就不能进行数据分析吗? 不,当然,大数据是非常完备的生态圈,有需求就有解决办法。 为了让熟悉SQL的人也能分析数据,查询分析框架应运而生。 常用的有Hive、Spark SQL、Flink SQL、Pig、Phoenix等。 这些框架提供了使用标准SQL或类SQL语法进行数据查询分析的灵活性。 这些SQL通过分析进行优化,然后转换为相应的作业程序执行。 例如,Hive本质上将SQL转换为MapReduce作业,Spark SQL将SQL转换为一系列RDDs和转换关系(transformations ),而Phoenix将SQL查询转换为一个或多个HBase Scan
数据应用数据分析完成后,接下来是数据APP领域。 这取决于实际的业务需求。 例如,可以将数据可视化表示,也可以将数据用于推荐算法的优化。 这个运用现在很普遍,包括短视频的个性化推荐、电子商务商品推荐、头条新闻推荐等。 当然,也可以将数据用于机器学习模型的训练。 它们属于其他领域的范畴,将带有相应的框架和技术栈进行处理,在此不作说明。
图片引用: https://www.edu reka.co/blog/Hadoop -生态系统
GITHUB地址: https://github.com /海柏营/big data-notes #文件链接