自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 GC overhead limit exceeded---Java 虚拟机 (JVM) 在进行垃圾回收内存量非常少解决

GC overhead limit exceeded-这个bug错误通常表示 Java 虚拟机 (JVM) 在进行垃圾回收时花费了过多的时间,并且回收的内存量非常少。这通常是由于内存不足或数据量过大导致的,如下图,我自己跑的程序出现错误。基本就这几种方案,一个一个试出来的,然后解决了,遇事不决调整资源,然后调整比例。内存,还是TMD内存!我正在跑一个数据处理较为复杂的程序。然后调试了很多遍,出现了GC问题,如下图bug.增加数据的分区数量可以帮助分散数据处理的负担,从而减少每个分区的内存消耗。

2025-03-24 11:13:28 311

原创 Buffer overFolw---Kryo序列化出现缓冲区溢出的问题解决

由于我的数据量太大,我设置批次为10000万,50w数据大概有400M左右,然后进行spark数据处理时候报错为org.apache.spark.SparkException:Kryo serialization failed:Buffer overFolw.Available:0,rquired 58900977,To avoid this ,increase spark.kryoserializer.buffer.max value.......的值,我一开始值只有128m,太小了,调整一下。

2025-03-24 09:01:02 397

原创 Apache Spark_解决生产环境数据倾斜问题方案及思路

我司在处理超大数据量级别数据时,经常出现数据倾斜的情况,因此基本上都是看yarn的执行情况,本来10分钟能执行完毕的,拖到半小时甚至一个小时的情况,甚至再有的数据两三个小时跑完的,半天都跑不完的情况。在大数据处理中,数据倾斜是指在分布式计算中,某些节点处理的数据量远大于其他节点,导致计算资源的不均衡使用,从而影响整体的计算性能。页面中,查看每个 Executor 的数据处理量,如果某些 Executor 处理的数据量远大于其他 Executor,则可能存在数据倾斜。页面中,查看每个任务的执行时间。

2025-03-17 11:21:07 1010

原创 Flink-学习路线

最近想学习一下Flink,公司的实时需求还是不少的,因此结合ai整理了一份学习路线,记录一下。当然,公司也有Scala版本Flink框架,也学习了一下。这里只说Java版本。

2025-03-12 09:28:27 860

原创 Scala编程_实现Rational的基本操作

