<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sinat_23257429的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sinat_23257429</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sinat_23257429]]></copyright><item><title><![CDATA[hive查询meta信息方式]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/133753020</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/133753020</guid><author>sinat_23257429</author><pubDate>Tue, 10 Oct 2023 17:53:20 +0800</pubDate><description><![CDATA[转载： https://blog.youkuaiyun.com/lz6363/article/details/89498340。]]></description><category></category></item><item><title><![CDATA[Spark运行在JDK 17上的参数配置]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/132269143</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/132269143</guid><author>sinat_23257429</author><pubDate>Mon, 14 Aug 2023 09:23:19 +0800</pubDate><description><![CDATA[在将Spark应用程序迁移到JDK 17并进行集成时，需要进行一些额外的参数配置。另外，在集成时可能会遇到Hive外部元数据服务异常，具体问题可以查看链接。为了解决该问题，需要修改相关代码并重新打包。注意，在打包时要确保。其他参数直接复制即可。垃圾收集器的参数是可选的，这里配置了。中，并将这两个jar包一起添加到classpath中。用于指定执行器的Java安装目录。用于指定节点的Java安装目录，以使用ZGC垃圾收集器。]]></description><category></category></item><item><title><![CDATA[hadoop滚动重启脚本]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/130867263</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/130867263</guid><author>sinat_23257429</author><pubDate>Thu, 25 May 2023 14:55:21 +0800</pubDate><description><![CDATA[再使用开源版本hadoop集群时，有配置参数修改时，需要人工修改并重启节点让配置生效，因此这里这里写了个脚本实现自动滚动重启。注意：不同版本的hadoop。]]></description><category></category></item><item><title><![CDATA[spark读取hive phoenix映射]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/129280758</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/129280758</guid><author>sinat_23257429</author><pubDate>Wed, 01 Mar 2023 14:43:01 +0800</pubDate><description><![CDATA[spark读取hive Phoenix映射表]]></description><category></category></item><item><title><![CDATA[pyspark 集成指定python版本]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/128412633</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/128412633</guid><author>sinat_23257429</author><pubDate>Thu, 22 Dec 2022 19:30:20 +0800</pubDate><description><![CDATA[pyspark 指定python版本]]></description><category></category></item><item><title><![CDATA[hive中集成hadoop3MapreduceNativeTask功能]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/127360314</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/127360314</guid><author>sinat_23257429</author><pubDate>Mon, 17 Oct 2022 11:32:31 +0800</pubDate><description><![CDATA[hive中集成hadoop3MapreduceNativeTask功能]]></description><category></category></item><item><title><![CDATA[关于Spark动态分区裁剪在3.3版本之前的BUG记录]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/127074328</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/127074328</guid><author>sinat_23257429</author><pubDate>Tue, 27 Sep 2022 16:59:24 +0800</pubDate><description><![CDATA[关于spark 动态分区裁剪在3.3版本之前的bug]]></description><category></category></item><item><title><![CDATA[Hive动态分区问题记录]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/127049824</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/127049824</guid><author>sinat_23257429</author><pubDate>Mon, 26 Sep 2022 11:11:32 +0800</pubDate><description><![CDATA[hive在动态分区在数据量很大目标分区比较多时]]></description><category></category></item><item><title><![CDATA[scala中迭代器]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/126622991</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/126622991</guid><author>sinat_23257429</author><pubDate>Wed, 31 Aug 2022 14:29:41 +0800</pubDate><description><![CDATA[scala迭代器与其在spark 中的应用]]></description><category></category></item><item><title><![CDATA[Spark 自动转换BroadcastJoin代码分析]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/126508856</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/126508856</guid><author>sinat_23257429</author><pubDate>Wed, 24 Aug 2022 18:16:17 +0800</pubDate><description><![CDATA[Spark 自动MapJoin 代码分析]]></description><category></category></item><item><title><![CDATA[spark3.3 windows 平台下源码编译]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/125487906</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/125487906</guid><author>sinat_23257429</author><pubDate>Mon, 27 Jun 2022 17:20:25 +0800</pubDate><description><![CDATA[spark3.3 windows 下源码编译]]></description><category></category></item><item><title><![CDATA[Hive3.1.2 适配Ranger1.2.1]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/123072617</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/123072617</guid><author>sinat_23257429</author><pubDate>Tue, 22 Feb 2022 17:11:41 +0800</pubDate><description><![CDATA[Hive3的权限接口新增了  getHivePolicyProvider  方法，因此需要在ranger1.2.1  RangerHiveAuthorizer 类中实现此方法，

对比了最新版本的Ranger2.x有这个方法的实现但是涉及的代码很多因此这里又参考了hive 本身的一些权限实现发现并没有
提供此方法的实现，因此这里也是直接提供了 空的实现。
在RangerHiveAuthorizer 类中添加如下实现(这里需要注意需要单独下载ranger  hive-agent 代码,将pom 中hive 依]]></description><category></category></item><item><title><![CDATA[HiveUdf动态设置读取HDFS上的配置文件]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/121830265</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/121830265</guid><author>sinat_23257429</author><pubDate>Thu, 09 Dec 2021 16:53:28 +0800</pubDate><description><![CDATA[hive udf 动态设置读取hdfs 上配置文件的路径。]]></description><category></category></item><item><title><![CDATA[RangerAdminHA部署方案]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/120022512</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/120022512</guid><author>sinat_23257429</author><pubDate>Tue, 31 Aug 2021 17:15:02 +0800</pubDate><description><![CDATA[**
概叙
**
ranger最新版本2.0已经实现了基于客户端的HA方式，只需要在客户端配置多个URL即可，对于之前的版本如果是实现高可用可以采用Haproxy+KeepAlived的方式。

]]></description><category></category></item><item><title><![CDATA[关于Yarn Acl 的问题]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/119948159</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/119948159</guid><author>sinat_23257429</author><pubDate>Fri, 27 Aug 2021 11:00:07 +0800</pubDate><description><![CDATA[最近在集成Ranger做权限控制，在Yarn集成Ranger时发现没有配置权限的用户也可以提交任务，感到比较迷惑，所以看了下Ranger这块的代码实现：
如下代码，ranger这里其实分了两部分 首先校验raner中的权限策略 如果有则返回 true 可以提交任务，如果没权限则会继续进行acl的校验，在acl 校验时可以参考 isAllowedByYarnAcl 代码 这里循环了yarn 配置的所有队列 ，找到当前队列或者当前队列的父队列，只要有一个满足权限就会允许提交任务：
//权限检查
 public ]]></description><category></category></item><item><title><![CDATA[关于使用msck修复hive分区，以及在添加分区缓慢的问题]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/117786191</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/117786191</guid><author>sinat_23257429</author><pubDate>Thu, 10 Jun 2021 17:29:40 +0800</pubDate><description><![CDATA[1）需要修复的分区数量很大的解决办法
set hive.msck.repair.batch.size=1000;
set hive.msck.path.validation=ignore;
第一个参数是设置每次插入到metaStore 分区的批量大小，加入有10000个待修复的分区 那么这里就是10000/1000 共计十个批次，默认如果不设置此参数会把所有数据全部发送到metastore 中执行插入操作。
第二个参数是忽略掉非标准分区表的，不会对这种分区做任何操作，如果需要加入的话 也是需要自己手动alt]]></description><category></category></item><item><title><![CDATA[关于Hive重写LineageLogger获取血缘问题]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/117533354</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/117533354</guid><author>sinat_23257429</author><pubDate>Thu, 03 Jun 2021 19:55:26 +0800</pubDate><description><![CDATA[Lineagelogger类是hive2.x加入的，但是我们如果自己改造的话需要注意如下问题：（如果将代码迁移到1.x应该直接可用 1.x代码中是直接做了add的操作，并没有做判断才进行加入）
org.apache.hadoop.hive.ql.optimizer.Optimizer 类 第79行 这里由于只有如下几种类型才会加入 generator ，后续才能正常注入字段级血缘，所以
如果这里没有改 直接配置了  hive.exec.post.hooks  类型的hook ， 只能拿到基本的input 与]]></description><category></category></item><item><title><![CDATA[spark运行时reduce端任务数]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/113974123</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/113974123</guid><author>sinat_23257429</author><pubDate>Tue, 23 Feb 2021 15:09:32 +0800</pubDate><description><![CDATA[Tasks数决定因素
在Spark 中 我们知道会将一个任务划分为多个stage ，划分stage的依据就是是否为宽依赖（存在shuffle）,每个stage 的并行度取决于一个stage 最后一个算子，因为一个任务的调用是从最后一个算子向前执行的.所以一个任务的task 数主要看一个stage最后的一个rdd的分区数。
这里主要用一个列子说明计算过程分区数是怎么确定的：
rdd.map(…).reduceByKey(…).collect()
根据上面这段逻辑可以知道 map 中主要返回的是一个mapPar]]></description><category></category></item><item><title><![CDATA[spark常用算子解析]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/112724742</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/112724742</guid><author>sinat_23257429</author><pubDate>Sat, 16 Jan 2021 21:03:21 +0800</pubDate><description><![CDATA[主要梳理Spark core 中常用的算子]]></description><category></category></item><item><title><![CDATA[spark任务划分与执行]]></title><link>https://blog.youkuaiyun.com/sinat_23257429/article/details/112724712</link><guid>https://blog.youkuaiyun.com/sinat_23257429/article/details/112724712</guid><author>sinat_23257429</author><pubDate>Sat, 16 Jan 2021 21:01:09 +0800</pubDate><description><![CDATA[本文讨论Spark 在执行一个任务时是如何切分整个任务并执行的。]]></description><category></category></item></channel></rss>