自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【第三节:零基础学习推荐系统系列之CF的发展】协同过滤是否适应所有环境?

适用于兴趣点不确定、分散的场景有很强大的社交属性,可以快速将身边的人看过的东西推荐给用户,即便这个用户之前并没有太多的关注该点,但是还是可以获取到。非常适用于新闻等热门事情。因为热门新闻大都没有单一兴趣点,内容较为广泛。而UserCF可以快速发现、追踪热点。适用于兴趣点稳定的场景比如用户在购买物品、观看电影等,他们的兴趣在一段时间内是固定的,便可以为用户推荐该Item的相似Item,在有限的时间内把握用户兴趣点,并为之提供相似服务。上图为4个Item的向量,可以大概看到,其实A和B和C之间的相似度并不是很高

2022-06-21 17:55:34 295 1

原创 【第二节:零基础学习推荐系统系列之ItemCF的初识】CF家族另外一名成员:ItemCF

由于UserCF的局限性和瓶颈,亚马逊、奈飞等公司基本不使用UserCF算法,而是采用了另外一种ItemCF,也叫基于物品的协同过滤。该算法和UserCF大体一致,也是先得到用户-物品矩阵,以用户为行,物品为列,可得到m*n的矩阵向量。物品i和物品j的相似度计算和上一篇文章描述的一致,最终可得到物品之间的相似度。因为物品数量较少,所以计算效率也得到了提升,最终可以得到一个n*n的矩阵,代表了每个物品与其他物品之间两两的相似度。①计算物品两两的之间的相似度,构建n*n维矩阵②通过日志分析得到用户对物品集的喜爱

2022-06-21 11:03:33 312

原创 【第一节:零基础学习推荐系统系列之UserCF的初识】到底什么是UserCF,到底是如何计算用户相似度的

在协同过滤中,用户相似度的计算是关键的一笔。物品-用户的共现矩阵中的行向量代表相应用户的用户向量,计算用户相似度就是计算两个用户行向量之前的相似度:衡量两个向量之间的夹角,夹角越小,两个用户越相似sim(i,j)=cos(i,j)=i⋅j∣∣i∣∣⋅∣∣j∣∣sim(\bold{i},\bold{j})= cos(\bold{i},\bold{j})=\frac{\bold{i}·\bold{j}}{||\bold{i}|| · ||\bold{j}||}sim(i,j)=cos(i,j)=∣∣i∣∣

2022-06-21 10:29:34 615

原创 【Hive】【Odps】如何将collect_list的结果转化为String

在spark_sql中,将collect_list的类型转化为string,只需要使用cast函数,但是在离线平台中,是不支持Array转化为string,所以需要借助另外一个函数:在聚合字段时,查询时将collect_list前使用concat_ws函数,这样该字段就转化为string了...

2022-06-08 21:17:33 3270

原创 【Spark】执行join或者groupby时报错 Futures timed out after [XXX seconds]

使用spark进行大数据分析时遇到的一些问题

2022-06-08 21:13:50 798

原创 如何解决【mac】中【Termius】中文显示乱码

按照步骤来 亲测可解决①如果没有 ~/.zshrc 这个文件,那么新建一个该文件②新建命令:touch ~/.zshrc ③打开文件文件编辑vim ~/.zshrc ④修改内容并保存export LANG=en_US.UTF-8⑤重启终端即可发现中文可以显示了......

2022-01-14 18:39:19 7806 11

原创 含有所有字符的最短字符串 | 循序递进---@二十一画

含有所有字符的最短字符串题目:含有所有字符的最短字符串分析:相似题目:拆解关键词:优先考虑:想法:代码:滑动窗口:总结:题目:含有所有字符的最短字符串给定两个字符串 s 和 t 。返回 s 中包含 t 的所有字符的最短子字符串。如果 s 中不存在符合条件的子字符串,则返回空字符串 “” 。如果 s 中存在多个符合条件的子字符串,返回任意一个。注意: 对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量。输入:s = "ADOBECODEBANC", t = "AB