有理数是可以表示为两个整数的比值的数,通常形式为 n / d,其中 n 是分子,d 是分母。为了确保我们的有理数始终处于最简形式,我们将在构造函数中计算最大公约数,并将分子和分母分别除以这个值。/*** @描述: 实现的功能,将对有理数的各项行为进行建模,并进行加减乘除* 《scala编程》 第六章* 函数式对象 - 类-构造方法* 定义类Rational,类参数为n,d,Scala编译器会接收到这两个类参数,并且创建一个主构造方法,接收同样的这两个参数,

2025-03-10 15:32:38 403

原创 Scala编程_数组、列表、元组、集合与映射

Scala 是一种多范式编程语言,结合了面向对象编程和函数式编程的特性。它运行在 Java 虚拟机上,并且可以与 Java 代码无缝互操作。我主要记录一些我之前看过这本书的记录等。详细说一下Scala 中的一些基本数据结构,包括数组、列表、元组、集合和映射。

2025-03-10 15:12:41 360

原创 Java_实例变量和局部变量及this关键字详解

关键字通常用来引用当前对象的实例。它可以用来区分对象的实例变量和局部变量,也可以在对象的方法中调用其他方法或构造函数。:如果在方法中没有局部变量和实例变量同名的情况下,可以省略。关键字,因为静态方法是与类相关联而不是与对象实例相关联的。:在一个构造函数中调用同一个类的其他构造函数时,可以使用。:在方法中需要将当前对象的引用传递给其他方法时,可以使用。实例变量和局部变量是常见的两种变量类型,区别。:当实例变量和局部变量重名时,可以使用。关键字来引用实例变量,以区分两者。

2024-12-10 16:40:01 423

原创 Spark_写ORALCE:ORA-01426 numeric overflow 问题解决

数据入到一半,每次都报错ORA-01426 numeric overflow,具体呢,也不告诉你哪个字段报的问题。本人的程序字段很多,领导们就是要看这个除了问题的数据是什么样的,so,尝试了好几次入不进去。字段是number(16),然后改为number(32),直至最后改到最大值都没用,最后不得不改为CLOB类型也就是text才入进入全部数据。是这样的,20241118,我spark程序写Oracle时候,关联完HBase数据后,在写入ORACLE中,遇到了这个bug,

2024-11-18 17:22:33 497

原创 HBase理论_HBase架构组件介绍

hbase master采用主备架构,master与regionserver采用主从架构(即一个HMaster会控制多个regionserver),HBase由zookeeper、HMaster、HRegionServer三部分组成,底层数据存储在HDFS上(存储到HDFS中的是Hfile文件)。HBase引入zookeeper,避免HMaster单点问题,HMaster主要负责table和region的管理工作:1 )管理用户的读写操作。

2024-11-14 11:51:44 1639

原创 HBase理论_背景特点及数据单元及与Hive对比

本文结合了个人的笔记以及工作中实践经验以及参考HBase官网,我尽可能把自己的知识点呈现出来,主要包含hbase基础数据单元的详细解释等,如果有误,还请指正。

2024-11-13 10:25:55 1316

原创 SparkBug记录_org.apache.hadoop.yarn.exceptions.ApplicationAttemptNotFoundException: Application attemp

今天遇到一个bug,之前我的包邮十几个程序在跑,一直都很正常,但是换了一个包之后,有些 程序就报错为。几番排查,都报这种问题,并且程序跑到一半自己就挂掉了,代码初次排查时没有问题。mark一下,解决了再来补充。

2024-11-12 12:26:18 242

原创 Spark_跑批__.checkpoint()为什么比.persist()快

昨天同事和我讨论了一个情况,情况是这样的:他在跑一个spark程序,跑的时候差不多五六分钟(加了persist的情况),如果不加persist,改为..checkpoint()缓存,速度基本维持在三四分钟左右,速度提升了不少,查了源码和资料,理解了些,先放着,后面再研究吧但是,我在实际开发过程中,仍然不会使用同事讲的.checkpoint(),我仍然会使用.persist()......checkpoint需要将数据写入磁盘,而且需要手动删!

2024-11-01 09:56:38 442

原创 Spark_入库时报错ORA-00001 unique constraint violated 解决办法

如果报主键冲突了,则group by 一下id,date,然后select 的时候加一个count(1) >1,语句如下。基本上对这个id的去重就ok,视情况而定,我的数据是建立在id这一列,id,对应的后续的其他数据都是一样的,所以我可以这么整。检查一下看看是否入库前删除了分区的数据,可能是重复数据入库的问题,如果不是这个那么继续排查。基本上我就是这么解决的。其他的暂时还没遇到过。我造了三条数据,以此演示一下。

2024-10-21 10:22:26 515

原创 解决Git拉取项目后右侧边栏无Maven的问题

从gitlab上拉取新项目,当你配置好maven仓库地址,配置文件,各种库都配置好了,但是没有Maven,找不到下图的package因此打包不了项目,该怎么办?非常简单,只需一步!

2024-10-14 10:32:20 471

原创 Spark-关于《传播溯源》算法的几点思考

刚接到需求时一脸懵,当时正值疫情,传播溯源在追踪0号感染者有很大的意义,当然在别的领域也是如此,来活了.......近日想起来刚工作不久时候组长安排给我的任务,基于Spark图计算代码开发一个传播溯源的代码。

2024-10-11 08:49:18 253

原创 GIT安装及集成到IDEA中操作步骤

最近深感GIT使用技能太差,我只会些皮毛,还是得看官网,总结一下常用的操作方法吧。

2024-09-30 11:40:55 2469

原创 Spark_字段时间增加算法

将整数传递给add_minutes函数来指定要增加的分钟数

2024-09-23 15:12:59 211

原创 Spark_Json格式的RDD与DataFrame之间的转换

weq,有空写。

2024-09-14 15:43:52 204 2

原创 Spark_解决Date is not a valid external type for schema of date

代码报错:Date is not a valid external type for schema of date。解决:Spark没有名为。的数据类型,应该使用。

2024-09-12 15:31:59 204

原创 OffsetExplorer2-快捷使用方式--将Data的数据类型是Byte Array修改为String

二、点击add cluster,四、配置的kafkatool界面。五、出现这个界面说明可以了。KafkaTool的使用。

2024-09-05 10:08:26 425

原创 Hive时间格式处理_将时间类型为yyyyMMdd转为yyyy-MM-dd类型

业务中要通过读取时间分区字段做筛选数据并处理,但是我表字段值为20240905类型的,我要把他转为2024-09-05适配我的时间传参。

2024-09-05 08:20:59 815

原创 Spark轨迹大数据高效处理_计算两经纬度点间的距离_使用Haversine formula公式

Haversine公式的数学理论基于球面三角学和三角恒等式的推导,通过近似计算大圆航线距离,适用于小距离的球面距离计算。这基本符合我的需求,因为我的计算都是基本是短距离计算的,基本不会跨省,实际效果也不错,如果你是超远距离计算,比如跨国,跨洲了,可以先试试,然后再考虑使用。

2024-08-08 09:29:10 601

原创 Spark轨迹大数据处理_scalaSpark代码实多点对多点的GIS点(经纬度点)的方位角计算

方位角(azimuthangle):从某点的指北方向线起,依顺时针方向到目标方向线之间的水平夹角,叫方位角。

2024-08-06 16:59:30 579

原创 Spark_获取指定日期的所在月份的天数完整指南

计算规则是某值除以近半年 天数以及24h,但是月份里面数据有空值,所以要计算一下id对应的月份的天数,并且过滤掉数据有空值的天数。本文将介绍如何Spark框架来计算给定日期所在月份的天数,并将其应用于一个实际的数据集。前段时间有一个开发需求的一小块用到了这,是一个利用率的计算。规则是某id下的近半年的值的小时利用率。我这个人写博客,总喜欢交代一下背景,好提醒自己这块是哪块的业务知识。业务千变万化,逻辑倒是少得可怜。得到这个结果我们就可以做后面的操作了,这是demo,比如说可以计算后续的操作了,over。

2024-08-06 14:42:21 365

原创 Spark轨迹大数据处理_scalaSpark代码实两个GIS点(经纬度点)之间的方位角计算

方位角(azimuthangle):从某点的指北方向线起,依顺时针方向到目标方向线之间的水平夹角,叫方位角。具体实例如下图方位角-数学百科废话不多说,直接上代码/*** 方位角是从一个地点指向另一个地点的方向,通常以度为单位,从正北方向顺时针测量。

2024-07-23 16:18:49 635 1

原创 Spark_Oracle_II_Spark高效处理Oracle时间数据:通过JDBC桥接大数据与数据库的分析之旅

接前文背景,当需要从关系型数据库(如Oracle)中读取数据时,Spark提供了JDBC连接功能,允许我们轻松地将数据从Oracle等数据库导入到Spark DataFrame中。然而,在处理时间字段时,可能会遇到一些挑战,特别是在Oracle的DATE和TIMESTAMP类型与Spark SQL的日期时间类型之间进行转换时。

2024-07-23 14:58:27 545 1

原创 Spark_Oracle_I_通过jdbc读取oracle程序报错invalid character

我原先是通过我么api直接读取的oracle,现在由于要并行读取这个oracle数据库表数据,因此采用jdbc的方式,一开始我把sql变成query直接查,所以报上面的问题。其实一开始就是想要快一点读取oracle表数据,但是发现设置这个并行度和我调我们自己搞得类时间是差不多的。效率我在优化一下吧,看看时间怎么样。不加query,直接在这里整出全表数据,然后再filter一下我们要的数据。这样是不行的,不能加query。

2024-07-22 17:25:31 779

原创 Git使用-本地的idea代码如何整到gitlab上面的项目分支中

以下是本人常用的GIT提交与上传代码,请选择适配自己的方式,仅供参考。第一步,一般来说,我们从GIT上拉下来项目分支代码后,做些修改什么的,相关的代码都会变色。当然我们提交的部分就是我们修改的部分。有的还会选择让你merge啥的。

2024-07-15 10:39:12 471

原创 Spark_Hive_列转行、行转列生产操作(透视和逆透视)

行专列,列转行是数开不可避免的一步,尤其是在最初接触Hive的时候,看到什么炸裂函数,各种udf,有点发憷,无从下手,时常产生这t怎么搞,我不会啊?好吧,真正让你成长的,还得是甩给你一个需求,然后你自己绞尽脑汁的去实现。

2024-06-20 09:54:07 539

原创 Hive常用函数总结

if函数在select中的用法,做判断用,abs是加了绝对值,后面又加了字段类型的限制,可以说是基本大规模字段的判断来讲,if和case when还是很好用的。if函数的一个长的判断逻辑,if函数里可以添加很多项,比如下面的,我加了很多个判断逻辑。avg ,max,等等,也可以加上窗口函数。未完待续......

2024-06-18 10:23:16 143

原创 Git使用-gitlab上面的项目如何整到本地的idea中

将 GitLab 上的项目整到本地的 IntelliJ IDEA 中的完整步骤

2024-06-11 09:19:15 2888

原创 Spark_SparkOnHive_海豚调度跑任务写入Hive表失败解决

方法将 DataFrame 的数据插入到一个已经存在的Hive表中,如果该表已经存在,则直接将数据插入到该表中,如果表不存在,则会抛出异常。如果表不存在,则会自动创建该表,如果表已经存在,则会用DataFrame的数据覆盖该表中的数据。前段时间我在海豚上打包程序写hive出现了一个问题,spark程序向hive写数据时,报了如下bug,后来我删了建,把分区也删了,parquet格式也加了,还是报这个问题,因此排除是建表问题。后来我看代码,入库的语句如下,死活写不进去。如上,为什么会这样呢,我想了一下,

2024-05-28 15:52:08 589

原创 Spark_SparkSql写入Oracle_Undefined function.....将长字符串写入Oracle中方法..

在使用Spark编写代码将读库处理然后写入Oracle中遇到了诸多小bug,很磨人。shit!!

2024-04-10 17:54:15 689

原创 Hive-生产常用操作-表操作和数据处理技巧

我这个只涉及到hive的对表的操作,包括建表,建分区表,加载数据,导出数据,查询数据,删除数据,插入数据,以及对hive分区表的操作,包括查看分区,添加分区,分区名修改,分区数据修改,删除分区等。 复杂的聚合函数以及常用的炸裂函数的应用,行转列在这是没有体现出来的,后边有时间结合业务我再来写吧。 基本都在hue上对hive进行操作,仅限于查查表,改改数据,而复杂的处理逻辑基本是使用spark写算法,调sparksql,或者sparkcore来实现的。

2024-04-09 11:24:48 674

原创 SparkBug解决:Type mismatch; found : org.apache.spark.sql.Column required: Double

返回的是一个布尔值,需要返回一个Option[Int]类型。来返回一个Option[Int]方法中的条件判断条件。

2024-04-03 17:43:28 550

原创 SparkBug解决 :java.lang.UnsupportedOperationException: Schema for type Any is not supported

为了解决这个问题,将 UDF 的返回类型指定为。出现这个错误是因为 Spark 不支持使用。类型作为列的数据类型。,并在 UDF 中返回。

2024-04-03 17:13:52 296

原创 SparkBug解决:spark跑调度任务azkaban,reference “字段1” id ambigous,could be...

原因,字段重复了。

2024-03-29 14:38:31 190

原创 Hive-行转列函数stack(int n, v_1, v_2, ..., v_k)

函数时,参数中的键值对应按照一对列名和列值进行排使用列。

2024-03-15 16:02:32 1027

原创 Spark-根据命令行参数(args)中传递的值来计算前一天或者根据默认设置获取昨天的日期

【代码】Spark-根据命令行参数(args)中传递的值来计算前一天或者根据默认设置获取昨天的日期。

2024-03-15 10:10:17 192

原创 IDEA打包Spark代码出现bug:java.io.Eception:cannot create output directory......target解决1

我在打包代码时,点击clean后,再点击install,就报上面的bug。解决办法,关闭sftp就行。

2024-03-15 09:40:24 400

空空如也

空空如也

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

TA关注的人

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