数据服务系统设计
优质
小牛编辑
129浏览
2023-12-01
1.1 MongoDB 元数据设计
1.1.1 接口设计
接口 | 功能 | 实现方法 |
---|---|---|
/mongo/db/list | 列举出所有 db 下的所有 collection | 已有实现。 |
/mongo/db/table/desc | 描述该集合的属性的名称和值域。 | 使用元数据表记录每个 collection 的元数据。 |
1.1.2 元数据表设计
字段名称 | 字段格式 |
---|---|
数据库名称 | 字符串 |
表名称 | 字符串 |
属性名称和值域 | 名称1:值域1,名称1:值域1...,名称n:值域n |
1.2 Hbase 元数据设计
1.2.1 接口设计
接口 | 功能 | 实现方法 |
---|---|---|
/hbase/list | 列举出所有 db 下的所有 table | 已有实现 |
/mongo/table/desc | 描述该集合的列族、列和主键值域。 | 使用元数据表记录每个 collection 的元数据。 |
1.2.2 元数据表设计
字段名称 | 字段格式 |
---|---|
命名空间名称 | 字符串 |
表名称 | 字符串 |
列族名称 | 字符串 |
列名称 | 字符串 |
主键值域 | 字符串 |
注:此处值域定义应尽可能小,方便用户使用值域能够进行查询。
2. 用户隔离子系统设计
2.1 MongoDB 用户隔离
2.1.1 隔离策略
为每个用户创建一个 db,并使用表记录下用户 和 db 的映射关系。
2.1.2 表结构
字段名称 | 字段格式 |
---|---|
数据库名 | 字符串 |
用户名 | 字符串 |