<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SONGZ的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/TrUthSong</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; TrUthSong]]></copyright><item><title><![CDATA[数据仓库Hive]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/115529433</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/115529433</guid><author>TrUthSong</author><pubDate>Thu, 08 Apr 2021 21:31:45 +0800</pubDate><description><![CDATA[什么是hive
hive是建立在hadoop上的数据仓库基础构架。提供了一系列的工具，可以用来数据的提取转化加载（ETL）
Hive定义了简单的类sql语言，允许熟悉sql的用户直接查询hadoop中的数据，同时，这个语言也允许熟悉MapReduce的开发者开发自定义函数来完成sql函数无法完成的复杂分析任务
Hive中包含解析sql的引擎，它将sql语句转译成MR job 然后在hadoop中执行
hive的系统架构

用户接口：CLI，JDBC/ODBC，WebUI
元数据存储（MetaStore）：m]]></description><category></category></item><item><title><![CDATA[快速了解spark]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/115517926</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/115517926</guid><author>TrUthSong</author><pubDate>Thu, 08 Apr 2021 15:19:55 +0800</pubDate><description><![CDATA[初识Spark
什么是spark

spark是用于大规模数据处理的计算引擎。
离线spark core 、spark sql；实时数据计算spark streaming
基于内存的计算引擎（速度会比MapReduce快几十倍）

spark 特点

速度快（基于内存、DAG scheduler）
易用性（高阶函数，支持多种编程语言）
通用性
到处运行

spark对比Hadoop

hadoop是一个平台。包含了 MapReduce（计算引擎）HDFS（存储）Yarn（资源管理）。所以从综合能力还说Had]]></description><category></category></item><item><title><![CDATA[Java基础-计算机网络面试相关整理]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/115471151</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/115471151</guid><author>TrUthSong</author><pubDate>Tue, 06 Apr 2021 23:39:18 +0800</pubDate><description><![CDATA[OSI七层模型

物理层：传输比特流
数据链路层：如何格式化数据。将比特数据变成帧
网络层：网络地址翻译成物理地址，如何将数据由发送方路由到接收方。（IP协议）
传输层：保证大量文件传输准确性，需对发送文件进行切分。对数据流控和差错校验。保证传输质量（TCP UDP）
会话层：建立、管理、终止会话
表示层：语义转化
应用层：（HTTP）



TCP三次握手、四次挥手
TCP报文头
序列号seq：4字节。
确认ACK：1 有效 0 无效
同步SYN：1 表示连接请求。0 握手成功之后会被置0
终止FIN：释]]></description><category></category></item><item><title><![CDATA[Hadoop 3.0x 内容整理]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/105125358</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/105125358</guid><author>TrUthSong</author><pubDate>Sat, 28 Mar 2020 20:46:17 +0800</pubDate><description><![CDATA[Hadoop 3.0x官方文档
JDK版本升级
Hadoop 3.0x 所有的JAR编译均是在Java 8 环境下编译的。
HDFS Erasure Coding （EC）
Erasure Coding ：数据恢复的一种编码容错技术。能节省数据副本存储的磁盘空间。相比2.0x版本能节省一半的磁盘空间，但是会消耗更多其他的资源，比如网络带宽或者CPU
有校验数据块和原始数据块两部分。
校验数据块可以...]]></description><category></category></item><item><title><![CDATA[Mapreduce相关整理]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/105055255</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/105055255</guid><author>TrUthSong</author><pubDate>Mon, 23 Mar 2020 21:24:18 +0800</pubDate><description><![CDATA[MapReduce编程模型

1.inputFormat 输入文件，split拆分。
2.Mapping阶段，按指定分割符拆分数据，按指定格式输出。
3.shuffle阶段，依据key对数据进行归并，将相同的key的数据整合到一起。
4.reduce阶段，逻辑运算，如求和，求平均等。
Map阶段：map task
public class WordCountMapper extends Mappe...]]></description><category></category></item><item><title><![CDATA[HDFS整理]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/104827872</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/104827872</guid><author>TrUthSong</author><pubDate>Fri, 13 Mar 2020 11:38:18 +0800</pubDate><description><![CDATA[HDFS副本摆放策略
若本地节点是DN，则本地节点一份；同机架的随机另一个节点一份；不同机架随机节点一份。
若本地节点不是DN，则随机节点一份；该节点同机架随机另一节点一份；不同机架随机节点一份。
HDFS写数据流程

HDFS读数据

hdfs shell命令
-ls 显示文件、目录信息
-mkdir 在hdfs上创建目录，-p表示会创建路径中的各级父目录
-put 将单个src或多个srcs从...]]></description><category></category></item><item><title><![CDATA[ubuntu18 安装 Docker Docker-compose]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/104518134</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/104518134</guid><author>TrUthSong</author><pubDate>Wed, 26 Feb 2020 16:51:35 +0800</pubDate><description><![CDATA[ubuntu安装docker
 sudo apt-get install docker.io

拉取hello-world镜像验证docker是否安装成功。
sudo docker pull hello-world

运行hello-world
sudo docker run hello-world

PS:不使用sudo 即可执行docker命令
sudo groupadd docker
sud...]]></description><category></category></item><item><title><![CDATA[Java基础 - 集合框架]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/104389487</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/104389487</guid><author>TrUthSong</author><pubDate>Wed, 19 Feb 2020 15:01:01 +0800</pubDate><description><![CDATA[treeset 实现排序 实现comparable接口。
HashMap：
Java8前：数组+链表
通过hash(key.hashcode())%len计算要添加的元素存放的数组位置。
如果总是分配到同一个桶中，则会性能恶化从O(1)变成O(n)
Java8后：数组+链表+红黑树
TREEIFY_THRESHOLD 将链表转化成红黑树 将最坏性能从O(n)提升为O(logn)
HashMap ...]]></description><category></category></item><item><title><![CDATA[Java基础 - java多线程与并发]]></title><link>https://blog.youkuaiyun.com/TrUthSong/article/details/104300849</link><guid>https://blog.youkuaiyun.com/TrUthSong/article/details/104300849</guid><author>TrUthSong</author><pubDate>Fri, 14 Feb 2020 17:12:26 +0800</pubDate><description><![CDATA[Q1:进程和线程的区别
进程独占内存空间，保存各自运行状态，相互间不干扰且可以互相切换，为并发处理任务提供可能。
线程共享进程的内存资源，相互间切换更快速，支持更细粒度的任务控制，使进程内的子任务得以并发执行。
进程是资源分配的最小单位。线程是CPU调度的最小单位。

线程不能看做独立应用，而进程可以看做独立应用。
线程有独立地址空间，相互不影响，线程只是进程的不同执行路径。
线程没有独立的地址空...]]></description><category></category></item></channel></rss>