自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Alive的博客

Born alive

  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 MongoDB:安装运行与配置更改

运行环境为linuxmongodb版本r4.4.3,默认存储引擎为wiredTiger相关测试工具为YCSB以及LinkBenchMongoDB安装如果只对mongodb使用YCSB等测试工具,那么只需要安装mongod(the mongodb database server)。从github仓库clone代码到本地后,切换到所需分支,直接在mongo目录下使用如下py命令安装mongod即可,初次安装时间较长,可能以小时计。$ python3 buildscripts/scons.py .

2021-05-12 17:13:38 767

原创 WiredTiger系列3:Checkpoint/Block Mgr

在evict一章中我们简单描述了内存page在写盘时如何是选取磁盘写入位置的:选择当前btree文件的空闲块中大小最合适的块,裁选出所需大小的块(如果没有这样的空闲块,那么向文件末尾写入)。这一工作是通过block manager(__wt_block)完成的,每个block manager代表了一个实际的table磁盘文件,其中包括了磁盘块分配、数据压缩等内容,整个模块解读起来稍显复杂。但是幸运的是,对于磁盘块分配而言,我们并不需要过多关注block manager本身的具体结构与创建流程等,只

2021-03-13 23:04:51 1017

原创 WiredTiger系列2:Eviction详解

EvictionEvict的实质主要是将内存中的page淘汰出内存,简单来说,当cache里面的“脏页”达到一定比例或cache使用量达到一定比例时,wt就会触发相应的evict page线程来将pages(包含干净的pages和脏pages)按一定的算法(LRU队列)淘汰出去,以便腾挪出内存空间,保障后面新的插入或修改等操作。这个流程中存在两个淘汰队列分别为待淘汰的填充队列(evict_fill_queue)和当前淘汰队列(evict_current_queue),evict会不断地将符合淘汰条件的p

2021-03-10 16:39:23 1522 1

原创 WiredTiger系列1:数据页详解

目录引言背景整体架构数据组织结构数据页磁盘数据结构内存数据结构row leaf pagerow internal page参考文献引言MongoDB 是目前主流的 NoSQL 数据库之一,与关系型数据库和其它的 NoSQL 不同,MongoDB 使用了面向文档的数据存储方式,将数据以类似 JSON 的方式存储在磁盘上。WiredTiger是MondoDB v3.0之后的默认存储引擎,面向多核、Page IO优化做了很多工作,支持行存储与列存储,支持...

2021-01-21 20:46:34 3091 2

原创 原始Radix Tree与路径压缩

原始Radix Tree与路径压缩Radix Tree简介Radix tree 是一种前缀字典树,它的主要特点是树的高度不随数据库大小和节点数量改变,而是由 key 的长度决定。B树需要根据数据量增长或压缩,保持平衡,Radix tree 不需要平衡操作,任意插入顺序的 key 最终会得到同一棵树。Key 按照字典顺序排序,因此走向叶子节点的路径表示叶子节点的 key,中间节点路径可以通过...

2021-01-21 20:04:10 503

原创 PMDK : libpmemobj 池空间组织

池空间组织:其中chunk run是chunk的实际组织形式,一个chunk run可能包括1或最多10个chunk,由 hdr+bitmap+data组成如何完成分配:pop create时创建一个alloc class collectionalloc class数组,最多可以有255个alloc class每个alloc class对应一个unit size,即该alloc class的分配单元是多大,对于一个obj对象的分配,最多用8个单元,同时每个alloc class根

2020-12-17 16:08:43 418

原创 RTPS协议数据结构(V2.1)

参考 :主要为https://community.rti.com/static/documentation/connext-dds/5.2.3/doc/manuals/wireshark/RTPS_Protocol_v2.1.pdf其余包括http://www.eprosima.com/docs/fast-rtps/1.6.0/html/index.htmlhttps://i...

2019-10-11 09:22:27 4004 1

转载 RedHat下QT程序打包方法

在RedHat6.5下实测有效,QT程序打包,放置于一文件夹,包括全部库文件以及可执行程序,如果有QSS文件、中英文的qm文件或图片资源包还需自行放置在文件夹内

2019-05-10 14:37:27 516

原创 WorkBench3.2 + VxWorks6.8安装教程

按照FTP连接主机和目标机,将整个VxWorks6.8的安装分为两个部分,一是在主机(win10系统,可以使用虚拟机或者实体机,推荐使用虚拟机)上安装workbench3.2,进行bootrom与VxWroks映像文件的生成,二是在虚拟机上安装VxWorks系统19.10.10 首先很高兴文章能帮到大家,但由于本人已不做该方向良久,私信和评论的很多问题现在已经无法解答,如果大家有什么问题欢迎...

2018-12-27 10:12:58 34778 103

原创 QT word文档操作实例

近日需要通过QT为项目添加word操作接口,为数据生成word文档,因此通过网上查阅并借鉴相关资料,实现了基本的功能,包括文本的填充,标题的设置,表格的插入,图片的插入等,主要通过word模板(.dot)和word书签进行操作。一、注意事项需要注意的是在.pro文件中添加 :QT       += widgets gui axcontainer尚不能通过代码实现向word文档中添加书签...

2018-10-12 09:56:34 22082 12

转载 (转)(适用于 Windows 10 Version 1709 的 03 累积更新失败)解决方法

来自http://tieba.baidu.com/p/5599502824。1.首先先删除Windows文件夹里面的“XblGameSave”文件夹;操作方法:按快捷键“win+R”,输入C:\Windows\System32\Tasks\Microsoft\,然后就能看到“XblGameSave”文件夹了,右键点击删除,或者用电脑管家粉碎文件工具粉碎该文件夹。2.删除相关注册表信息;操作方法:按...

2018-05-03 20:55:53 8698

原创 快速排序(参照算法导论第3版)

    快速排序采用分治思想,对于一个典型的子数组A[p...r]进行快速排序分为三步分治过程:          算法实现的伪代码如下:        算法关键的地方在于PARTITION过程,即数组的划分过程,它实现了对子数组A[p...r]的原址重排:        用C++实现如下,对于任意需要排序的数组,参数p为0,r为size-1。void quicksort(vector<in...

2018-05-01 17:38:15 145

VxWorks6.8安装指南

包含VxWork6.8 + WorkBench3.2 +FTP的VxWorks安装方法,除了文档以外包含文档中所述的一切相关文件,除了WorkBench安装所需iso文件,包括DDS622.img,BSP需要修改和添加的文件以及无需编译的完成版bootrom与VxWorks系统文件

2018-12-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除