自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 Spark 从HDFS读取时,通常按文件块(block)数量决定初始partition数,这是怎么实现的?

通过这一机制,Spark 天然适配 HDFS 的分布式存储特性,实现。例如:一个 1GB 的文件(128MB/block)会生成。(如 128MB/256MB)决定了文件的物理存储分布。读取 HDFS 数据时,会使用 Hadoop 的。每个 HDFS 文件块(block)默认生成一个。的分片(split)策略实现的。是用户指定的最小分区数(默认不指定时等于。(假设文件未被压缩且未手动指定分区数)。(如 BZip2)仍按 block 切分。(如 GZIP),整个文件会被视为。,会调用 Hadoop 的。

2025-03-27 11:45:55 705

原创 Airflow 的上下文对象Context

【代码】Airflow 的上下文对象Context。

2025-03-24 11:41:44 885

原创 Spark 优化作业性能以及处理数据倾斜问题

通过自定义分区器(Partitioner),将数据均匀分布到各个分区。

2025-03-17 19:47:25 678

原创 Spark 中的Shuffle过程

Shuffle是Spark中一个非常重要的概念,但它也是一个昂贵的操作。以下是对Shuffle过程的详细解释以及它为什么昂贵的原因。Shuffle是Spark中重新分配数据的过程,通常发生在需要对数据进行重新分组或聚合的操作中,例如:在这些操作中,数据需要根据某个键(Key)重新分布到不同的节点上,以便进行后续的计算。Shuffle过程可以分为两个阶段:Map阶段(Shuffle Write):每个Task(Mapper)会将其输出的数据根据Key进行分区(Partition)。数据会被写入本地磁盘(Shu

2025-03-17 19:44:36 878

原创 Airflow 中Operator

【代码】Airflow 中Operator。

2025-03-17 15:39:37 663

原创 Spark 中的窗口函数

窗口函数通过Window分区(Partitioning):将数据分为多个组(类似于GROUP BY排序(Ordering):在每个分区内对数据进行排序。窗口范围(Frame):定义窗口的大小(如当前行及其前后若干行)。.partitionBy("column1", "column2") // 按列分区.orderBy("column3") // 按列排序.rowsBetween(start, end) // 定义窗口范围(可选):指定分区的列。orderBy:指定排序的列。:定义窗口的范围(如。

2025-03-15 23:36:16 1272

原创 Spark 中agg的用法

【代码】Spark 中agg的用法。

2025-03-15 20:48:18 682

原创 Spark 报错解析_value show is not a member of org.apache.spark.sql.RelationalGroupedDataset groupedDF

【代码】Spark 报错解析_value show is not a member of org.apache.spark.sql.RelationalGroupedDataset groupedDF。

2025-03-15 20:32:34 309

原创 Spark 中explode用法

【代码】Spark 中explode用法。

2025-03-15 20:00:38 549

原创 Spark 中创建 DataFrame 的2种方式对比

适合简单场景,自动推断模式。:适合复杂场景,显式定义模式。根据数据结构和需求选择合适的方式即可!如果还有其他问题,欢迎继续提问。

2025-03-15 16:13:38 826

原创 Spark 中withColumn 和 select的用法和区别

withColumn:适合逐步添加或替换列。select:适合一次性选择或计算多个列。两者可以结合使用,根据具体需求选择合适的方法。希望这个解释对你有帮助!如果还有其他问题,欢迎继续提问。

2025-03-15 15:56:17 431

原创 Spark sql 中row的用法

【代码】Spark sql 中row的用法。

2025-03-15 14:33:00 397

原创 Spark 解析_spark.sparkContext.getConf().getAll()

【代码】Spark 解析_spark.sparkContext.getConf().getAll()

2025-03-14 17:49:57 466

原创 python 列表的步长和逆序取数用法

步长:通过[::步长]控制取数的间隔。逆序取数:通过[::-1]实现列表的逆序。灵活切片:结合起始索引、结束索引和步长,可以实现各种复杂的切片操作。掌握这些技巧可以让你更高效地处理列表数据!

2025-03-12 10:13:42 153

原创 hive 中可能产生小文件的场景

在 MapReduce 任务中,如果 Reduce 任务数设置过多,且每个 Reduce 任务处理的数据量较小,会导致生成大量小文件。操作中,如果分组字段的基数(Cardinality)较高,且每个分组的数据量较小,会导致每个分组生成一个小文件。使用动态分区插入数据时,如果分区数量较多且每个分区的数据量较小,会导致每个分区生成一个小文件。使用分桶表时,如果分桶数设置过多且每个分桶的数据量较小,会导致生成小文件。分区字段有大量不同的值,且每个分区的数据量较小,会生成大量小文件。

2025-03-12 09:28:29 882

原创 Hive 中用于小文件合并的配置参数

Hive 会在 MapReduce 任务(包含 Map 和 Reduce 阶段的任务)结束时,将生成的多个小文件合并为更大的文件。当同时启用这 3 个参数时,Hive 会在任务结束时自动合并小文件,以减少小文件的数量并优化存储和查询性能。,Hive 会在 Map-only 任务(即没有 Reduce 阶段的任务)结束时,将生成的多个小文件合并为更大的文件。文件合并会消耗额外的计算资源和时间,因此在数据量较小或文件数量不多时,可能不需要启用这些参数。Hive 会尝试将小文件合并到接近该大小的文件中。

2025-03-11 18:01:24 542

原创 hive 中的各种参数,一般在哪里修改

在实际工作中,Hive 参数的配置和修改可以通过多种方式进行,具体取决于使用场景和需求。: 在使用调度工具(如 Apache Oozie、Airflow)时配置参数。: 在使用 JDBC/ODBC 连接 HiveServer2 时配置参数。根据实际需求选择合适的配置方式,可以有效提升 Hive 的性能和灵活性。: 修改与 Hadoop 相关的参数,例如资源管理、压缩等。: 在调度工具的配置文件中设置 Hive 参数。: 在脚本中定义参数,适用于批量任务。: 临时修改参数,仅对当前会话生效。

2025-03-11 17:52:24 958

原创 hive 中各种参数

在 Apache Hive 中,参数(也称为配置属性)用于控制 Hive 的行为和性能。Hive 提供了丰富的参数来优化查询性能、管理资源和调试任务。作用:小表的大小阈值,超过该值则不转换为 Map Join。作用:每个 Reduce 任务处理的数据量。这些参数用于控制 Hive 任务的资源分配。作用:Map Join 中小表的大小阈值。作用:设置最大的 Reduce 任务数。这些参数用于控制查询的执行方式和性能。作用:Tez 任务的最大分组大小。作用:设置 Hive 的日志级别。

2025-03-11 15:49:48 556

原创 hive 中数据倾斜产生的原因和解决方法

是一个常见问题,指的是在分布式计算过程中,某些节点处理的数据量远大于其他节点,导致这些节点成为性能瓶颈,从而拖慢整个任务的执行速度。时,Hive 会启动一个额外的 MapReduce 任务,先将数据随机分发到多个 Reduce 任务进行部分聚合,然后再进行最终聚合。操作中,如果某个键在两张表中的数据量差异很大,会导致某个 Reduce 任务处理的数据量远大于其他任务。: 通过给倾斜的键添加随机前缀,将数据分散到多个 Reduce 任务。: 将倾斜的键单独处理,避免集中到一个 Reduce 任务。

2025-03-11 15:48:31 1151

原创 hive 中优化性能的一些方法

Hive 性能优化需要从数据存储、查询执行、资源管理和数据倾斜等多个方面入手。常用的优化方法包括:使用列式存储格式(如 ORC、Parquet)。启用分区和分桶。使用 Tez 引擎和向量化查询。优化 JOIN 操作和 Reduce 任务数。处理数据倾斜问题。通过合理配置和优化,可以显著提升 Hive 的查询性能和资源利用率。

2025-03-11 15:30:19 1077

原创 linux 中的&

是 Linux 中用于将命令放到后台运行的符号,适合需要同时执行多个任务或长时间运行任务的场景。结合jobsfg和kill等命令,可以方便地管理后台任务。

2025-03-10 17:34:46 349

原创 scala 中的@BeanProperty

【代码】scala 中的@BeanProperty。

2025-03-09 13:02:02 385

原创 Scala 中trait的线性化规则(Linearization Rule)和 super 的调用行为

最右优先原则:决定了特质的优先级,最右边的特质会优先生效。线性化规则:决定了super的调用顺序,super会根据线性化顺序动态绑定到下一个特质或类。在示例3中中,线性化顺序是,因此输出的顺序是。在示例2中,为什么输出是,而不是默认行为:在C的greet方法中,如果没有调用,则只会执行C的逻辑,输出。组合行为:如果希望将父特质的行为与当前特质的行为组合起来,需要在重写方法时显式调用。线性化顺序super的调用是根据线性化顺序动态绑定的,线性化顺序决定了方法调用的优先级。

2025-03-09 12:54:11 971

原创 Scala 中的访问修饰符

【代码】Scala 中的访问修饰符。

2025-03-09 10:39:57 408

原创 Scala 中生成一个RDD的方法

【代码】Scala 中生成一个RDD的方法。

2025-03-08 20:53:02 501

原创 Scala 中的隐式转换

【代码】Scala 中的隐式转换。

2025-03-08 16:21:20 948

原创 Scala 中不同类型(Integer、Int 和 String)的比较操作,涉及 ==、equals 和 eq 三种比较方式

【代码】Scala 中不同类型(Integer、Int 和 String)的比较操作,涉及 ==、equals 和 eq 三种比较方式。

2025-03-06 17:58:31 930

原创 Scala 中的String常量池

【代码】Scala 中的String常量池。

2025-03-06 17:46:33 903

原创 Spark 中的schema概念

【代码】Spark 中的schema概念。

2025-03-05 10:13:29 1463

原创 maven项目要加一个本地文件,通常加在哪个模块下

【代码】maven项目要加一个本地文件,通常加在哪个模块下。

2025-03-04 18:36:22 312

原创 Spark 中分区相关设置

【代码】Spark 中分区相关设置。

2025-03-04 13:10:24 805

原创 Java 中Arrays.aslist的作用

【代码】Java 中Arrays.aslist的作用。

2025-03-03 13:00:23 411

原创 Scala 中的mkString用法

【代码】Scala 中的mkString用法。

2025-03-03 10:30:00 266

原创 Scala 中的spilt

Scala 中的spilt用法

2025-03-03 09:30:00 762

原创 Scala 中的数组和List的区别

Scala中 的数组和List的区别

2025-03-02 21:37:22 737

原创 Scala 中的数据类型转换规则

Scala 允许通过隐式转换(implicit conversion)实现自定义类型转换。隐式转换需要定义隐式函数或隐式类。

2025-03-02 14:27:51 735

原创 Scala 解析代码_Byte、Short数据类型转Char的规则

Scala 解析代码_Byte、Short数据类型转Char的规则。

2025-03-02 14:12:14 300

原创 Scala 中的数据类型

Scala 中的数据类型。

2025-03-02 11:37:22 716

原创 Scala 中 val 和对象内部状态的关系

可以将 val 理解为一个固定的指针(引用),指针指向的对象可以是一个可变的对象(如果对象的属性是 var),也可以是一个不可变的对象(如果对象的属性是 val)。val + 可变对象:指针固定,但对象内容可以变。val + 不可变对象:指针固定,对象内容也不可变。

2025-03-02 11:09:40 406

原创 Java 中怎么建一个String[]类型的变量

Java 中怎么建一个String[]类型的变量。

2025-03-01 17:09:24 134

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除