<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[行走的树]]></title><description><![CDATA[一头飞翔的菜鸟]]></description><link>https://blog.youkuaiyun.com/leen0304</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; leen0304]]></copyright><item><title><![CDATA[Hive中常用SerDe介绍]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/125610016</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/125610016</guid><author>leen0304</author><pubDate>Mon, 04 Jul 2022 22:55:32 +0800</pubDate><description><![CDATA[SerDe 是Serializer 和 Deserializer 的简称。它是 Hive用来处理记录并且将它们映射到 Hive 表中的字段数据类型。]]></description><category></category></item><item><title><![CDATA[tez和spark常用参数调优]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/125406072</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/125406072</guid><author>leen0304</author><pubDate>Wed, 22 Jun 2022 11:30:06 +0800</pubDate><description><![CDATA[1、tez参数
2、spark参数
3、spark小文件解决思路：]]></description><category></category></item><item><title><![CDATA[maven Java错误: 找不到或无法加载主类]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/125379466</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/125379466</guid><author>leen0304</author><pubDate>Mon, 20 Jun 2022 19:44:47 +0800</pubDate><description><![CDATA[错误: 找不到或无法加载主类]]></description><category></category></item><item><title><![CDATA[解决: Java Maven项目中的Scala类混编编译错误]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/122492382</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/122492382</guid><author>leen0304</author><pubDate>Fri, 14 Jan 2022 13:49:13 +0800</pubDate><description><![CDATA[1、问题描述：
Java Maven项目中调用Scala类GpsParserNew，编译是出现错误
Tuple11 tuple11 = com.vdian.utils.GpsParserNew$.MODULE$.getAddressWithTownVillage(res);

报错：
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on pr]]></description><category></category></item><item><title><![CDATA[为什么HDFS文件块（block）大小设定为128M]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/121902198</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/121902198</guid><author>leen0304</author><pubDate>Mon, 13 Dec 2021 17:03:53 +0800</pubDate><description><![CDATA[我们在HDFS中存储数据是以块（block）的形式存放在DataNode中的，块（block）的大小可以通过设置dfs.blocksize来实现；
在Hadoop2.x的版本中，文件块的默认大小是128M，老版本中默认是64M；
寻址时间：HDFS中找到目标文件块（block）所需要的时间。
原理：

文件块越大，寻址时间越短，但磁盘传输时间越长；
文件块越小，寻址时间越长，但磁盘传输时间越短。

一、为什么HDFS中块（block）不能设置太大，也不能设置太小？


如果块设置过大，
一方面，从磁盘传输数]]></description><category></category></item><item><title><![CDATA[Hive - 自定义UDF - HttpClient依赖冲突]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/117965636</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/117965636</guid><author>leen0304</author><pubDate>Wed, 16 Jun 2021 20:12:27 +0800</pubDate><description><![CDATA[1、报错信息：

# FAILED: SemanticException [Error 10014]: 
Line 2:22 Wrong arguments '"è”¡å¾å¤asda EXO"': 
org.apache.hadoop.hive.ql.metadata.HiveException: 
Unable to execute method public static java.lang.String GetStarKeyWord.evaluate(java.lang.String)  
on]]></description><category></category></item><item><title><![CDATA[hive - udf - regexp_extract - 使用注意点]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/117401010</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/117401010</guid><author>leen0304</author><pubDate>Sun, 30 May 2021 17:39:03 +0800</pubDate><description><![CDATA[hive - udf - regexp_extract - 使用注意点
hive函数：https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF
1、匹配不上返回的是 ‘’ 空，而非null


]]></description><category></category></item><item><title><![CDATA[Python模块subprocess]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/80844672</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/80844672</guid><author>leen0304</author><pubDate>Thu, 28 Jun 2018 16:01:28 +0800</pubDate><description><![CDATA[Python中可以执行shell命令的相关模块和函数有：os.systemos.spawn*os.popen*          --废弃popen2.*           --废弃commands.*      --废弃，3.x中被移除import commands

result = commands.getoutput('cmd')
result = commands.getstatus(...]]></description><category></category></item><item><title><![CDATA[linux下配置安装python3]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/80788775</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/80788775</guid><author>leen0304</author><pubDate>Sun, 24 Jun 2018 07:22:30 +0800</pubDate><description><![CDATA[一、首先，官网下载python3的所需版本。wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz想下载到那个文件夹下就先进入到那个文件夹下——cd /home/download二、然后，解压缩文件》tar -xvf Python-3.6.0.tgz三、创建安装文件的路径。mkdir /usr/local/python3四、编译。...]]></description><category></category></item><item><title><![CDATA[linux下mysql中文乱码(中文问号)解决办法]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/80534609</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/80534609</guid><author>leen0304</author><pubDate>Fri, 01 Jun 2018 10:45:43 +0800</pubDate><description><![CDATA[安装完的MySQL的默认字符集为 latin1 ，为了要将其字符集改为用户所需要的(比如utf8)，就必须改其相关的配置文件；由于linux下MySQL的默认安装目录分布在不同的文件下；不像windows一样放在同一目录下，只需修改其中的my.ini文件，重起后就生效了；所以先来看看linux下MySQL的数据库文件、配置文件和命令文件分别在不同的目录 ： 1、数据库目录，其所创建的数据库文件都在...]]></description><category></category></item><item><title><![CDATA[Hive创建表时添加中文注释后乱码问题]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/80534385</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/80534385</guid><author>leen0304</author><pubDate>Fri, 01 Jun 2018 10:37:26 +0800</pubDate><description><![CDATA[创建数据表时我们经验会添加一些中文注释到表里面方便识别，最近在测试hive的时候，发现添在Hive创建表时添加COMMENT时的中文注释就会出现乱码，如下：解压思路：1、查看存放Hive元数据信息的数据库表字符集；是否因为字符集问题可以看出，由于表使用的是默认的latin1字符集，所以中文显示不出来，应该使用utf8；但是很奇怪，我整个Mysql都是使用utf8的字符集；所以这个与Mysql的配置...]]></description><category></category></item><item><title><![CDATA[Linux shell 执行命令 echo是否包含换行符的问题]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/80508013</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/80508013</guid><author>leen0304</author><pubDate>Wed, 30 May 2018 11:46:30 +0800</pubDate><description><![CDATA[Linux shell脚本中执行命令结果赋值给变量&amp;amp;&amp;amp;echo输出变量是否包含换行符的问题echo $ret 和 echo &quot;$ret&quot; 区别：如果是echo $ret，输出结果为一行，没有换行符如果是echo &quot;$ret&quot;，输出结果为多行，有换行符-------------------------------------------------------------------...]]></description><category></category></item><item><title><![CDATA[HIVE中get_json_object与json_tuple使用]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/80272144</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/80272144</guid><author>leen0304</author><pubDate>Thu, 10 May 2018 18:58:01 +0800</pubDate><description><![CDATA[hive中提供了两种针对json数据格式解析的函数，即get_json_object（…）与json_tuple(…)，理论不多说，直接上效果示意图：假设存在如下json数据对象，若使用hive环境可这么设置：set hivevar:msg={
&quot;message&quot;:&quot;2015/12/08 09:14:4&quot;, 
&quot;client&quot;: &quot;10.108.24.253&quot;, 
&quot;server&quot;: &quot;passp.]]></description><category></category></item><item><title><![CDATA[hive1.1  启动异常 ：Caused by: MetaException(message:Version information not found in metastore. )]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/79886335</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/79886335</guid><author>leen0304</author><pubDate>Tue, 10 Apr 2018 19:33:02 +0800</pubDate><description><![CDATA[配置完成Mysql存储元数据信息，启动异常：Caused by: MetaException(message:Version information not found in metastore.Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiat]]></description><category></category></item><item><title><![CDATA[Spark面对OOM问题的解决方法及优化总结]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/79730366</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/79730366</guid><author>leen0304</author><pubDate>Wed, 28 Mar 2018 16:58:04 +0800</pubDate><description><![CDATA[Spark中的OOM问题不外乎以下两种情况map执行中内存溢出shuffle后内存溢出    map执行中内存溢出代表了所有map类型的操作，包括：flatMap，filter，mapPatitions等。shuffle后内存溢出的shuffle操作包括join，reduceByKey，repartition等操作。后面先总结一下我对Spark内存模型的理解，再总结各种OOM的情况相对应的解决办法和]]></description><category></category></item><item><title><![CDATA[编译Spark2.+ 、Hadoop CDH 版本]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/79037809</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/79037809</guid><author>leen0304</author><pubDate>Thu, 11 Jan 2018 19:42:04 +0800</pubDate><description><![CDATA[参考官方文档：http://spark.apache.org/docs/latest/building-spark.html

Spark2.2+移除了对hadoop2.5的支持！！！

一、 Spark-2.1.2 编译环境准备

1、hadoop-2.5.0-cdh5.3.6 
2、安装并配置好Maven(本次编译使用apache maven 3.3.9) 
3、 安装并配置JDK(本次编译使...]]></description><category></category></item><item><title><![CDATA[hive表的存储格式 : ORC格式的使用]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/78962658</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/78962658</guid><author>leen0304</author><pubDate>Wed, 03 Jan 2018 16:28:55 +0800</pubDate><description><![CDATA[hive表的源文件存储格式有几类：1、TEXTFILE 
默认格式，建表时不指定默认为这个格式，导入数据时会直接把数据文件拷贝到hdfs上不进行处理。源文件可以直接通过hadoop fs -cat 查看2、SEQUENCEFILE 
一种Hadoop API提供的二进制文件，使用方便、可分割、可压缩等特点。 
SEQUENCEFILE将数据以< key,value>的形式序列化到文件中。序列化和反序]]></description><category></category></item><item><title><![CDATA[Hive学习之抽样（tablesample）]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/78961941</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/78961941</guid><author>leen0304</author><pubDate>Wed, 03 Jan 2018 15:41:03 +0800</pubDate><description><![CDATA[当数据量特别大时，对全体数据进行处理存在困难时，抽样就显得尤其重要了。抽样可以从被抽取的数据中估计和推断出整体的特性，是科学实验、质量检验、社会调查普遍采用的一种经济有效的工作和研究方法。Hive支持桶表抽样和块抽样，下面分别学习。所谓桶表指的是在创建表时使用CLUSTERED BY子句创建了桶的表。桶表抽样的语法如下：table_sample: TABLESAMPLE (BUCKET x OUT]]></description><category></category></item><item><title><![CDATA[SparkSQL 之 基于Java实现UDF和UDAF详解]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/78914292</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/78914292</guid><author>leen0304</author><pubDate>Wed, 27 Dec 2017 17:11:28 +0800</pubDate><description><![CDATA[UDF源码：最多传入参数为22个//传入两个参数
def register(name: String, f: UDF2[_, _, _], returnType: DataType): Unit = {
  val func = f.asInstanceOf[UDF2[Any, Any, Any]].call(_: Any, _: Any)
  functionRegistry.registerFu]]></description><category></category></item><item><title><![CDATA[SparkSQL 之 RDD转为DataSet的两种方式]]></title><link>https://blog.youkuaiyun.com/leen0304/article/details/78909810</link><guid>https://blog.youkuaiyun.com/leen0304/article/details/78909810</guid><author>leen0304</author><pubDate>Wed, 27 Dec 2017 10:54:54 +0800</pubDate><description><![CDATA[DataFrame可以从结构化文件、hive表、外部数据库以及现有的RDD加载构建得到。这里主要针对从现有的RDD来构建DataFrame进行实践与解析。
  Spark SQL支持将现有的RDDs转换为DataSet的两种不同的方法。
 第一种方法是使用反射来推断包含特定对象类型的RDD的模式。在写Spark程序的同时，已经知道了模式，这种基于反射的方法可以使代码更简洁并且程序工作得更好。第二种方]]></description><category></category></item></channel></rss>