存储

首页 标签 存储
# 存储 #
关注
192990内容
17 | 存储系统:从检索技术角度剖析 LevelDB 的架构设计思想
LevelDB是Google开源的高性能键值存储系统,基于LSM树优化,采用跳表、读写分离、SSTable分层与Compaction等技术,结合BloomFilter、索引分离及LRU缓存,显著提升读写效率,广泛应用于工业级系统。
特别加餐 | 高性能检索系统中的设计漫谈
本文系统梳理了高性能检索系统中的四大核心设计思想:索引与数据分离、减少磁盘IO、读写分离和分层处理。通过案例解析与对比分析,深入探讨其本质与适用场景,并总结通用实践经验,帮助开发者在实际系统设计中提升性能与可维护性,构建高效稳定的高并发系统。
06丨数据库检索:如何使用 B+ 树对海量磁盘数据建立索引?
本节探讨磁盘环境下大规模数据检索的挑战与解决方案,重点解析B+树如何通过索引与数据分离、多阶平衡结构及双向链表优化,实现高效的磁盘I/O利用和范围查询,广泛应用于数据库等工业级系统。
13 | 空间检索(上):如何用 Geohash 实现「查找附近的人」功能?
本文介绍了如何高效实现“查找附近的人”功能,提出基于Geohash的区域编码与索引方案。通过将二维坐标转为一维编码,结合非精准与精准检索策略,利用跳表、二叉树等数据结构提升查询效率,适用于大规模地理位置服务场景。
07 | NoSQL 检索:为什么日志系统主要用 LSM 树而非 B+ 树?
B+树适用于读多写少场景,但在日志、监控等高频写入的大数据场景中性能受限。LSM树通过将数据分内存C0树和磁盘C1树,利用批量写入、WAL日志恢复与滚动合并机制,以顺序写替代随机写,大幅提升写入性能,更适配写密集型应用,成为多数NoSQL数据库的核心存储结构。
08 | 索引构建:搜索引擎如何为万亿级别网站生成索引?
针对超大规模数据,如搜索引擎需处理万亿级网页,倒排索引远超内存容量。为此,工业界采用分治与多路归并思想:先将文档集拆分为小块,在内存中为每块构建倒排索引并写入磁盘临时文件;随后通过多路归并合并临时文件,生成全局有序的最终倒排文件。该过程类似MapReduce框架,支持分布式加速。检索时,优先将词典加载至内存,用哈希表或B+树快速定位关键词,再从磁盘读取对应posting list。对过长的posting list,则采用分层索引(如跳表)或缓存机制(如LRU),仅加载必要数据块,减少IO开销,提升效率。
特别加餐 | 倒排检索加速(一):工业界如何利用跳表、哈希表、位图进行加速?
本文深入解析倒排索引中求交集的三大加速技术:跳表、哈希表与位图,并介绍工业级优化方案Roaring Bitmap。通过组合基础数据结构,实现高效检索,揭示复杂系统背后的简洁原理。
09 | 索引更新:刚发布的文章就能被搜到,这是怎么做到的?
本文讲解工业界如何高效更新倒排索引。针对小规模索引,采用Double Buffer机制实现无锁更新;对于大规模索引,则使用全量索引结合增量索引方案,并通过完全重建、再合并或滚动合并等方式处理增量数据,兼顾性能与资源开销。
14 | 空间检索(下):「查找最近的加油站」和「查找附近的人」有何不同?
本文探讨了动态范围内“查找最近的k个目标”问题,如导航找加油站。针对查询范围不固定场景,提出利用四叉树、非满四叉树和前缀树优化检索效率与存储空间。通过树形结构实现快速范围扩展,避免重复查询,提升性能。
4.1 服务端(DevBox)-项目创建
通过Sealos创建SpringBoot工程zxyf-management,配置Java环境与容器资源,结合Cursor智能开发工具实现云端编码、一键启动与部署,快速构建可访问的云原生应用。
免费试用