| Storage Buckets API |
W3C 标准化的浏览器存储接口,允许开发者创建多个独立的存储桶(Bucket),每个桶拥有独立的配额、权限和持久化策略,是对
IndexedDB 单一命名空间模型的重要扩展。 |
| 存储桶(Bucket) |
Storage Buckets API 中的逻辑存储单元,类似于数据库中的表空间概念。每个存储桶拥有独立的名称、配额限制和持久化偏好设置,
开发者可以通过 bucket.open() 方法创建和访问。 |
| 哈希分区(Hash Partitioning) |
一种数据分区策略,通过对分区键进行哈希运算,将数据均匀散布到多个分区桶中。哈希分区在点查询场景下性能优异,
但由于哈希函数的离散性,范围查询需要跨多个分区扫描,效率较低。 |
| 范围分区(Range Partitioning) |
按照键值的连续区间将数据划分到不同分区桶中。范围分区天然适配范围查询操作,但在点查询时需要先定位目标区间,
且容易因数据分布不均导致热点分区问题。 |
| 列表分区(List Partitioning) |
依据预定义的分类枚举值将数据分组到对应分区桶中。列表分区适合具有明确分类维度的数据(如地区、类型),
分区规则的合理性直接决定了数据分布的均匀程度。 |
| 数据倾斜(Data Skew) |
指数据在各分区桶中分布不均匀的现象。严重的数据倾斜会导致某些分区成为热点,负载集中到少数节点上,
降低并行处理效率并增加查询延迟。倾斜程度通常用基尼系数或标准差来量化。 |
| 倾斜因子(Skew Factor) |
本实验工具中的参数,用于控制生成数据的分布均匀程度。均匀模式下各分区数据量近似相等,40%倾斜模式下部分分区数据量
有所偏移,严重倾斜模式下数据会高度集中到少数分区。 |
| 基尼系数(Gini Coefficient) |
源自经济学的不平等度量指标,在存储领域用于衡量数据在各分区间的分布均匀性。基尼系数取值范围为0到1,0表示完全均匀,
1表示所有数据集中在单个分区。本工具通过该指标提供倾斜程度的客观量化。 |
| 热点风险评分 |
本工具自定义的评估指标,衡量数据集中到少数分区的风险程度。评分基于各分区数据量与平均值的偏差幅度计算,
高分表示存在严重的热点分区问题,需要考虑调整分区策略。 |
| 点查询(Point Query) |
精确匹配单条记录的查询操作,通过指定完整的键值来获取对应的数据项。在哈希分区下点查询效率最高,
因为哈希函数可以直接定位目标分区。 |
| 范围查询(Range Query) |
检索键值落在指定区间内的所有记录的查询操作。范围分区天然适配范围查询,因为同一区间的数据存储在同一分区中,
而哈希分区执行范围查询时需要扫描所有分区。 |
| 全扫描(Full Scan) |
遍历分区或全部数据中所有记录的查询操作。全扫描的性能与数据总量成正比,与分区数量关系不大,
但在无分区模式下需要遍历整个数据集,耗时最长。 |
| IndexedDB |
浏览器内置的事务型键值数据库,支持存储大量结构化数据并提供索引查询能力。Storage Buckets API 建立在 IndexedDB 之上,
是其多命名空间的扩展方案。 |
| 配额管理(Quota Management) |
浏览器对 Web 应用存储空间的限制机制。Storage Buckets API 允许每个桶独立管理配额,
开发者可以为重要数据请求持久化存储权限,为临时数据设置自动清理策略。 |
| 持久化偏好(Persistence Preference) |
Storage Buckets API 中每个桶可设置的属性,指示浏览器在存储空间不足时是否优先保留该桶的数据。
支持 "none"(可自由清理)和 "possible"(尽量保留)两种策略。 |