<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Sarahdsy的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Sarahdsy</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Sarahdsy]]></copyright><item><title><![CDATA[第2章 算法--程序的灵魂]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/129301178</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/129301178</guid><author>Sarahdsy</author><pubDate>Thu, 02 Mar 2023 22:27:48 +0800</pubDate><description><![CDATA[算法是灵魂，数据结构是加工对象，语言是工具]]></description><category></category></item><item><title><![CDATA[第一章 程序设计和C语言]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/129261074</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/129261074</guid><author>Sarahdsy</author><pubDate>Wed, 01 Mar 2023 10:13:53 +0800</pubDate><description><![CDATA[C语言基础知识，入门必备，适合2年以内工作经验或者初学者阅读]]></description><category></category></item><item><title><![CDATA[数据仓库(二) 数仓理论（重点核心）]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106931344</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106931344</guid><author>Sarahdsy</author><pubDate>Tue, 23 Jun 2020 20:25:09 +0800</pubDate><description><![CDATA[文章目录数据仓库(二) 数仓理论（重点核心）数仓分层数据仓库分层ODS层DWD层DWS层DWT层ADS层数据仓库分层的好处关系建模与维度建模关系建模维度建模星型模型雪花模型星型模型与雪花模型的区别星座模型模型的选择维度表和事实表（重点）维度表维度表的概念维表的特征举例 - 时间维度表事实表事实表的概念事实表的特征事实表的分类事务型事实表周期型快照事实表累积型快照事实表数据仓库建模（绝对重点）ODS层DWD层选择业务过程声明粒度确认维度确认事实小结DWS层DWT层ADS层数据同步策略全量同步策略增量同步策略新]]></description><category></category></item><item><title><![CDATA[数据仓库(一) 项目需求与架构设计]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106891800</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106891800</guid><author>Sarahdsy</author><pubDate>Sun, 21 Jun 2020 21:51:34 +0800</pubDate><description><![CDATA[文章目录数据仓库(一) 项目需求与架构设计数据仓库概念项目需求及架构设计项目需求分析项目框架技术选型系统数据流程设计框架版本选型如何选择Apache/CDH/HDP版本？Apache框架版本服务器选型集群资源规划设计集群规模测试集群服务器规划
数据仓库(一) 项目需求与架构设计
数据仓库概念

数据仓库(Data Warehouse)，是为企业所有决策制定过程，提供所有系统数据支持的战略集合。
通过对数据仓库中数据的分析，可以帮助企业，改进业务流程，控制成本，提供产品质量等。
数据仓库，并不是数据的最终目的]]></description><category></category></item><item><title><![CDATA[HBase优化]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106880008</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106880008</guid><author>Sarahdsy</author><pubDate>Sun, 21 Jun 2020 00:06:39 +0800</pubDate><description><![CDATA[文章目录HBase优化预分区手动设定预分区生成十六进制序列预分区按照文件中设置的规则预分区使用JavaAPI创建预分区RowKey设计rowkey常用的设计方案生成随机数，hash，散列值字符串反转字符串拼接案例分析内存优化基础优化ZooKeeper会话超时时间设置RPC监听数量手动控制Major Compaction优化HStore文件大小优化HBase客户端缓存指定scan.next扫描HBase所获取的行数BlockCache占用RegionServer堆内存的比例MemStore占用RegionSe]]></description><category></category></item><item><title><![CDATA[HBase进阶]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106877894</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106877894</guid><author>Sarahdsy</author><pubDate>Sat, 20 Jun 2020 21:24:08 +0800</pubDate><description><![CDATA[文章目录HBase进阶RegionServer架构StoreFileMemStoreWALBlockCache写流程MemStore Flush读流程小结StoreFile CompactionRegion SplitRegion Split时机：其他的切分策略：Split流程小结
HBase进阶

总是找不到合适的开场白，哎。。。

RegionServer架构

StoreFile

保存实际数据的物理文件，StoreFile以HFile的形式存储在HDFS上。
每个Store会有一个或多个StoreF]]></description><category></category></item><item><title><![CDATA[HBase基础篇]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106866747</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106866747</guid><author>Sarahdsy</author><pubDate>Sat, 20 Jun 2020 00:51:31 +0800</pubDate><description><![CDATA[文章目录HBase基础HBase定义HBase数据模型HBase逻辑结构HBase物理存储结构数据模型Name SpaceTableRowColumnTime StampCellHBase基本架构架构角色RegionServerMasterZooKeeperHDFS
HBase基础

GFS -&gt; 高富帅
MapReduce -&gt; MR -&gt; 名人
BigTable -&gt; BT -&gt; ??

HBase定义

HBase是一种分布式，可扩展，支持海量数据存储的NoSQL数据库
]]></description><category></category></item><item><title><![CDATA[Spark Streaming]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106846116</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106846116</guid><author>Sarahdsy</author><pubDate>Fri, 19 Jun 2020 00:05:50 +0800</pubDate><description><![CDATA[[toc]
Spark Streaming
Spark Streaming 概述
Spark Streaming 是什么

Spark Streaming 使得构建可扩展的容错流应用程序变得更加容易
Spark Streaming 无法实现真正的流式数据处理。使用了微批次数据处理。
Spark Streaming 是一个准实时数据处理引擎。



实时：数据处理的延迟在毫秒级进行响应


离线：数据处理的延迟在小时，天，月，年进行响应


批处理：数据处理的方式


流式：数据处理的方式



Spark ]]></description><category></category></item><item><title><![CDATA[Spark内核解析(三) Task级调度(源码解析)]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106845432</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106845432</guid><author>Sarahdsy</author><pubDate>Thu, 18 Jun 2020 23:20:09 +0800</pubDate><description><![CDATA[文章目录Spark内核解析(三) Task级调度(源码解析)DAGScheduler --&gt;TaskSchedulerTaskScheduler提交任务将TaskSetManager加入到调度队列RPC通知自身启动任务资源提供相关运行任务Executor执行任务总结
Spark内核解析(三) Task级调度(源码解析)

前面有篇博文已经讲解了基本的任务调度机制，这篇博文的目的是剖析Task级调度，来更好的理解Driver和Executor之间任务的分发。Task级调度比Stage级调度要复杂很多，这]]></description><category></category></item><item><title><![CDATA[Spark内核解析(二) 任务调度机制]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106845348</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106845348</guid><author>Sarahdsy</author><pubDate>Thu, 18 Jun 2020 23:17:18 +0800</pubDate><description><![CDATA[文章目录Spark内核解析(二) 任务调度机制Spark 任务调度概述Spark Stage级调度涉及到Job提交的相关方法调用流程图以WordCount来举个例子小结Spark Task级调度TaskSetManager的结构调用流程图调度策略FIFO 调度策略FAIR 调度策略本地化调度失败重试与黑名单机制总结
Spark内核解析(二) 任务调度机制

在上一篇博文中，我们讲解了Spark Yarn-Cluster模式下的任务提交流程
https://blog.youkuaiyun.com/Sarahdsy/art]]></description><category></category></item><item><title><![CDATA[Spark内核解析(一) Spark向Yarn提交应用(源码解析)]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106817884</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106817884</guid><author>Sarahdsy</author><pubDate>Wed, 17 Jun 2020 20:37:19 +0800</pubDate><description><![CDATA[文章目录Spark内核解析(一) Spark向Yarn提交应用(源码解析)执行脚本提交任务执行提交操作解析参数提交使用提交的参数，运行child class的main方法准备提交环境通过类名加载这个类反射创建类的对象并进行类型转换运行childMainClass的start方法运行YarnClusterApplication封装参数创建客户端对象运行 - 提交应用配置JVM的启动参数向Yarn提交应用运行ApplicationMaster启动用户的应用线程阻塞，等待对象(SparkContext)的返回注册]]></description><category></category></item><item><title><![CDATA[SparkSQL 核心编程]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106736806</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106736806</guid><author>Sarahdsy</author><pubDate>Sat, 13 Jun 2020 19:23:01 +0800</pubDate><description><![CDATA[文章目录SparkSQL 核心编程新的起点DataFrame创建DataFrame从Spark数据源进行创建从RDD进行转换从Hive Table进行查询返回SQL语法DSL语法RDD转换为DataFrameDataFrame转换为RDDDataSet创建DataSetRDD转换为DataSetDataSet转换为RDDDataFrame和DataSet转换RDD，DataFrame，DataSet 三者的关系三者的共性三者的区别三者的互相转换IDEA开发SparkSQL用户自定义函数UDFUDAF弱类型 ]]></description><category></category></item><item><title><![CDATA[SparkRDD - 基础编程]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106650319</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106650319</guid><author>Sarahdsy</author><pubDate>Tue, 09 Jun 2020 20:44:05 +0800</pubDate><description><![CDATA[SparkRDD - 基础编程
RDD序列化
闭包检测

从计算的角度，算子以外的代码都是在Driver端执行，算子里面的代码都是在Executor端执行。那么在scala的函数式编程中，就会导致算子内经常会用到算子外的数据，这样就形成了闭合的效果。
如果使用的算子外的数据无法序列化，就意味着无法传值给Executor端执行，就会发生错误。所以，需要在执行任务计算前，检测闭包内的对象是否可以进行序列化，这个操作我们称之为闭包检测。
Scala2.12版本后闭包编译方式发生了改变。

源码说明
我们执行col]]></description><category></category></item><item><title><![CDATA[Spark核心编程(RDD行动算子)-action]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106597118</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106597118</guid><author>Sarahdsy</author><pubDate>Sun, 07 Jun 2020 08:14:15 +0800</pubDate><description><![CDATA[文章目录RDD行动算子reducecollectcountcountByValuefirsttaketakeOrderedaggregatefoldcountByKeysava相关算子foreach
RDD行动算子

所谓的行动算子，其实不会再产生新的RDD，而是触发作业的执行。行动算子执行后，会获取到作业的执行结果。
转换算子不会触发作业的执行，只是功能的扩展和包装。
Spark的行动算子执行时，会产生Job对象，然后提交这个Job对象。

reduce
函数签名：

def reduce(f: (T, ]]></description><category></category></item><item><title><![CDATA[Spark核心编程(RDD转换算子)之聚合算子]]></title><link>https://blog.youkuaiyun.com/Sarahdsy/article/details/106592984</link><guid>https://blog.youkuaiyun.com/Sarahdsy/article/details/106592984</guid><author>Sarahdsy</author><pubDate>Sat, 06 Jun 2020 20:27:39 +0800</pubDate><description><![CDATA[文章目录RDD转换算子 之 聚合算子reduceByKey说明案例groupByKey说明案例aggregateByKey说明案例foldByKey说明案例combineByKey说明案例聚合算子小结有预聚合reduceByKeyaggregateByKeyfoldByKeycombineByKey无预聚合groupByKey
RDD转换算子 之 聚合算子
聚合算子可以说是Spark计算里面的核心，所以搞懂底层的实现很有必要。
reduceByKey
说明

可以将数据按照相同的key对value进行聚合
]]></description><category></category></item></channel></rss>