<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[xiaolin030的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/xiaolin030</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xiaolin030]]></copyright><item><title><![CDATA[手把手教你用Matplotlib完成数据可视化]]></title><link>https://blog.youkuaiyun.com/xiaolin030/article/details/154657202</link><guid>https://blog.youkuaiyun.com/xiaolin030/article/details/154657202</guid><author>xiaolin030</author><pubDate>Tue, 11 Nov 2025 18:55:25 +0800</pubDate><description><![CDATA[在功能上，Matplotlib不仅支持包括折线图、柱状图、散点图、直方图、饼图在内的多种基础图表类型，还允许用户对图表的每一个视觉元素——如坐标轴、图例、标签、线条、颜色和文本——进行像素级精度的细致控制。Matplotlib是Python生态系统中最为核心和广泛使用的数据可视化库，它为用户提供了强大的二维图形绘制能力，其设计哲学在于以简洁的代码创建出具有出版物质量的静态、交互乃至动态的图表。是一个子模块，它提供了一个类似于MATLAB的命令式接口，极大地简化了常见绘图任务的创建过程。]]></description><category></category></item><item><title><![CDATA[Spark与Hive数据读取全解析：从底层RDD到高效DataFrame]]></title><link>https://blog.youkuaiyun.com/xiaolin030/article/details/154359382</link><guid>https://blog.youkuaiyun.com/xiaolin030/article/details/154359382</guid><author>xiaolin030</author><pubDate>Mon, 03 Nov 2025 20:20:38 +0800</pubDate><description><![CDATA[通过本文的详细探讨，我们可以清晰地看到Spark和Hive在数据读取方面的不同定位和优势。Spark Core提供了底层的灵活性和控制力，适合处理非结构化数据和实现复杂的分布式算法。Spark SQL则通过高级API和自动优化，为结构化数据处理提供了极致的性能和开发效率。Hive作为成熟的数据仓库解决方案，在数据管理和集成方面展现出强大的能力。在实际项目中，建议根据具体需求选择合适的数据读取策略：对于实时数据处理和复杂分析，优先使用Spark SQL；]]></description><category></category></item><item><title><![CDATA[YARN高可用核心机制：深度解析ResourceManager故障恢复与任务接管]]></title><link>https://blog.youkuaiyun.com/xiaolin030/article/details/151763968</link><guid>https://blog.youkuaiyun.com/xiaolin030/article/details/151763968</guid><author>xiaolin030</author><pubDate>Tue, 16 Sep 2025 20:41:35 +0800</pubDate><description><![CDATA[用户无法提交新的应用程序，运行中的任务虽然不会立即停止（因为ApplicationMaster和Container仍在NodeManager上运行），但将失去统一的管理和调度能力，无法申请新的资源，无法处理任务失败，最终导致业务中断和数据不一致。本文将深入剖析YARN ResourceManager故障恢复的技术内幕，从高可用架构的搭建，到故障发生时的检测与切换，再到新RM如何一步步重建集群状态并恢复任务管理，为读者全面解读这一保证大数据平台连续稳定运行的核心机制。这是恢复过程中最关键的一步。]]></description><category></category></item><item><title><![CDATA[ZooKeeper的灵魂之旅：深入剖析ZooKeeper的领导者选举机制]]></title><link>https://blog.youkuaiyun.com/xiaolin030/article/details/151763517</link><guid>https://blog.youkuaiyun.com/xiaolin030/article/details/151763517</guid><author>xiaolin030</author><pubDate>Tue, 16 Sep 2025 20:16:39 +0800</pubDate><description><![CDATA[在网络发生分区时，至多只有一个分区能拥有多数派的节点并选举出Leader，另一个分区由于节点数不足无法达成选举，从而彻底避免了脑裂问题的发生，保证了集群数据的唯一正确性。：这是分布式共识算法的基础。：与传统的领导者选举算法（如基于Paxos的反复多轮投票）不同，ZK的选举算法通过TCP连接建立高效的网络通信，利用投票内容本身（ZXID, SID）进行快速比较和决策。这意味着新的领导者一定包含了所有已提交的事务，不会发生数据丢失或回滚到旧状态的情况，完美地满足了CP系统（一致性与分区容错性）的要求。]]></description><category></category></item><item><title><![CDATA[HDFS读写流程深度解析：从客户端调用到数据落盘]]></title><link>https://blog.youkuaiyun.com/xiaolin030/article/details/151725240</link><guid>https://blog.youkuaiyun.com/xiaolin030/article/details/151725240</guid><author>xiaolin030</author><pubDate>Mon, 15 Sep 2025 20:15:49 +0800</pubDate><description><![CDATA[客户端（Client）是用户与文件系统交互的入口，它实现了Hadoop文件系统抽象接口，负责将文件分割成固定大小的数据块（block，默认128MB），并管理与NameNode和DataNode的通信。这包括文件系统的目录树结构、文件到数据块的映射关系，以及数据块在集群中的分布情况。从架构视角来看，HDFS的读写流程体现了经典的分布式系统设计哲学：通过数据分片（sharding）和副本（replication）机制实现水平扩展，通过元数据与数据分离实现高效管理，通过管道化数据传输优化网络利用率。]]></description><category></category></item><item><title><![CDATA[从零开始搭建Hadoop HDFS分布式集群]]></title><link>https://blog.youkuaiyun.com/xiaolin030/article/details/151724619</link><guid>https://blog.youkuaiyun.com/xiaolin030/article/details/151724619</guid><author>xiaolin030</author><pubDate>Mon, 15 Sep 2025 20:04:41 +0800</pubDate><description><![CDATA[传统的数据存储方案，如关系型数据库和单机文件系统，在面对PB级别的非结构化数据时，早已力不从心。它将一个巨大的文件切分成若干个固定大小的数据块（Block，默认为128MB），并将这些数据块以多副本（默认为3份）的形式分布式地存储在整个集群的普通商用服务器上。通过将计算任务（如MapReduce）调度到数据所在的节点进行计算，极大地减少了网络传输开销，实现了数据本地化，从而提供了极高的数据吞吐率。]]></description><category></category></item><item><title><![CDATA[Linux 文件系统的 “身份证” 与 “储物间”：深入理解 inode 和 block]]></title><link>https://blog.youkuaiyun.com/xiaolin030/article/details/151081908</link><guid>https://blog.youkuaiyun.com/xiaolin030/article/details/151081908</guid><author>xiaolin030</author><pubDate>Mon, 01 Sep 2025 20:30:43 +0800</pubDate><description><![CDATA[inode 和 block 作为 Linux 文件系统的两大基石，分别承担着 “记录文件信息” 和 “存储文件数据” 的核心职责 ——inode 是文件的 “身份证”，记录了文件的元数据、权限和 block 指针；block 是数据的 “储物间”，存放着文件的实际内容。二者通过协同工作，不仅解释了 “移动文件快、复制文件慢” 的现象（移动文件只需修改目录中的 “文件名 - inode” 映射，无需操作 block；]]></description><category></category></item></channel></rss>