<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zm_tree的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/zm_tree</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zm_tree]]></copyright><item><title><![CDATA[PostgreSQL 17+ 关键基础监控指标详解]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/160515628</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/160515628</guid><author>zm_tree</author><pubDate>Sun, 26 Apr 2026 07:17:52 +0800</pubDate><description><![CDATA[一文详解postgres数据库需要关注的指标，将指标按致命→严重→警告三级分类重新组织，便于分层制定告警策略和响应SLA。WAL无法写入，触发PANIC: could not write to file，实例立即崩溃。非活跃复制槽无限保留WAL，间接导致磁盘100%崩溃。阻塞VACUUM清理，加速XID年龄增长，引发表膨胀。缓存不足导致磁盘I/O压力增大，查询性能下降。WAL保留>10GB严重，>50GB致命。排序/哈希溢出磁盘，消耗空间并增加I/O。I/O等待飙升，查询延迟大幅增加。]]></description><category></category></item><item><title><![CDATA[openclaw系列之卸载]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/160509838</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/160509838</guid><author>zm_tree</author><pubDate>Sat, 25 Apr 2026 23:40:23 +0800</pubDate><description><![CDATA[设计思路是：破坏性操作默认不执行，保护性操作默认执行。比如备份默认做，但删防火墙规则默认不做（可能有其他服务也用这个端口）。这保证了即使 Gateway 卡死或 systemd 服务异常，进程也能被彻底清理。通过端口信息，人工再次确认下openclaw已未运行。是否清除 rc 文件中的 openclaw 行？将我之前新手搭建的环境进行一键清除，符合预期。是否取消 loginctl linger？是否清理 npm 缓存？是否移除防火墙端口规则？输入 YES 确认卸载。]]></description><category></category></item><item><title><![CDATA[opeclaw系列之ECS安装新手版]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/160509782</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/160509782</guid><author>zm_tree</author><pubDate>Sat, 25 Apr 2026 23:34:14 +0800</pubDate><description><![CDATA[【代码】opeclaw系列之ECS安装新手版。]]></description><category></category></item><item><title><![CDATA[PostgreSQL17 向量功能]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/160351724</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/160351724</guid><author>zm_tree</author><pubDate>Tue, 21 Apr 2026 07:06:07 +0800</pubDate><description><![CDATA[本文介绍了pgvector扩展在PostgreSQL中的安装与使用。pgvector是开源向量相似度搜索扩展，支持多种向量类型和距离度量方式。文章详细讲解了编译安装步骤、核心数据类型（vector、halfvec、sparsevec）及其适用场景，并比较了IVFFlat和HNSW两种索引的原理与创建方法。实战部分演示了在RAG知识库场景中的应用，包括建表、写入向量和搜索操作。最后分析了pgvector的优缺点，指出其适合500万向量以内的场景，能够实现关系数据与向量数据的一站式处理，支持混合检索和完整SQL]]></description><category></category></item><item><title><![CDATA[agent背景下dify工具私有化安装部署实战]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/160293657</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/160293657</guid><author>zm_tree</author><pubDate>Sun, 19 Apr 2026 09:31:58 +0800</pubDate><description><![CDATA[摘要：本文介绍了开源LLM应用开发平台Dify的部署与使用。Dify支持可视化构建AI应用，兼容多种模型并支持私有化部署。文章详细说明了在Docker环境下部署Dify的步骤，包括环境初始化、镜像配置、防火墙设置等，并提供了接入本地模型(Ollama)的方法。通过知识库问答案例展示了Dify的功能，同时指出了其优缺点：可视化编排便捷但复杂逻辑受限，适合快速原型开发但不适用于高并发场景。最后给出了定期备份方案，并建议Dify适合AI入门学习，但不适合深度定制场景。]]></description><category></category></item><item><title><![CDATA[PostgreSQL17不同扫描场景执行计划解读实战]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/160258031</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/160258031</guid><author>zm_tree</author><pubDate>Fri, 17 Apr 2026 19:53:11 +0800</pubDate><description><![CDATA[本文详细解析了PostgreSQL的查询执行计划机制，通过EXPLAIN命令展示查询优化器生成的执行路径。核心内容包括： 基础扫描方式（SeqScan、IndexScan、BitmapScan）的性能特征与适用场景 三种JOIN算法（NestedLoop、HashJoin、MergeJoin）的实现原理与代价估算 高级特性：并行扫描、聚合优化、VisibilityMap机制 执行计划关键指标解读：cost值、Buffers统计、实际vs估算行数 性能调优方法]]></description><category></category></item><item><title><![CDATA[基于CPU的大模型安装实战]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/160039451</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/160039451</guid><author>zm_tree</author><pubDate>Sat, 11 Apr 2026 08:23:03 +0800</pubDate><description><![CDATA[Ollama是一款本地化运行大模型的工具，支持LLaMA、Qwen等开源模型，无需云端API。它简化了模型部署流程，自动处理下载、量化、推理等环节。安装后可通过命令行管理模型，支持交互对话和REST API调用。文章详细介绍了Ollama的安装步骤、常用命令、模型部署方法（以deepseek-r1:1.5b为例），以及高可用架构方案（通过Nginx实现负载均衡）。该工具适用于需要数据合规的小型团队，可有效防止企业数据外泄，CPU环境即可运行测试场景。]]></description><category></category></item><item><title><![CDATA[PostgreSQL TOAST特性详解]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159998211</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159998211</guid><author>zm_tree</author><pubDate>Thu, 09 Apr 2026 22:54:59 +0800</pubDate><description><![CDATA[TOAST（The Oversized-Attribute Storage Technique）是 PostgreSQL 处理大字段数据的核心机制。PostgreSQL 的数据页大小固定为 8KB，单行数据不能跨页存储。当一行数据超过约 2KB（页大小的 1/4）时，TOAST 机制自动介入，对大字段进行压缩和/或行外存储。]]></description><category></category></item><item><title><![CDATA[一文搞懂transformer中编码和解码器机制]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159596439</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159596439</guid><author>zm_tree</author><pubDate>Sun, 29 Mar 2026 06:46:57 +0800</pubDate><description><![CDATA[该机制通过在注意力分数矩阵中对未来位置的权重置为 −∞−∞ 实现，从而在预测当前词元时确保自回归属性——例如计算“hang”的表示时，无法“看到”序列中更后的词元（如“zhou”）。解码器最终层的输出经线性变换与 Softmax 归一化，转化为词汇表上的概率分布，其中概率最高的词元作为当前时间步的预测结果。FFN 的输出会通过残差连接与自身输入相加，再次进行层归一化，完成当前子层的调整后，将稳定的表征传递至下一层。最终编码器层的输出是一组上下文感知的向量序列，每个向量融合了输入序列中的全局依赖信息。]]></description><category></category></item><item><title><![CDATA[非覆盖索引扫描成本估算源码分析]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159584488</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159584488</guid><author>zm_tree</author><pubDate>Sat, 28 Mar 2026 18:14:05 +0800</pubDate><description><![CDATA[基于MySQL 8.0版本通过trace和gdb工具验证索引非覆盖扫描成本估算源码逻辑，索引非覆盖扫描的成本估算核心简要逻辑如下注意：同个sql在数据库稳定后，才能稳定对齐内存运行值（即执行计划，gdb，trace中的值是对齐的），一旦重启或有其他干扰性sql都会导致值的变化。]]></description><category></category></item><item><title><![CDATA[初识深度学习与机器学习]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159426194</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159426194</guid><author>zm_tree</author><pubDate>Tue, 24 Mar 2026 15:13:32 +0800</pubDate><description><![CDATA[在监督学习中，训练数据是带标签的，每个输入数据都有一个对应的输出标签。模型的目标是从这些输入数据和标签对中学习一个映射函数，使得给定新的输入时，能够预测出正确的输出标签。]]></description><category></category></item><item><title><![CDATA[覆盖索引扫描的成本估算源码分析]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159313126</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159313126</guid><author>zm_tree</author><pubDate>Sat, 21 Mar 2026 04:18:57 +0800</pubDate><description><![CDATA[这个返回值直接影响 page_read_cost_index() 中内存页和磁盘页的拆分比例，进而影响优化器的成本判断。注意：同个sql在数据库稳定后，才能稳定对齐内存运行值（即执行计划，gdb，trace中的值是对齐的），一旦重启或有其他干扰性sql都会导致值的变化。该函数根据索引/表大小与 buffer pool 大小的比值，启发式估算索引在内存中的驻留比例。该函数估算"仅通过索引读取"（覆盖索引扫描）所需的 I/O 代价，即读取多少个索引块。]]></description><category></category></item><item><title><![CDATA[全表扫描成本估算源码分析]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159199134</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159199134</guid><author>zm_tree</author><pubDate>Wed, 18 Mar 2026 07:30:48 +0800</pubDate><description><![CDATA[1. 无WHERE 条件的全表扫描 - 不会调用 `test_quick_select`，优化器直接选择全表扫描。2. 有 WHERE 条件的查询- 会调用 `test_quick_select` 评估是否使用索引。]]></description><category></category></item><item><title><![CDATA[MySQL 优化器成本估算逻辑及公式]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159174073</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159174073</guid><author>zm_tree</author><pubDate>Tue, 17 Mar 2026 21:32:21 +0800</pubDate><description><![CDATA[MySQL 优化器使用**基于成本的优化（Cost-Based Optimization, CBO）**来选择最优执行计划。成本的两个主要组成部分。]]></description><category></category></item><item><title><![CDATA[白话详解MCP原理及作用]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159129821</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159129821</guid><author>zm_tree</author><pubDate>Mon, 16 Mar 2026 20:58:11 +0800</pubDate><description><![CDATA[MCP（模型上下文协议）是一种标准化通信协议，通过多对一&quot;总线&quot;模式连接AI模型与外部资源。它采用客户端-服务器架构，支持本地优先的数据处理，确保安全性与隐私保护。MCP提供三种核心能力：Prompts（预设提示模板）、Resources（静态知识单元）和Tools（动态工具执行），构建&quot;感知→理解→行动&quot;的完整循环。该协议解决了大模型接口兼容性问题，支持混合编排本地与云端资源，并通过分层架构（协议层和传输层）实现标准化通信。MCP是Function Calling的]]></description><category></category></item><item><title><![CDATA[基于 Python + MCP + LLM 构建 MySQL AI 助手]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159043852</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159043852</guid><author>zm_tree</author><pubDate>Sat, 14 Mar 2026 10:11:49 +0800</pubDate><description><![CDATA[本项目实现了一个智能 MySQL 数据库助手，通过 Model Context Protocol (MCP) 连接大语言模型（通义千问）与 MySQL 数据库，实现自然语言查询数据库的能力。执行 SQL 语句（SELECT 自动添加 LIMIT）sql (string): SQL 语句instance (string, 可选): 数据库实例名，默认 "default"]]></description><category></category></item><item><title><![CDATA[PostgreSQL权限梳理整理]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/159018925</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/159018925</guid><author>zm_tree</author><pubDate>Fri, 13 Mar 2026 21:58:44 +0800</pubDate><description><![CDATA[4. 对象级别 (Object Level)：SELECT, INSERT, UPDATE, DELETE, TRUNCATE, REFERENCES, TRIGGER。1. 集群级别 (Cluster Level)： 角色属性 (SUPERUSER, CREATEDB, CREATEROLE等)随着ai迅速发展，底层对向量数据库的依赖会明显凸显，pg自带向量插件，符合部门的场景，今天我们授权开始了解。2. 数据库级别 (Database Level)： CONNECT, CREATE, TEMP。]]></description><category></category></item><item><title><![CDATA[基于Cherry Studio+三方MCP+LLM在本地构建MySQL查询助手]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/158977948</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/158977948</guid><author>zm_tree</author><pubDate>Thu, 12 Mar 2026 21:53:15 +0800</pubDate><description><![CDATA[最后小提示：数据库是一个企业核心生产资料，生产上建议自己构建一个针对每种不同的数据库mcp server或数据库厂商提供的mcp server进行部署，防止数据库被攻击。]]></description><category></category></item><item><title><![CDATA[MCP Server简介]]></title><link>https://blog.youkuaiyun.com/zm_tree/article/details/158935660</link><guid>https://blog.youkuaiyun.com/zm_tree/article/details/158935660</guid><author>zm_tree</author><pubDate>Wed, 11 Mar 2026 23:11:52 +0800</pubDate><description><![CDATA[MCP是Anthropic推出的开放标准协议，旨在解决AI与外部系统交互的碎片化问题。它提供类似USB-C的统一接口，包含Host、Client、Server三大组件，基于JSON-RPC2.0通信。核心功能包括：1）工具函数调用；2）资源URI访问；3）参数化提示词模板。支持有状态会话管理和工具级安全控制，通过权限验证、输入校验和审计日志保障安全性。该协议显著降低了AI应用集成复杂度，实现&quot;一次开发，到处连接&quot;的目标。]]></description><category></category></item></channel></rss>