NoSQL

首页 标签 NoSQL
# NoSQL #
关注
43818内容
Docker安装Redis
本文介绍Docker安装Redis 6.0.8的单机版与实际应用版配置,涵盖容器卷映射、配置文件设置及集群存储算法。重点解析哈希取余、一致性哈希与哈希槽分区算法,说明Redis集群为何采用16384个槽,及其在数据分布、节点扩容与网络开销间的权衡设计。
SSTable 的分层管理设计
SSTable分层管理通过将文件按层级组织,逐层合并,控制每层容量上限,减少多路归并规模,避免全量重叠,提升查询效率与系统性能,是LevelDB高效读写的核心设计。
|
10天前
|
大厂如何解决订单幂等问题
大厂通过唯一标识+数据库唯一约束实现订单幂等:创建时预生成订单号,利用主键防重;更新时引入版本号机制,避免ABA问题,结合Redis或DB状态标记,确保接口多次调用结果一致,保障分布式系统数据准确。
Geohash 编码
Geohash编码将经纬度转换为字符串,通过不断二分地球经纬度区间,交叉组合生成区域编码,再转为Base32简化表示。它用于高效存储和查询地理位置,广泛应用于Redis、MySQL等系统,具有相同前缀的编码代表相近区域,便于空间索引与检索。
SpringBoot框架
SpringBoot简化Spring开发,核心功能包括starter起步依赖、自动配置及内嵌服务器支持。通过@SpringBootApplication实现自动化配置,支持多种配置方式,优先级为:命令行参数 > 系统属性 > properties > yml/yaml。可自定义starter实现模块化集成。
|
10天前
|
07 | NoSQL 检索:为什么日志系统主要用 LSM 树而非 B+ 树?
B+树适用于读多写少场景,但在日志、监控等高频写入的大数据场景中性能受限。LSM树通过将数据分内存(C0树)和磁盘(C1树)两部分存储,利用批量写入替代随机写入,大幅提升写入效率。结合WAL预写日志保障崩溃恢复,滚动合并实现有序归并,特别适合写密集型应用。NoSQL数据库广泛采用此技术。
|
10天前
|
13 | 空间检索(上):如何用 Geohash 实现「查找附近的人」功能?
本文介绍了如何高效实现“查找附近的人”功能,针对大规模系统提出基于区域划分与Geohash编码的解决方案。通过将二维空间划分为带编号的区域,并利用一维编码(如Geohash)建立索引,可大幅提升检索效率。支持非精准与精准查询:前者直接查所在区域,后者扩展至邻接8区域以避免遗漏,结合二分查找、跳表或Redis等技术实现快速定位。尤其适用于社交、餐饮、出行等LBS场景。
|
10天前
|
17 | 存储系统:从检索技术角度剖析 LevelDB 的架构设计思想
LevelDB是Google开源的高性能键值存储系统,基于LSM树优化,采用跳表、读写分离、SSTable分层与Compaction等技术,结合BloomFilter、缓存机制与二分查找,显著提升数据读写与检索效率,广泛应用于工业级系统中。(239字)
02 | 非线性结构检索:数据频繁变化的情况下,如何高效检索?
通过树状结构与跳表优化数据检索,本文探讨如何在非线性结构中实现高效二分查找。对比有序数组、二叉检索树与跳表,解析其在动态数据场景下的性能优劣与适用边界。
07 | NoSQL 检索:为什么日志系统主要用 LSM 树而非 B+ 树?
B+树适用于关系型数据库,但在日志、监控等高频写入场景下性能受限。LSM树通过将数据分内存(C0树)和磁盘(C1树)两层,利用批量写入、WAL日志恢复与滚动合并机制,大幅提升写入效率,更适合写多读少的大数据应用。
免费试用