tikv是什么_10千伏高压变频器工作原理

tikv是什么_10千伏高压变频器工作原理RocksDB的介绍,TIKV介绍

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

TiKV架构

tikv是什么_10千伏高压变频器工作原理

TiKV作用、

  1. 数据持久化
  2. 分布式一致性
  3. MVCC
  4. 分布式事物
  5. Coprocessor

数据持久化

写入操作tikv是什么_10千伏高压变频器工作原理

WAL: Write Ahead Log预写日志,数据线通过WAL写入日志(直接落盘sync_log=true),然后再写入缓存;可以防止掉电丢数;一般默认2个WAL文件,数据落盘成功后即可清理;

数据将先写入内存的MemTable,当数据量超过write_buffer_size大小后,数据将会转存到immutable中,将immutable刷盘后即SST文件,从而防止写阻塞;MemTable同时服务于读和写;

如果immutable达到5个会触发流控,限制写入速度,write stall;记录于日志中;可以优化存储或者调高immutable数量来提高写入速度;

tikv是什么_10千伏高压变频器工作原理

 Level 0 和immutable中文件的复刻;

Level0 达到4个的时候会向Level 1合并-compaction;会做压缩和排序;形成一个压缩的有序文件

当Level 1达到256M的时候会继续向Level2进行合并;

每一层都会切分成多个SST文件,每个SST文件都是键值对文件;对于每个文件使用二分法进行查找键值信息;

删除和更新的时候直接操作MemTable中即可,待查询的时候MemTable会直接返回;

RocksDB查询操作

tikv是什么_10千伏高压变频器工作原理

 Block Cache: 最近,高频访问的数据存储在Block Cache中;

其次依次按照写入最新时间查找MemTable;

再其次按从磁盘中的Level 0依次往后查找到SST文件;

根据查找的KEY 判断是否在SST的min_key和max_key中间; 布隆过滤器判断如果KEY不在,则查找下一个SST文件,如果数据在该SST文件,则二分法查找;

Column Families–CF 列簇

tikv是什么_10千伏高压变频器工作原理

 CF属于RocksDb的数据分片技术,可以将数据的键值对按照不同的属性分配给不同的CF,可以让某些内存和SST文件中存的都是相同类型的数据,可以极大地增加读写的效率、提升数据压缩率;

 落数的时候会自带CF1、CF2、default 来决定落入哪个分片中;

内存和SST文件都按照CF分了,但是WAL没有按照CF区分;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190104.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • matlab2016a下载包及安装教程

    matlab2016a下载包及安装教程链接:https://pan.baidu.com/s/1wMGK5jYxYdqs1IxRDfJl8A 提取码:y72e 复制这段内容后打开百度网盘手机App,操作更方便哦1 下载R2016a_win64.iso(安装文件,包括part1以及part2两部分,只需解压part1)及Matlab2016aWin64Crack.rar(破解文件),百度云盘的提取地址及密码如上所示2 解…

    2022年5月25日
    46
  • 使用memset初始化数组

    使用memset初始化数组写在前面的ATTENTION:用memset初始化非char型(eg.int型、float型…)数组时,假如初始化值非0,可能导致错误的结果。先举个通常用法的栗子,将int型数组arr的元素初始化为0:intarr[5];memset(arr,0,sizeof(int)*5);假如初始值不为0,会如何呢?例如设置为1:使用memset(arr,1,sizeof(int…

    2022年10月21日
    3
  • css3 transition用法(很详细)

    css3 transition用法(很详细)解释transition(CSS属性)是transition-property,transition-duration,transition-timing-function和transition-delay的一个简写属性。transition可以为一个元素在不同状态之间切换的时候定义不同的过渡效果。以下是属性解释。值描述transition-property指定CSS属性的name,transition效果transition-durationtransit

    2022年7月14日
    16
  • WinSCP连接被拒绝「建议收藏」

    WinSCP连接被拒绝「建议收藏」之前用WinSCP连接华为云服务器传输文件的时候没有出现过问题,但是现在连接实验室电脑的时候报“网络错误,连接被拒绝”。上网查了一下,发现是实验室服务器没有安装openssh-server,参考博文进行安装:Ubuntu安装sshd服务_我是大魔王2的博客-CSDN博客_ubuntu安装sshd具体安装步骤:1.安装openssh-serversudoapt-getinstallopenssh-server2.检查sshd是否启动一般安装成功后就会启动sshd服务,可以通过.

    2022年9月17日
    2
  • flask中的jsonify「建议收藏」

    flask中的jsonify「建议收藏」示例代码#-*-coding:utf-8-*-#@Time:2020/9/1711:46下午#@Author:renwoxing#@File:flask_restful_demo.py#@Software:PyCharmfromflaskimportFlask,jsonify,abort,requestapp=Flask(__name__)books=[{‘id’:1,’n

    2022年5月23日
    59
  • php 数组根据值找key,从数组查找key对应的值 – key

    php 数组根据值找key,从数组查找key对应的值 – key…L,`nick`varchar(32)DEFAULTNULL,`reg_date`datetimeDEFAULTNULL,PRIMARYKEY(`id`),KEY`IND_NICK`(`nick`),KEY`IND_REGDATE`(`reg_date`))CREATETABLE`users`(`id`int(11)NOTNULL,`nick`varchar(32)D…

    2022年7月23日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号