当前位置:   article > 正文

【小白视角】大数据基础实践(七) Spark的基本操作_spark操作类型_大數據spark 使用

大數據spark 使用

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注大数据)
img

正文

在实际应用中,大数据处理主要包括以下三个类型:

  • 复杂的批量数据处理:通常时间跨度在数十分钟到数小时之间
  • 基于历史数据的交互式查询:通常时间跨度在数十秒到数分钟之间
  • 基于实时数据流的数据处理:通常时间跨度在数百毫秒到数秒之间

目前对以上三种场景需求都有比较成熟的处理框架,

  • 第一种情况可以用Hadoop的MapReduce来进行批量海量数据处理,
  • 第二种情况可以Impala进行交互式查询,
  • 对于第三中情况可以用Storm分布式处理框架处理实时流式数据。

成本问题

  1. 以上三者都是比较独立,各自一套维护成本比较高,会带来一些问题:
  2. 不同场景之间输入输出数据无法做到无缝共享,通常需要进行数据格式的转换
  3. 不同的软件需要不同的开发和维护团队,带来了较高的使用成本
  4. 比较难以对同一个集群中的各个系统进行统一的资源协调和分配

Spark的出现能够一站式平台满意以上需求

2.6 Spark生态系统组件的应用场景
应用场景 时间跨度 其他框架 Spark生态系统中的组件
复杂的批量数据处理 小时级 MapReduce、Hive Spark
基于历史数据的交互式查询 分钟级 、秒级 Impala、Dremel、Drill Spark SQL
基于实时数据流的数据处理 毫秒、秒级 Storm、S4 Spark Streaming
基于历史数据的数据挖掘 - Mahout MLlib
图结构数据的处理 - Pregel、Hama GraphX

在这里插入图片描述

2.7 Spark组件
2.7.1 Spark Core
  1. 包含Spark的基本内容,包含任务调度,内存管理,容错机制等。
  2. Spark Core内部定义了RDDs(弹性分布式数据集)。RDDs代表横跨很多工作节点的数据集合,RDDs可以被并行的处理。
  3. Spark Core提供了很多APIs来创建和操作这些集合RDDs
2.7.2 Spark SQL
  1. Spark处理结构化数据的库。它支持通过SQL查询数据。就像HQL(Hive SQL)一样,并且支持很多数据源,像Hive表、JSON等。
  2. Shark是一种较老的基于Spark的SQL项目,它是基于Hive修改的,它现在已经被Spark-SQL代替了。
2.7.3 Spark Streaming
  1. 实时数据流处理组件,类似Storm
  2. Spark Streaming提供了API来操作实时流数据。
2.7.4 MLlib
  1. Spark 有一个包含通用机器学习功能的包,就是MLlib(machine learning lib)
  2. MLlib 包含了分类,聚类,回归,协同过滤算法,还包括模块评估和数据导入。
  3. 它还提供了一些低级的机器学习原语,包括通用梯度下降优化算法。
  4. 除此之外,还支持集群上的横向扩展。
2.7.5 Graphx
  1. 是处理图的库,并进行图的并行计算。就像Spark Streaming和Spark SQL一样,Graphx也继承了Spark RDD API,同时允许创建有向图。
  2. Graphx提供了各种图的操作,例如subgraph和mapVertices,也包含了常用的图算法,例如PangeRank等。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/785644?site
推荐阅读
相关标签
  

闽ICP备14008679号