2022-01-11 15:15:12 397

原创 不含重复字符的最长子字符串 | 循序递进---@二十一画

不含重复字符的最长子字符串题目:分析:相似题目:拆解关键词:优先考虑:想法:滑动窗口V1:滑动窗口V2:代码:滑动窗口V1:滑动窗口V2:总结:题目:给定一个字符串 s ,请你找出其中不含有重复字符的 最长连续子字符串 的长度。输入: s = "abcabcbb"输出: 3 解释: 因为无重复字符的最长子字符串是 "abc",所以其长度为 3。输入: s = "bbbbb"输出: 1解释: 因为无重复字符的最长子字符串是 "b",所以其长度为 1。输入: s = "pwwkew"

2022-01-10 17:15:57 468

原创 字符串中的所有变位词 | 循序递进---@二十一画

题目:给定两个字符串 s 和 p,找到 s 中所有 p 的 变位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。变位词 指字母相同,但排列不同的字符串。输入: s = "cbaebabacd", p = "abc"输出: [0,6]解释:起始索引等于 0 的子串是 "cba", 它是 "abc" 的变位词。起始索引等于 6 的子串是 "bac", 它是 "abc" 的变位词。输入: s = "abab", p = "ab"输出: [0,1,2]解释:起始索引等于 0 的

2022-01-10 09:36:09 352

原创 字符串中的变位词 | 循序递进---@二十一画

字符串中的变位词题目:分析:拆解关键词:想法:1、暴力法:2、滑动窗口V13、滑动窗口V24、滑动窗口V3代码:第一版:滑动窗口V1第二版:滑动窗口V2 + 数组下标代值【我随便起的方法,忘记这个方法叫什么名字了????】第三版:滑动窗口V3 + 单变量对比数组总结:题目:给定两个字符串 s1 和 s2,写一个函数来判断 s2 是否包含 s1 的某个变位词。换句话说,第一个字符串的排列之一是第二个字符串的 子串 。示例 1:输入: s1 = "ab" s2 = "eidbaooo"输出:

2022-01-06 14:24:06 434 1

原创 二维子矩阵的和 | 循序递进---@二十一画

二维子矩阵的和题目:分析:拆解关键词:想法:代码:第一版:暴力循环第二版:切割矩阵--前缀和总结:题目:给定一个二维矩阵 matrix,以下类型的多个请求:计算其子矩形范围内元素的总和,该子矩阵的左上角为 (row1, col1) ,右下角为 (row2, col2) 。实现 NumMatrix 类:NumMatrix(int[][] matrix) 给定整数矩阵 matrix 进行初始化int sumRegion(int row1, int col1, int row2, int col2)

2022-01-04 10:59:22 488 1

原创 如何使用mac安装【jupyterNoteBook】

文章目录基础信息:查看本地python版本安装homebrew关闭homebrew自动更新安装python3安装及使用jupyter基础信息:mac一般会自带python环境,需要查看本地环境属于python2还是python3,一般建立使用3代,因为3代比起2代修改了很多,甚至有些在2代的包可能在3代都寻找不到。并且3代是做了部分优化,个人建议使用3代来做python开发【个人拙见,大佬轻喷】查看本地python版本python --version输入后如果显示如下,那么说明本地安装的是pyt

2022-01-03 13:59:17 6250 3

转载 如何优雅关闭线程池

【本文来自转载!!!】如何优雅关闭线程池转载自:01 线程中断注:02 线程池的关闭shutdownNow总结:shutdown总结:03 优雅的关闭线程池转载自:⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️博客园:清泉⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️01 线程中断在介绍线程池关闭之前,先介绍下Thread的inter

2022-01-03 12:43:25 2001 1

原创 为什么【spark】使用【org.json4s.jackson】报错

spark使用json4s包报错报错代码:报错信息:排查问题:报错代码:import org.apache.spark.ml.feature.BucketedRandomProjectionLSHimport org.apache.spark.ml.linalg.Vectorsimport org.apache.spark.sql.SparkSessionimport org.apache.spark.sql.functions.colval dfA = spark.createDataFra

