kylin4.0.3升级问题
话接前文:
kylin升级(3.0.1->kylin-4.0.3)-CSDN博客文章浏览阅读941次,点赞29次,收藏12次。原本的cube太多了,换其他OLAP数据库太麻烦。相比之下,升级是一个很好的选择(官网有说明内存降低和构建时间更快的原因)。,导致经常内存溢出,kylin挂掉。设置了查询缓存在memcached,但没有解决根本的问题。kylin4 只需要资源探测和 cubing 两个步骤,就可以完成构建;并且,服务器内存也没之前高,这里就不截图了。第一个是zookeeper的路径,不要和旧版本冲突了。在旧版的kylin运行备份命令。将旧的备份文件迁移到新的kylin节点。运行后会有提示,显示备份的文件在哪里。https://blog.csdn.net/qq_40209679/article/details/135387553
在实际操作过程中,往往出现了在测试上没遇到的问题,下面是升级后遇到的问题,几乎都会遇到,我的如下。
1 元数据问题
由于正式平台上往往程序会更多,在测试中,我的model只有几个,cube也是。这么少的数量下没有问题。但正式平台上,我发现通过我前文的方式进行元数据传输,model少了。具体少了多少不便透漏。但差不多有5%左右。
原因推测:
由上面的截图可以看到,我的hbase备份到本地是没出现问题的。那么问题很可能出现在scp命令执行的时候(我忘记压缩传输),发现了少量的error信息。正是由于小文件太多,网络传输难免会全部成功。
一定要压缩后传输!!!
2 大程序运行问题
在kylin3.0.1中,我发现一个程序运行时间为60min左右。我想,升级后的计算引擎由MR==>Yarn,时间应该会变短,我预估的时间为25min。但在实际运行中出现了错误,通过观察日志,发现了下面的问题(我筛选了一下):
Caused by: java.lang.IllegalStateException: Spark context stopped while waiting for backend
overrideConf : {spark.executor.memory=3456MB, spark.executor.memoryOverhead=692MB}
2024-01-05 23:42:41,316 ERROR [rpc-server-22-2] client.TransportClient : Failed to send RPC RPC 7489718939143010467 to /ip:port: java.nio.channels.ClosedChannelException
java.nio.channels.ClosedChannelException
2024-01-05 23:42:41,317 ERROR [rpc-server-22-2] cluster.YarnSchedulerBackend$YarnSchedulerEndpoint : Sending RequestExecutors(Map(),Map(),Map(),Set()) to AM was unsuccessful
java.io.IOException: Failed to send RPC RPC 7489718939143010467 to /ip:port: java.nio.channels.ClosedChannelException
IP和端口部分我已经隐藏,并且替换成了ip:port。
出现这个问题说明了:
- 网络问题
网络方面通过我的检查,已经排除,毕竟网络有问题其他程序为什么能运行成功。
- 资源问题
这是我在kylin官网找到的一句话
我想,既然能自动调参,为什么会出现资源问题。然后看到yarn上面的信息,发现了,想到了kylin能调节spark参数,不代表yarn会给你通过。后面查阅资料,在yarn-site.xml添加上了如下配置。
<property><name>yarn.nodemanager.pmem-check-enabled</name><value>false</value>
</property>
<property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value>
</property>
解释一下,这两个配置是与YARN(Yet Another Resource Negotiator)资源管理器的节点管理器(NodeManager)相关的配置项。它们用于控制NodeManager是否启用物理内存(pmem)和虚拟内存(vmem)检查。
重启yarn。然后这个比较大的程序运行成功!!!
3 新的问题
程序是运行成功了,但竟然运行了80min!!!,和我预估的30min内差距过大。运行时我看到了内存和cpu和带宽疯狂上升。通过spark ui页面发现,spark的job接近10000个。而在kylin3中,这个cube大小只有几百M。但kylin4运行完后,发现cube大小竟然有接近20G!!!震惊了。
后面这个问题解决后会更新上。
4 注意事项
由于我的kylin.properties并没有复制,到了除了上一篇文章注意的配置还有忘记修改的。
kylin.source.hive.database-for-flat-table=
kylin.engine.spark-conf.spark.yarn.queue=
前面一个是kylin运行的时候一些临时表的存储路径,最好是在hive里面建一个库来保存,不然全部到default里面就太乱了。
后面一个是spark运行在yarn的队列,如果设置了一定要修改。一般也不会直接用default队列。
当然,如果是测试环境都无所谓
后面我将持续进行修改或更新,更新或解决这些问题。
相关文章:

