HBase基本介绍就是说他能存什什么样的数据. 像redis是存kv结构的数据, MongoDB是存储⽂文档型数据, 那HBase存什什么样的数据? • ’表/⾏行行/列列’ • Row Key • ColumnFamily列列族 : ColumnQualifier列列限定名 • Version/Timestamp 分数:语⽂文 数据模型 逻辑视图 整个HBase和关系数据库很像, 但⼜又要时时注意两者的区别 key和关系数据库的主键类似, 但不不是⾃自增的, 要我们⾃自定义, 这⾥里里我⽤用⼈人名当row key 然后是列列, 这⾥里里hbase要求我们把列列做个分类, 叫列列族. 这⾥里里我分了了两个ColumnFamily, 分数和图⽚片 每个列列族名+列列限定名⽤用冒号连起来组成列列名, ⽐比如 分数:语⽂文. 然后我⼜又有图⽚片列列族, 只有⼀一列列头像, 存的是⼆二进制的图⽚片内容 然后hbase⼜又引⼊入了了版本概念 • 除了了列列族要求是可打印字符, 别的都可以是任 意⼆二进制数据 数据模型 RowKey • ColumnFamily的设计是要求把相关的列列放在 同族 • 所有的各项配置, 都是指定到列列族上, 不不是列列, 同列列族数据, 物理理上存在同⽂文件 • ColumnFamily在建表时确定, 具体有哪些列列 是数据随意添加的 数据模型 Column 数据模型 物理理视图 •0 码力 | 33 页 | 4.86 MB | 1 年前3
Apache Cassandra 快速入门指南(Quick Start)BEGIN DROP_AGGREGATE KEYWORDS BLOB DROP_COLUMNFAMILY LIST_PERMISSIONS BOOLEAN DROP_FUNCTION LIST_ROLES COUNTER LIST_USERS CREATE_AGGREGATE DROP_KEYSPACE PERMISSIONS CREATE_COLUMNFAMILY DROP_MATERIALIZED_VIEW REVOKE CREATE_FUNCTION DROP_ROLE0 码力 | 11 页 | 0 Bytes | 1 年前3
FISCO BCOS 1.3 中文文档内存中数据结构比较简单,一个 ColumnFamily 对应一个唯一的 Memtable 对象,所以 Memtable 主要就是维护一个 ConcurrentSkipListMapColumnFamily> 类型的数据结构,当一 个新的 RowMutation 对象加进来时,Memtable 只要看看这个结构是否 ColumnFamily> 集合已经存在,没有的话就加进来,有的话取 集合已经存在,没有的话就加进来,有的话取 出这个 Key 对应的 ColumnFamily,再把它们的 Column 合并。 Cassandra 的写 的性能很好,好的原因就是因为 Cassandra 写到数据首先被写到 Memtable 中, 而 Memtable 是内存中的数据结构,所以 Cassandra 的写是写内存的,下图基本 上描述了一个 key/value 数据是怎么样写到 Cassandra 中的 Memtable 就会写到磁盘中。 Memtable 的条件满足后,它会创建一个 SSTableWriter 对象,然后取出 Memtable 中所有的 ColumnFamily> 集合,将 ColumnFamily 对 象的序列化结构写到 DataOutputBuffer 中。接下去 SSTableWriter 根据 DecoratedKey 和 DataOutputBuffer 分别写到 0 码力 | 491 页 | 5.72 MB | 1 年前3
TiDB v5.2 中文手册编号 • regionEpoch:Region 版本号 • keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • cf:RocksDB 的 ColumnFamily(默认为 default 或 write) 6.3.1.1.2 部署使用 BR 工具 推荐部署配置 • 推荐 BR 部署在 PD 节点上。 • 推荐使用一块高性能 SSD 网盘,挂载到 编号 • regionEpoch:Region 版本号 • keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • cf:RocksDB 的 ColumnFamily(默认为 default 或 write) 11.9.1.2 部署使用 BR 工具 11.9.1.2.1 推荐部署配置 • 推荐 BR 部署在 PD 节点上。 • 推荐使用一块高性能 合并到下一层,每一层的数据是上一层的 10 倍(因此 90% 的数据存储在最后一层)。 RocksDB 允许用户创建多个 ColumnFamily ,这些 ColumnFamily 各自拥有独立的内存跳表以及 SST 文件,但是共享 同一个 WAL 文件,这样的好处是可以根据应用特点为不同的 ColumnFamily 选择不同的配置,但是又没有增加 对 WAL 的写次数。 12.2.2.1 TiKV 架构 TiKV0 码力 | 2259 页 | 48.16 MB | 1 年前3
TiDB v5.1 中文手册编号 • regionEpoch:Region 版本号 • keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • cf:RocksDB 的 ColumnFamily(默认为 default 或 write) 154 6.3.1.1.2 部署使用 BR 工具 推荐部署配置 • 推荐 BR 部署在 PD 节点上。 • 推荐使用一块高性能 SSD 编号 • regionEpoch:Region 版本号 • keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • cf:RocksDB 的 ColumnFamily(默认为 default 或 write) 745 11.9.1.2 部署使用 BR 工具 11.9.1.2.1 推荐部署配置 • 推荐 BR 部署在 PD 节点上。 • 推荐使用一块高性能 合并到下一层,每一层的数据是上一层的 10 倍(因此 90% 的数据存储在最后一层)。 RocksDB 允许用户创建多个 ColumnFamily ,这些 ColumnFamily 各自拥有独立的内存跳表以及 SST 文件,但是共享 同一个 WAL 文件,这样的好处是可以根据应用特点为不同的 ColumnFamily 选择不同的配置,但是又没有增加 对 WAL 的写次数。 12.2.2.1 TiKV 架构 TiKV0 码力 | 2189 页 | 47.96 MB | 1 年前3
TiDB v5.3 中文手册编号 • regionEpoch:Region 版本号 • keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • cf:RocksDB 的 ColumnFamily(默认为 default 或 write) 171 6.3.1.1.2 部署使用 BR 工具 推荐部署配置 • 推荐 BR 部署在 PD 节点上。 • 推荐使用一块高性能 SSD 编号 • regionEpoch:Region 版本号 • keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • cf:RocksDB 的 ColumnFamily(默认为 default 或 write) 807 11.9.1.2 部署使用 BR 工具 11.9.1.2.1 推荐部署配置 • 推荐 BR 部署在 PD 节点上。 • 推荐使用一块高性能 合并到下一层,每一层的数据是上一层的 10 倍(因此 90% 的数据存储在最后一层)。 RocksDB 允许用户创建多个 ColumnFamily ,这些 ColumnFamily 各自拥有独立的内存跳表以及 SST 文件,但是共享 同一个 WAL 文件,这样的好处是可以根据应用特点为不同的 ColumnFamily 选择不同的配置,但是又没有增加 对 WAL 的写次数。 12.2.2.1 TiKV 架构 TiKV0 码力 | 2374 页 | 49.52 MB | 1 年前3
TiDB v5.4 中文手册编号 • regionEpoch:Region 版本号 • keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • cf:RocksDB 的 ColumnFamily(默认为 default 或 write) 227 6.3.1.1.2 部署使用 BR 工具 推荐部署配置 • 推荐 BR 部署在 PD 节点上。 • 推荐使用一块高性能 SSD 编号 • regionEpoch:Region 版本号 • keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • cf:RocksDB 的 ColumnFamily(默认为 default 或 write) 11.9.1.2 部署使用 BR 工具 11.9.1.2.1 推荐部署配置 • 推荐 BR 部署在 PD 节点上。 • 推荐使用一块高性能 合并到下一层,每一层的数据是上一层的 10 倍(因此 90% 的数据存储在最后一层)。 RocksDB 允许用户创建多个 ColumnFamily ,这些 ColumnFamily 各自拥有独立的内存跳表以及 SST 文件,但是共享 同一个 WAL 文件,这样的好处是可以根据应用特点为不同的 ColumnFamily 选择不同的配置,但是又没有增加 对 WAL 的写次数。 12.2.2.1 TiKV 架构 TiKV0 码力 | 2852 页 | 52.59 MB | 1 年前3
TiDB v6.1 中文手册keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • timestamp:TiKV 节点生成 SST 文件名时刻的 Unix 时间戳 • cf:RocksDB 的 ColumnFamily(只备份 cf 为 default 或 write 的数据) 当备份数据到 Amazon S3 或网络盘上时,SST 文件以 regionID_regionEpoch_keyHash_timestamp_cf keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • timestamp:TiKV 节点生成 SST 文件名时刻的 Unix 时间戳 • cf:RocksDB 的 ColumnFamily(只备份 cf 为 default 或 write 的数据) SST 文件存储格式 • 关于 SST 文件存储格式,可以参考 RocksDB SST table 介绍。 • 关于 SST 合并到下一层,每一层的数据是上一层的 10 倍(因此 90% 的数据存储在最后一层)。 RocksDB 允许用户创建多个 ColumnFamily ,这些 ColumnFamily 各自拥有独立的内存跳表以及 SST 文件,但是共享 同一个 WAL 文件,这样的好处是可以根据应用特点为不同的 ColumnFamily 选择不同的配置,但是又没有增加 对 WAL 的写次数。 14.2.2.1 TiKV 架构 TiKV0 码力 | 3572 页 | 84.36 MB | 1 年前3
TiDB v7.1 中文手册keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • timestamp:TiKV 节点生成 SST 文件名时刻的 Unix 时间戳 • cf:RocksDB 的 ColumnFamily(只备份 cf 为 default 或 write 的数据) 当备份数据到 Amazon S3 或网络盘上时,SST 文件以 regionID_regionEpoch_keyHash_timestamp_cf keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • timestamp:TiKV 节点生成 SST 文件名时刻的 Unix 时间戳 • cf:RocksDB 的 ColumnFamily(只备份 cf 为 default 或 write 的数据) SST 文件存储格式 • 关于 SST 文件存储格式,可以参考 RocksDB SST table 介绍。 • 关于 SST 合并到下一层,每一层的数据是上一层的 10 倍(因此 90% 的数据存储在最后一层)。 RocksDB 允许用户创建多个 ColumnFamily,这些 ColumnFamily 各自拥有独立的内存跳表以及 SST 文件,但是共享 同一个 WAL 文件,这样的好处是可以根据应用特点为不同的 ColumnFamily 选择不同的配置,但是又没有增加 对 WAL 的写次数。 14.2.2.1 TiKV 架构 TiKV0 码力 | 4369 页 | 98.92 MB | 1 年前3
TiDB v6.5 中文手册keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • timestamp:TiKV 节点生成 SST 文件名时刻的 Unix 时间戳 • cf:RocksDB 的 ColumnFamily(只备份 cf 为 default 或 write 的数据) 当备份数据到 Amazon S3 或网络盘上时,SST 文件以 regionID_regionEpoch_keyHash_timestamp_cf keyHash:Range startKey 的 Hash (sha256) 值,确保唯一性 • timestamp:TiKV 节点生成 SST 文件名时刻的 Unix 时间戳 • cf:RocksDB 的 ColumnFamily(只备份 cf 为 default 或 write 的数据) SST 文件存储格式 • 关于 SST 文件存储格式,可以参考 RocksDB SST table 介绍。 • 关于 SST 合并到下一层,每一层的数据是上一层的 10 倍(因此 90% 的数据存储在最后一层)。 RocksDB 允许用户创建多个 ColumnFamily,这些 ColumnFamily 各自拥有独立的内存跳表以及 SST 文件,但是共享 同一个 WAL 文件,这样的好处是可以根据应用特点为不同的 ColumnFamily 选择不同的配置,但是又没有增加 对 WAL 的写次数。 14.2.2.1 TiKV 架构 TiKV0 码力 | 4049 页 | 94.00 MB | 1 年前3
共 17 条
- 1
- 2