2022-01-03 10:45:57 1915

转载 Hi一起来了解下Java中的this的使用场景吧

this在Java中的使用转载:基础知识this的定义使用场景具体实例:转载:博客园:不可触及博客园:LivterJA基础知识如果要谈this那么首先需要知道在java中一个类的初始化过程,也就是当代码中调用new的时候,底层程序的执行过程:给即将初始化的对象分配存储空间将该类定义中的成员变量初始化为指定的值或者默认值【比如int缺省值为0,double缺省值为0.0】执行构造函数内部逻辑,一般是初始化成员变量具体的值返回对象,此时第一步分配的存储空间就拥有了具体的意义在以上四个步骤

2022-01-03 10:32:53 259

原创 左右两边子数组的和相等 | 循序递进---@二十一画

左右两边子数组的和相等题目:分析:拆解关键词:想法:代码:第一版:找规律总结:题目:给你一个整数数组 nums ,请计算数组的 中心下标 。数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和。如果中心下标位于数组最左端,那么左侧数之和视为 0 ,因为在下标的左侧不存在元素。这一点对于中心下标位于数组最右端同样适用。如果数组有多个中心下标,应该返回 最靠近左边 的那一个。如果数组不存在中心下标,返回 -1 。示例 1:输入:nums = [1,7,3,6,5,

2021-12-30 14:43:31 133

原创 0和1个数相同的子数组 | 循序递进---@二十一画

0和1个数相同的子数组题目:分析:拆解关键词:想法:解释:【暴力破解法】【前缀和】【滑动窗口法】代码:第一版:暴力破解第二版:前缀和总结:题目:给定一个二进制数组 nums , 找到含有相同数量的 0 和 1 的最长连续子数组,并返回该子数组的长度。示例 1:输入: nums = [0,1]输出: 2说明: [0, 1] 是具有相同数量 0 和 1 的最长连续子数组。示例 2:输入: nums = [0,1,0]输出: 2说明: [0, 1] (或 [1, 0]) 是具有相同数

2021-12-28 17:05:53 334

原创 和为K的子数组 | 循序递进---@二十一画

和为K的子数组题目:[和为 k 的子数组](https://leetcode-cn.com/problems/QTMn0o/)分析:拆解关键词:想法:解释:【暴力破解法】【前缀和】【滑动窗口法】代码:第一版:暴力破解第二版:前缀和总结:题目:和为 k 的子数组给定一个整数数组和一个整数 k ,请找到该数组中和为 k 的连续子数组的个数。示例 1 :输入:nums = [1,1,1], k = 2输出: 2解释: 此题 [1,1] 与 [1,1] 为两种不同的情况示例 2 :输入:

2021-12-27 14:53:06 404

原创 为什么在实时计算中定义UDF函数中open方法会执行多次?

实时UDF中open方法执行次数描述背景:执行报错:问题排查:排查:疑惑:解决:引申:总结:描述背景:在使用blink进行开发IP匹配的时候,因为是通过UDF来实现的,所以打算在UDF的open方法中预先读取IP信息数据,【open方法对于一个实例Task只调用执行一次,算作是预处理,类似hive的UDF中setup方法】存放在集合中。然后处理集合,按照有序排序,最终使用二分查找去寻找当前IP对应的地址信息。具体实现和背景介绍在之前的这篇文章:链接—>Hi一起来了解实时数据的IP解析吧执行报错

2021-12-25 13:46:22 1866 1

原创 为什么我使用【ArrayList】存储数据报错【OOM】

List在开发中的报错与选择问题描述:解决方式:原因:替换优缺点:优点:缺点:如何选择:问题描述:在项目开发中使用ArrayList来存储数据,数据量并不大,但是频繁报错OOM解决方式:将ArrayList替换为LinkedList即可解决原因:二者都是List结构,但是ArrayList的数据存储在内存中是连续的,这就导致不管你存储多大数据量,这个数据块一定要连续的内存空间,在内存资源稀少且分布不均的情况下,很难为ArrayList去寻找到这么一块空间,没有空间,GC也无法满足条件,那么自然会

2021-12-25 13:20:10 1125

原创 Hi一起来了解实时数据的IP解析吧

实时ETL解析IP本文关键词:前提:IP信息上传OSS:实现代码:基于存储到内存:基于存储在本地:打包上传:本文关键词:实时ETLIP解析Blink–【阿里实时计算平台 Based on Flink】前提:之前的文章介绍了大数据离线平台的IP实时匹配,在那边文章中我说了将IP合并内容存储在ODPS【Hi一起来了解下大数据平台的IP解析吧】,是因为离线数据量一般很大,数据量增加之后离线任务启动的实例就很多,相当于全部的实例在同一时间去存储了IP合并内容的组件拉取数据,这个是危险的,所以不建议将

2021-12-25 12:12:24 2361

原创 Hi一起来了解下大数据平台的IP解析吧

大数据平台的离线IP解析本文关键词:背景引入:介绍IP库:缩减IP信息:代码实现:单线程版本:多线程版本:如何ETL:实现离线IP匹配:注册ODPS资源:实现IP配置的UDF:注册函数:调用IP解析方法:本文关键词:阿里大数据计算引擎–【ODPS】又名【MaxCompute】数据仓库,离线批次解析IP地址背景引入:在建设大数据离线平台的过程中,会有一个ETL的过程,这个过程会将ods层数据进行批次的字段解析及复杂的逻辑处理。不同的公司有着不同的业务场景,所以也对应这不同的ETL逻辑,但是不管

2021-12-25 11:26:20 2313

原创 乘积小于K的子数组 | 循序递进---@二十一画

乘积小于K的子数组题目:分析:拆解关键词:想法:解释:代码:第一版:暴力破解第二版:滑动窗口第三版:滑动窗口优化代码总结:题目:给定一个正整数数组 nums和整数 k ,请找出该数组内乘积小于 k 的连续的子数组的个数。示例 1:输入: nums = [10,5,2,6], k = 100输出: 8解释: 8 个乘积小于 100 的子数组分别为: [10], [5], [2], [6], [10,5], [5,2], [2,6], [5,2,6]。需要注意的是 [10,5,2] 并不是乘

2021-12-24 15:18:30 436

原创 和大于等于target的最短子数组 | 循序递进---@二十一画

和大于等于target的最短子数组题目:分析:拆解关键字:想法:解释:代码:第一版:暴力破解第二版:前缀和 + 二分查找第三版:滑动窗口总结:题目:给定一个含有 n 个正整数的数组和一个正整数 target 。找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl+1, …, numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。示例 1:输入:target = 7, nums = [2,3,1,2,4,3]输出:

2021-12-22 18:34:08 1071

原创 排序数组中两个数字之和 | 循序递进---@二十一画

排序数组中两个数字之和题目:分析:代码:第一版:暴力破解第二版:Hash法第三版:双指针法总结:题目:给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a ,b ,c ,使得 a + b + c = 0 ?请找出所有和为 0 且 不重复 的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[]

2021-12-21 14:45:29 646

原创 排序数组中的两个数字之和 | 循序递进---@二十一画

题目:给定一个已按照 升序排列 的整数数组 numbers ,请你从数组中找出两个数满足相加之和等于目标数 target 。函数应该以长度为 2 的整数数组的形式返回这两个数的下标值。numbers 的下标 从 0 开始计数 ,所以答案数组应当满足 0 <= answer[0] < answer[1] < numbers.length 。假设数组中存在且只存在一对符合条件的数字,同时一个数字不能使用两次。示例 1:输入:numbers = [1,2,4,6,10], ta

2021-12-20 17:29:13 551

原创 请问,你了解推荐系统吗

你知道吗推荐系统:解决问题:系统环节:召回路径:推荐架构:通用技术架构:推荐系统:定义:根据用户的历史信息和行为,向用户推荐他感兴趣的内容基于行为的协同过滤:①当两种事物出现的频率很高时,那么大概率会进行捆绑推荐 --【啤酒和尿布】②当两个人是相似的时候,那么大概率会把B看过的事物推给A --【微信--他正在看】基于内容相似的推荐:①事物分类,大概率推荐相似度更高的事物解决问题:​ 1、信息过载 【用户无法寻找物品】【系统无法精准推荐达到商业目标】​ 2、挖掘长尾【大量冷门物

2021-12-18 15:06:53 421

原创 单词长度的最大乘积 | 循序递进---@二十一画

题目:给定一个字符串数组 words,请计算当两个字符串 words[i] 和 words[j] 不包含相同字符时,它们长度的乘积的最大值。假设字符串中只包含英语的小写字母。如果没有不包含相同字符的一对字符串,返回 0。示例 1:输入: words = ["abcw","baz","foo","bar","fxyz","abcdef"]输出: 16 解释: 这两个单词为 "abcw", "fxyz"。它们不包含相同字符,且长度的乘积最大。示例 2:输入: words = ["a","

2021-12-18 10:04:43 255

转载 【MAC】【iNode】频繁显示“libCoreUtils.dylib”将对您的电脑造成伤害”

⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️版权声明:本文为CSDN博主「小宋是呢」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/xiaosongshine/article/details/120999357我是转载!⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠

2021-12-17 15:24:52 4494

原创 只出现一次的数字 | 循序递进---@二十一画

只出现一次的数字题目:分析:代码:第一版:Map实现第二版:技巧实现总结:题目:给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。示例 1:输入:nums = [2,2,3,2]输出:3示例 2:输入:nums = [0,1,0,1,0,1,100]输出:100提示:1 <= nums.length <= 3 * 104-231 <= nums[i] <= 231 -

2021-12-16 18:58:35 90

原创 看不懂idea的文档怎么办【安利一款idea翻译插件】

一款Idea的翻译插件安装操作:如何使用:功能调用:单词翻译:语句翻译:建议:安装操作:1.打开 ·Preferences·2.点击·plugins·,按照图上搜索·translation· 安装即可3.安装后 点击·apply· -> ok4.可以按照如下方式使用了如何使用:先看效果图:功能调用:单词翻译:语句翻译:建议:这种翻译组件帮助有限,希望可以尽快提高英语能力,摆脱翻译工具,愿诸君都可自如阅读英文文档~...

2021-12-16 09:35:36 1032

原创 为什么使用【Properties】读取含【中文】的【配置文件】会【乱码】

Properties读取配置乱码问题:一般使用【仅含英文】:定义工具类:读取配置:读取异常:读取中文使用:问题:在开发中,为了随时修改方便属性和加密一些账户密码,会把私密信息写到配置文件,然后从配置文件中读取,这个过程中一般会使用java中的new Properties()一般使用【仅含英文】:定义工具类:package com.bigdata.Utilsimport java.io.{BufferedReader, InputStreamReader}import java.text.Si

2021-12-15 17:52:38 845

转载 watermark机制【先转载有空具体描述】

个人理解:watermark是全局机制针对所有的key,如果要解决同一个key的乱序迟到问题就需要用到Allowed Lateness机制。因为一般都是按照某个key分组,需要的也是解决同一个key的乱序迟到问题。https://blog.csdn.net/yangxiaobo118/article/details/100173001Flink的窗口处理流式数据虽然提供了基础EventTime的WaterMark机制,但是只能在一定程度上解决数据乱序问题。而某些极端情况下数据延迟会非常严重,即便通过W

2021-12-15 16:50:57 159

原创 前 n 个数字二进制中 1 的个数 | 循序递进---@二十一画

前 n 个数字二进制中 1 的个数题目:分析:代码:第一版:暴力法第二版:`Brian Kernighan` 算法第三版:【动态规划解法】第四版:【奇偶特性--动态规划】总结:题目:给定一个非负整数 n ,请计算 0 到 n 之间的每个数字的二进制表示中 1 的个数,并输出一个数组。示例 1:输入: n = 2输出: [0,1,1]解释: 0 --> 01 --> 12 --> 10示例 2:输入: n = 5输出: [0,1,1,2,1,2]解释:0

2021-12-15 16:13:53 728

原创 为什么【Spark UI】界面里【stdout】显示是【乱码】

spark ui界面日志中文乱码问题:解决:排查:重新提交:代码层面:问题:spark开发中难免需要打印一些日志来调试程序是否按照预期在正常工作,于是一般会在代码中通过定义指定日志来判断,当开发中打印【中文】日志的时候,发现spark ui界面stdout和stderr里关于中文都是乱码。解决:这里先说解决方案,着急的同学们可以先修改代码,然后慢慢往下看排查过程。spark-submit提交的时候,增加如下两个配置,就可以在ui界面正常查看中文标志--conf spark.executor.ex

2021-12-15 10:09:53 807

原创 为什么DataFrame多条件关联报错

DataFrame多条件join前提:使用:前提:在spark集成数仓开发中,一般会使用spark-core和spark-sql一起协同开发,当有些场景为了处理方便,就会提前将DF转化为内存表,但是有时候可能并不需要转化,就直接使用了DF进行一些内置算子也可以实现SQL的功能,这就是spark中org.apache.spark.sql中所包含的功能。使用:在使用两个DF关联的时候,可以指定多条件,如下:⚠️⚠️⚠️注意:这种方式是错误的,”===” 方式连接也只适用于单条件的关联// 01) 加

2021-12-14 16:29:55 969

原创 使用java的姿势完善【年、月、周】个人工作量总结

整理个人工作量前提过程1、从周报或者月报中复制个人记录2、整理成txt文件,每行开头和结尾皆不需要特殊处理,只保留工作内容即可3、思考excel的版面及一些固定信息4、java代码开发5、代码献上前提年度到了,需要上交自己的个人工作量excel文件了,因为一年来干的事情太多太细了,所以准备使用·java·来将这一年的工作记录总结到excel中过程1、从周报或者月报中复制个人记录2、整理成txt文件,每行开头和结尾皆不需要特殊处理,只保留工作内容即可如:今天摸鱼今日划水今日刷淘宝3、思

2021-12-12 21:55:19 615

原创 二进制加法 | 循序递进---@二十一画

题目描述:二进制加法给定两个 01 字符串 a 和 b ,请计算它们的和,并以二进制字符串的形式输出。输入为 非空 字符串且只包含数字 1 和 0。示例 1:输入: a = "11", b = "10"输出: "101"示例 2:输入: a = "1010", b = "1011"输出: "10101" 提示:每个字符串仅由字符 '0' 或 '1' 组成。1 <= a

2021-12-11 13:20:20 3516

原创 spark集成odps后排查报错日志

spark of odps 的日志报错排查logview寻找报错executorspark UI开源的spark估计大多人都会使用ui界面来排查日志。但是odps【阿里云】集成的spark,当提交了任务之后,有些时候控制台都打印报错了,但是点击UI界面发现每一个executor都是成功的,没有失败的。下面就一起来看看吧????logview排查日志的第一个界面。点击图中Detail,便可以看到如下界面,之后点击红圈处便可以看到具体的日志。寻找报错executor一般排查问题都需要寻找报错

2021-12-11 12:20:36 1296

原创 同个spark任务在数据量变大时任务抛出错误

数据量增大导致的OOM业务需求分词方法打包运行报错增加资源:自查代码代码优化:问题解决业务需求使用spark集成数仓,并对数仓中的文章视频关键标题及标签字段进行分词分词方法使用Hanlp工具包进行分词:如下是一开始实现的分词逻辑/** * 定义分词函数 * * @param elements * @return */ def separate(elements: Iterator[VideoInfo]): Iterator[VideoWords] = { va

2021-12-11 12:09:05 1927

空空如也

空空如也

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

TA关注的人

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