其他
数据之眼 | 数据探查服务的设计
点击上方蓝色字体,选择“设为星标”
原文地址:http://suo.im/5Xcmci
CREATE TABLE `num_blocks_per_container` (
`container_id` BIGINT,
`num_blocks` INT,
PRIMARY KEY (`container_id`)
);
数据探查服务的额外功能:节点级别的统计
节点磁盘使用空间
节点总blocks数量
…
Ozone数据探查服务:Recon Server
无法做到准实时同步,数据的实效性完全取自于Recon Server服务配置的同步间隔时间。
如果为了增强数据的实时性,增大中期拉取快照频率,那RocksDB频繁的checkpoint行为势必会有一定的开销。而且Checkpoint出的文件在bootstrap过程中,会经过压缩、传输、再解压缩到Recon Server机器上。整个过程步骤繁多,解压缩文件的过程也将是一个耗时的操作。
/**
* <p>Returns an iterator that is positioned at a write-batch containing
* seq_number. If the sequence number is non existent, it returns an iterator
* at the first available seq_no after the requested seq_no.</p>
*
* <p>Must set WAL_ttl_seconds or WAL_size_limit_MB to large values to
* use this api, else the WAL files will get
* cleared aggressively and the iterator might keep getting invalid before
* an update is read.</p>
*
* @param sequenceNumber sequence number offset
*
* @return {@link org.rocksdb.TransactionLogIterator} instance.
*
* @throws org.rocksdb.RocksDBException if iterator cannot be retrieved
* from native-side.
*/
public TransactionLogIterator getUpdatesSince(final long sequenceNumber)
throws RocksDBException {
return new TransactionLogIterator(
getUpdatesSince(nativeHandle_, sequenceNumber));
}
文章不错?点个【在看】吧! 👇