<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SW_LCC的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/SW_LCC</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; SW_LCC]]></copyright><item><title><![CDATA[Hive Exceeded MAX_FAILED_UNIQUE_FETCHES； bailing-out.]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/114582231</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/114582231</guid><author>SW_LCC</author><pubDate>Tue, 09 Mar 2021 14:27:57 +0800</pubDate><description><![CDATA[hive查询时，报错Error: org.apache.hadoop.mapreduce.task.reduce.Shuffle$ShuffleError: error in shuffle in fetcher#2
Hive Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out.
系统设置有关，文件较大，无法分配大内存
通过调整集群内存大小解决问题。

...]]></description><category></category></item><item><title><![CDATA[Hadoop误删文件后恢复]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/109521166</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/109521166</guid><author>SW_LCC</author><pubDate>Thu, 05 Nov 2020 21:42:12 +0800</pubDate><description><![CDATA[删除文件
不小心把hdfs里面的文件夹删除了，执行命令如下:
hdfs dfs -rm -r /user/hadoop/analyse/game

到回收站中找到文件

设置回收站
    &lt;property&gt;
          &lt;name&gt;fs.trash.interval&lt;/name&gt;
          &lt;value&gt;1440&lt;/value&gt;
    &lt;/property&gt;

如果有设置回收站，hadoop删除文件时，不会立即删]]></description><category></category></item><item><title><![CDATA[Container killed on request. Exit code is 143]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/109474269</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/109474269</guid><author>SW_LCC</author><pubDate>Tue, 03 Nov 2020 17:50:49 +0800</pubDate><description><![CDATA[升级hadoop集群后，跑hive sql发现任务一直报错跑不了。
在hive的cli界面执行sql，提示错误
ERROR: FAILED: Execution Error,return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

查看详细的日志，发现该job分发到4个节点执行，其中都报相同的错误，提示类似:
Current usage: 1GB of 1 GB physical memory used; 2.5 GB of 1.1 G]]></description><category></category></item><item><title><![CDATA[Rpc框架(一)要点介绍]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/109297202</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/109297202</guid><author>SW_LCC</author><pubDate>Mon, 26 Oct 2020 19:53:19 +0800</pubDate><description><![CDATA[Rpc框架笔记
rpc是远程过程调用，可做到像本地一样调用远程服务，是一种进程间通信方式。
#mermaid-svg-sMP8VkWFbzaIVdmE .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-sMP8VkWFbzaIVdmE .label text{fill:#333}#mermaid-svg-sMP8V]]></description><category></category></item><item><title><![CDATA[hive表修改map分隔符]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/109002053</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/109002053</guid><author>SW_LCC</author><pubDate>Sat, 10 Oct 2020 18:16:07 +0800</pubDate><description><![CDATA[修改hive表属性用如下格式：
alter table tablename set serdeproperties(‘属性名’=‘属性值’);
表名为tablename
如修改hive表的map分隔符属性为 ‘:’  	  :
alter table table1 set serdeproperties(‘mapkey.delim’=’:’);

...]]></description><category></category></item><item><title><![CDATA[Spark作业调度类型]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/107069087</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/107069087</guid><author>SW_LCC</author><pubDate>Wed, 01 Jul 2020 17:58:53 +0800</pubDate><description><![CDATA[Spark作业调度
Spark 作业的意思是一个 Spark 动作以及执行该动作的所需要启动的任务。 Spark 的调度是完全
线程安全的， 使应用程序支持多个请求。


FIFO
默认情况下， Spark 遵循 FIFO（先进先出） 方式调度作业。如果位于队列头的作业不需要使用
整个集群资源， 后面的作业可以立即开始，但如果队列头的作业工作量很大， 位于队列后部的
作业可能会被延迟启动。


FAIR
Spark 以轮询（ round-robin） 方式调度各作业并分配任务，以便所有作业获得大致相等的集群]]></description><category></category></item><item><title><![CDATA[Spark释义Dataset、DataFrame、SQL]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/106949194</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/106949194</guid><author>SW_LCC</author><pubDate>Wed, 24 Jun 2020 18:09:41 +0800</pubDate><description><![CDATA[数据分区
为了多个执行器能并行地工作，spark降数据分解成多个数据块，每个数据块是一个分区。
转换
进行转换时，数据会被自动分区。
转换分为两种：一种窄依赖关系的转换，一种是宽依赖关系的转换。
窄依赖转换时一个分区只会输出一个分区。
宽依赖转换时一个分区可转换多个分区。
惰性操作
惰性指等到必须执行时才计算。用户的一些操作，不会立即修改数据，而是建立转换计划并转化为流水线的物理计划。
目的是优化物理计划，减少扫描实际用不到的数据.
   val flightData2015 = spark
     .r]]></description><category></category></item><item><title><![CDATA[Linux定时调度crontab]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/106862091</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/106862091</guid><author>SW_LCC</author><pubDate>Fri, 19 Jun 2020 18:47:57 +0800</pubDate><description><![CDATA[crontab
Linux下的任务调度分为用户调度和系统调度
系统调度：操作系统需要执行的周期性任务，操作命令卸载/etc 下的crontab中。
用户任务调度： 用户要定期执行的工作，用户可以使用crontab命令来定制自己的计划任务。 所有用户定义的crontab文件都被
保存在/var/spool/cron目录中， 其文件名与用户名一致
1.crontab命令
crontab使用格式如下 :
    crontab [-u user] file
    crontab [-u user] [ -e |]]></description><category></category></item><item><title><![CDATA[Redis数据结构之跳跃表]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105377058</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105377058</guid><author>SW_LCC</author><pubDate>Tue, 07 Apr 2020 23:39:59 +0800</pubDate><description><![CDATA[跳跃表在每个节点中维持多个指向其他节点的指针，可快速访问节点且有序
跳跃表查找复杂度为平均O(logN),最坏O(N)
跳跃表使用于有序集合元素数量比较多或者元素是比较长的字符串的场景。
跳跃表节点
    typedef struct zskiplistNode{
        //层
        struct zskiplistNode{
            //前进指针
     ...]]></description><category></category></item><item><title><![CDATA[邮件报 535 5.7.0 Error: authentication failed]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105339644</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105339644</guid><author>SW_LCC</author><pubDate>Mon, 06 Apr 2020 10:44:45 +0800</pubDate><description><![CDATA[邮件发送认证失败，原因可能如下:
(1)使用的账号，密码跟邮箱登陆的账号密码不一致。
(2)客户端授权码没有开启，可在邮箱设置查看客户端授权码，看POP3/SMTP服务和IMAP/SMTP服务是否开启
注意使用的主机名也要查看是否正确，否则会包550 5.7.1 Client does not have permissions to send as this sender 即使用了不存在或没权限的...]]></description><category></category></item><item><title><![CDATA[Redis哈希键冲突问题]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105330322</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105330322</guid><author>SW_LCC</author><pubDate>Sun, 05 Apr 2020 17:45:45 +0800</pubDate><description><![CDATA[哈希算法
在Redis的字典中，当要将一个新的键值对添加字典时，需将键值对的键计算出哈希值和索引，由得出的哈希值决定放在哈希表数组的哪个索引上。
哈希冲突
当两个或以上数量的键被分到哈希表数组同一个位置时，键就发生冲突。
解决哈希冲突
Redis哈希表采用链地址法解决键冲突，每个哈希表的节点会有next指针，被分到同一个位置的键值对节点就会使用单链表连接起来。
如图:

rehash
哈希表保存的...]]></description><category></category></item><item><title><![CDATA[Redis数据结构之字典]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105322121</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105322121</guid><author>SW_LCC</author><pubDate>Sun, 05 Apr 2020 09:03:49 +0800</pubDate><description><![CDATA[字典是用于保存键值对的抽象数据结构，对数据库的增删改查都是构建在对字典的操作上。字典是哈希键的底层实现值一，当一个哈希键包含的键值对较多或键值对中的元素是比较长的字符串时，Redis就使用字典作为哈希键，哈希表是字典的底层实现。
哈希表
    typedef struct dictht{
        //哈希表数组
        dicEntry **table;

        //哈...]]></description><category></category></item><item><title><![CDATA[Redis数据结构之链表]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105317719</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105317719</guid><author>SW_LCC</author><pubDate>Sat, 04 Apr 2020 21:32:00 +0800</pubDate><description><![CDATA[链表提供高效的节点重排能力，以及顺序性的节点访问方式，并且可以通过增删节点调整链表的长度。
在Redis中，当一个列表键包含数量比较多的元素或元素都是比较长的字符串时，Redis就会使用链表作为列表键的底层实现。
链表和链表节点的实现
链表节点:
    typedef struct listNode{
        //前置节点
        struct listNode * prev;
...]]></description><category></category></item><item><title><![CDATA[Redis数据结构之SDS]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105316901</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105316901</guid><author>SW_LCC</author><pubDate>Sat, 04 Apr 2020 20:54:48 +0800</pubDate><description><![CDATA[Redis里使用SDS来表示字符串值，用于可变的字符串值。而C字符串用于无须改变的字符串。
例如:
Redis&gt;set msg "hello"

Redis会在数据库中创建一个新的键值对，其中键 "msg"为SDS,而值为"hello"的SDS。
除了用于保存字符串值,SDS还会被用作缓冲区:
AOF模块中的AOF缓冲区
客户端输入状态中的输入缓冲区
SDS的定义
    struct sd...]]></description><category></category></item><item><title><![CDATA[NoSQL简介]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105258756</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105258756</guid><author>SW_LCC</author><pubDate>Wed, 01 Apr 2020 23:23:47 +0800</pubDate><description><![CDATA[NoSQL特点

NoSQL ,意思未不仅是SQL,指非关系型数据库
NoSQL不伊利业务逻辑方式存储，而是使用key-value模式存储。
不遵循SQL标准
不支持ACID
性能比传统SQL好很多

常见NoSQL数据库


Memcached
特点:
1.很早出现的NoSql数据库
2.数据都在内存中，一般不持久化
3.支持简单的key-value模式
4.一般是作为缓存数据库辅助持久化的数据...]]></description><category></category></item><item><title><![CDATA[HTTP(4)状态码]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105235267</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105235267</guid><author>SW_LCC</author><pubDate>Tue, 31 Mar 2020 23:14:45 +0800</pubDate><description><![CDATA[状态码是客户端发送请求时，描述返回的请求结果。
状态码类别





类别
说明




1XX
信息类状态码
接收的请求正在处理


2XX
成功状态码
请求正常处理完毕


3XX
重定向状态码
需要进行附加操作以完成请求


4XX
客户端错误状态码
服务器无法处理请求


5XX
服务端错误状态码
服务器处理请求出错


2XX状态码

200 ( 客户端发来的请求在服务端被正常处理）
2...]]></description><category></category></item><item><title><![CDATA[hive修改表结构后插入数据查询为空]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105229519</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105229519</guid><author>SW_LCC</author><pubDate>Tue, 31 Mar 2020 19:05:53 +0800</pubDate><description><![CDATA[最近使用hive的时候发现，当修改已存在的表，添加另外的列，然后插入数据，发现新插入的数据中，里面的新列数据皆为NULL。（当前hive版本为2.1.0)
查了一下资料，发现hive的元数据表SDS中，该表的CD_ID值为旧值，在更新表结构后该CD_ID有改动。
解决办法：
1.如果要解决这个问题，可以手动的修改SDS表中该数据表对应的CD_ID值。
2.可以手动的给该表的分区加上新增的列,如:
...]]></description><category></category></item><item><title><![CDATA[HTTP(3)HTTP报文]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105212399</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105212399</guid><author>SW_LCC</author><pubDate>Mon, 30 Mar 2020 23:58:37 +0800</pubDate><description><![CDATA[HTTP报文
用于HTTP协议交互的信息HTTP报文，HTTP报文本身由多行数据组成的字符串文本。
HTTP报文组成
HTTP分为报文首部和报文主体。

HTTP报文结构（请求主体和响应主体）


报文组成
报文组成主要为请求行，状态行，首部字段，其他。

请求行
包含用于请求的方法，请求URI和HTTP版本
状态行
包含表明响应结果的状态码，原因短语和HTTP版本
首部字段
包含请求和相应的各种...]]></description><category></category></item><item><title><![CDATA[HTTP(2)HTTP与其他通信协议的协作]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105186487</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105186487</guid><author>SW_LCC</author><pubDate>Sun, 29 Mar 2020 21:15:35 +0800</pubDate><description><![CDATA[与HTTP关系密切的协议

IP
TCP
DNS

IP协议
IP协议位于网络层，几乎所有网络系统都会使用到IP协议，TCP/IP协议族中的IP指的就是网际协议。
IP协议的作用是把各种数据包发送给对方，保证传送需要满足各类条件。其中IP地址和MAC地址最为重要。
(1)IP地址指明节点被分配到的地址
(2)MAC地址是指网卡所属的固定地址。
(3)IP地址可跟MAC地址配对，IP地址可变换，但M...]]></description><category></category></item><item><title><![CDATA[HTTP(1)TCP/IP传输]]></title><link>https://blog.youkuaiyun.com/SW_LCC/article/details/105159684</link><guid>https://blog.youkuaiyun.com/SW_LCC/article/details/105159684</guid><author>SW_LCC</author><pubDate>Sat, 28 Mar 2020 13:14:36 +0800</pubDate><description><![CDATA[TCP/IP协议族
目前使用的网络是运行在TCP/IP协议族的基础上的，HTTP是它内部的一个子集,TCP/IP是互联网相关的各类协议族的总称。
协议中包含从电缆规格到IP地址的选定方法，寻找异地用户的方法，双方建立通信的顺序，Web界面显示需要的处理步骤等内容。
TCP/IP分层
TCP/IP协议族按层次分为如下四层:应用层、传输层、网络层、数据链路层。
分层为了应对层次的变动，当某些地方需要改...]]></description><category></category></item></channel></rss>