kylin4.0.3升级问题
话接前文: kylin升级(3.0.1->kylin-4.0.3)-CSDN博客文章浏览阅读941次,点赞29次,收藏12次。原本的cube太多了,换其他OLAP数据库太麻烦。相比之下,升级是一个很好的选择(官网有说明内存降低和构…...

【UML】第16篇 活动图
目录 一、什么是活动图 二、应用场景: 三、绘图符号的说明: 四、语法: 五、例图 六、建模的流程 6.1 对业务流程建模时 6.2 对用例进行活动图建模时 一、什么是活动图 活动图(Activity Diagram)是UML中用于描…...

Python学习之路-函数进阶
Python学习之路-函数进阶 参数和返回值的作用 函数根据有没有参数以及有没有返回值,可以相互组合,一共有4 种组合形式:无参数,无返回值;无参数,有返回值;有参数,无返回值ÿ…...

Mac打包Unix可执行文件为pkg
Mac打包Unix可执行文件为pkg 方式一:通过packages页面打包 1.下载packages app Distribution:自定义化更高,包括修改安装页面的内容提示 我这里主要演示Distribution模式的项目:通过unix可执行文件postinstall.sh脚本实现通过ma…...

C++ 模拟散列表 || 哈希表存储与查询,模版题(拉链法)
维护一个集合,支持如下几种操作: I x,插入一个整数 x ; Q x,询问整数 x 是否在集合中出现过; 现在要进行 N 次操作,对于每个询问操作输出对应的结果。 输入格式 第一行包含整数 N ,…...

详解Skywalking 服务Overview页面的参数含义(适合小白)
本文针对刚刚接触skywalking的同学,重点讲解服务Overview页面中各个参数的含义,为大家快速上手skywalking会起到帮助作用! 最重要的三个指标 Service Apdex(数字):当前服务的评分 Successful Rate(数字&a…...

Android studio GridView应用设计
一、xml布局文件设计: <GridViewandroid:id="@+id/gridView"android:layout_width="match_parent"android:layout_height="match_parent"tools:layout_editor_absoluteX="1dp"tools:layout_editor_absoluteY="1dp"andr…...

K8s 是如何完成调度和权重调整?
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、调度流程二、kuble-scheduler 调度原理1 kubernetes 1.23版本调度器filter阶段和score阶段源码分析2 修改调度器插件默认权重示例2.1 环境准备2.2 调整Inte…...

计算机毕业设计----Springboot超市订单管理系统
项目介绍 该超市订单管理毕业设计基于jdk8版本开发,在部署时需要使用jdk8以上的版本。使用了目前流行的框架组合springbootmybatis的框架技术, 实现了供应商管理对供应商实现增删改查、订单管理对超市订单实现增删改查、用户管理等功能,适用…...

如何给AI下达精准的指令,哪些提示词对于AI是有效的?
刚上手那会,我倾向于将 prompt 翻译为“指令”,但这并不精确。“指令”通常对应instructions,属于 prompt 中的纯指令部分,通常是一个动宾结构(做什么)。剩下的部分更多是描述(describe…...

软件外包资源网站分享
经济不景气导致很多人失业,能否找到一份工作或找些项目做做,这里列了一些国内和国外的资源网上,希望对大家有益: 国内篇: 软件项目交易网:(软件项目交易网)这是一个专注于软件开发需求的外包平台…...

在控制理论里,单个输入变量被施加了饱和特性处理,那么后续怎么利用李雅普诺夫判据判断系统稳定性呢?
在控制理论中,当一个系统的输入变量被施加了饱和特性(即输入被限制在某个范围内),系统的稳定性分析可能变得更复杂。使用李雅普诺夫方法判断这样的系统稳定性通常需要考虑非线性特性。下面是如何使用李雅普诺夫方法进行稳定性分析…...

MySQL夯实之路-查询性能优化深入浅出
MySQL调优分析 explain;show status查看服务器状态信息 优化 减少子任务,减少子任务执行次数,减少子任务执行时间(优,少,快) 查询优化分析方法 1.访问了太多的行和列࿱…...

UniApp面试题
面试题1 问:什么是 UniApp?它有哪些特点? 答:UniApp 是一种基于 Vue.js 开发跨平台应用的框架。它可以同时构建运行在多个平台(包括但不限于小程序、H5、App)的应用程序。UniApp 的特点包括:一…...

30 树的定义
树的定义 树的度?叶节点? 注意:k为叶节点 孩子/双亲/子孙/祖先 树的高度? 有序树 森林 树的一些操作: 粗略的框架代码: 省略。。。 小结: 树是线性表的扩展...

程序员必备的面试技巧
程序员必备的面试技巧 “程序员必备的面试技巧,就像是编写一段完美的代码一样重要。在面试战场上,我们需要像忍者一样灵活,像侦探一样聪明,还要像无敌铁金刚一样坚定。只有掌握了这些技巧,我们才能在面试的舞台上闪耀…...

【NI-DAQmx入门】LabVIEW中DAQmx同步
1.同步解释 1.1 同步基础概念 触发器:触发器是控制采集的命令。您可以使用触发器来启动、停止或暂停采集。触发信号可以源自软件或硬件源。 时钟:时钟是用于对数据采集计时的周期性数字信号。根据具体情况,您可以使用时钟信号直接控制数据采…...

FlinkRestAPI
which flink 找到Flink客户端地址 如果输出结果为空,则说明 Flink 客户端没有安装在系统路径中。在这种情况下,您可以通过设置 FLINK_HOME 环境变量来指定 Flink 客户端的路径。例如: export FLINK_HOME/opt/flink 然后,您可以使…...

Qt获取当前系统网络接口信息
1.QInterface获取网络接口信息 void NetProperty::init() {// 获取所有网络接口const QList<QNetworkInterface> interfaces QNetworkInterface::allInterfaces();ui->com_Interface->clear();for(const QNetworkInterface& interface : interfaces){ui->…...

【C++】STL 算法 ④ ( 函数对象与谓词 | 一元函数对象 | “ 谓词 “ 概念 | 一元谓词 | find_if 查找算法 | 一元谓词示例 )
文章目录 一、函数对象与谓词1、一元函数对象2、" 谓词 " 概念3、find_if 查找算法 二、一元谓词示例1、代码示例 - 一元谓词示例2、执行结果 一、函数对象与谓词 1、一元函数对象 " 函数对象 " 是通过 重载 函数调用操作符 () 实现的 operator() , 函数对…...

C++ 并发编程 | 并发世界
一、C 并发世界 1、什么是并发? 并发是指两个或更多独立的活动同时发生,计算机中的并发指的是,在单个系统里同时执行多个独立的活动...

GitHub注册新账号的操作流程(详细)
目录 第一步 进入官网,点击右上角的"Sign up" 第二步 输入email地址 第三步 设置密码 第四步 输入昵称 第五步 根据个人喜好决定要不要接收GitHub的邮件推送。然后回答他们的验证问题 第六步 输入验证码 我在注册github账号时遇到过一些阻碍&#x…...

Kali安装Xrdp结合内网穿透实现无公网ip远程访问系统桌面
文章目录 前言1. Kali 安装Xrdp2. 本地远程Kali桌面3. Kali 安装Cpolar 内网穿透4. 配置公网远程地址5. 公网远程Kali桌面连接6. 固定连接公网地址7. 固定地址连接测试 前言 Kali远程桌面的好处在于,它允许用户从远程位置访问Kali系统,而无需直接物理访…...

【WEB API自动化测试】接口文档与在线测试
这一篇我们主要介绍如何做API帮助文档,给API的调用人员介绍各个 API的功能, 输入参数,输出参数, 以及在线测试 API功能(这个也是方便我们自己开发调试) 我们先来看看我们的API最终帮助文档及在线测试最终达到的效果: 概要图 GET API 添加产品API: 删除…...

【深度学习每日小知识】Training Data 训练数据
训练数据是机器学习的基本组成部分,在模型的开发和性能中起着至关重要的作用。它是指用于训练机器学习算法的标记或注释数据集。以下是与训练数据相关的一些关键方面和注意事项。 Quantity 数量 训练数据的数量很重要,因为它会影响模型的泛化能力。通常…...

[acm算法学习] 后缀数组SA
学习自B站up主 kouylan 定义 后缀是包含最后个字母的子串 把字符串 str 的所有后缀按字典排序,sa[i]表示排名为 i 的后缀的开头下标 如何求解SA 倍增的方法 先把每个位置开始的长度为1的子串排序,在此基础上再把长度为2的子串排序(长度…...

DNS解析和它的三个实验
一、DNS介绍 DNS:domain name server 7层协议 名称解析协议 tcp /53 主从之间的同步 udp/53 名字解析 DNS作用:将域名转换成IP地址的协议 1.1DNS的两种实现方式 1.通过hosts文件(优先级最高) 分散的管理 linux /etc/hos…...

[redis] redis的安装,配置与简单操作
一、缓存的相关知识 1.1 缓存的概念 缓存是为了调节速度不一致的两个或多个不同的物质的速度,在中间对速度较慢的一方起到加速作用,比如CPU的一级、二级缓存是保存了CPU最近经常访问的数据,内存是保存CPU经常访问硬盘的数据,而且…...

C++ STL set容器
和 map、multimap 容器不同,使用 set 容器存储的各个键值对,要求键 key 和值 value 必须相等。 举个例子,如下有 2 组键值对数据: {<a, 1>, <b, 2>, <c, 3>} {<a, a>, <b, b>, <c, c>} 显然&…...

专业课148,总分410+电子科技大学858信号与系统考研经验电子信息与通信
今年专业课148分,总分410顺利被电子科技大学录取,回望这一年复习还有很多不足,总结一下自己的复习经历,希望对大家复习有所帮助。 数学:(多动手,多计算,多总结,打好基础…...