Pentium.Labs

System全家桶:https://zhuanlan.zhihu.com/c_1238468913098731520

导航

统计

随笔分类 -  DataBase

Paper Reading_Database and Storage System
摘要:最近(以及预感接下来的一年)会读很多很多的paper......不如开个帖子记录一下读paper心得 New Hardware / non volatile memory .... Streaming .... Cloud / Distributed PolarFS: An Ultra-low La 阅读全文

posted @ 2020-04-02 00:17 Pentium.Labs 阅读(637) 评论(0) 推荐(0) 编辑

RocksDB Rate Limiter源码解析
摘要:这次的项目我们重点关注RocksDB中的一个环节:Rate Limiter。其实Rate Limiter的思想在很多其他系统中也很常用。 在RocksDB中,后台会实时运行compaction和flush操作,这些都会对磁盘进行大量的写操作。可以通过Rate Limiter来控制最大写入速度的上限。 阅读全文

posted @ 2019-10-29 12:17 Pentium.Labs 阅读(1677) 评论(0) 推荐(0) 编辑

Self-Driving Database
摘要:2020.4.5更新:补充一些最新的研究趋势 今年的ICDE2020专门安排了一个Self-Managing Database Systems Learned Index(也不一定就是替换index,别的具有经验性规则的模块也行) https://arxiv.org/pdf/1907.05443.p 阅读全文

posted @ 2019-09-12 13:17 Pentium.Labs 阅读(933) 评论(0) 推荐(0) 编辑

Rust学习笔记2
摘要:继续继续... 转眼都开学啦... Building Blocks 2 building blocks里讲了一些关于Log structure storage的东西,这也是用于在硬盘上持久化KvStore要用的结构。我们边做project边看吧 Project 2 这次要Create a persi 阅读全文

posted @ 2019-09-03 14:00 Pentium.Labs 阅读(772) 评论(0) 推荐(0) 编辑

Rust学习笔记1
摘要:这是一份不错的rust教程,目前包括4个block和4个project。全部完成后可以用rust实现一个简单的key-value存储引擎。 注意:Windows下rust貌似会遇到一些bug,强烈建议使用Linux来开发 Building Block1 一开始就是Hello World啦...... 阅读全文

posted @ 2019-08-30 06:59 Pentium.Labs 阅读(1408) 评论(0) 推荐(0) 编辑

MVCC/分布式事务简介
摘要:之前我们学习了RocksDB,但这还只是一个最基础的存储引擎。如果想把它在生产环境中用起来,还需要解决很多问题: 如何从单机扩展到分布式? 如何实现事务,并对事务进行并发控制? 用户接口能不能高级一点?不要只有get/set? 这次我们就来解决这三个问题。 如何从单机扩展到分布式 分布式的一大意义就 阅读全文

posted @ 2019-08-20 18:52 Pentium.Labs 阅读(1481) 评论(0) 推荐(0) 编辑

AutoTikv简介
摘要:AutoTikv是一个用于对TiKV数据库进行自动调优的工具。它的设计灵感来自于SIGMOD 2017的一篇paper:Automatic Database Management System Tuning Through Large-scale Machine Learning,使用机器学习模型对 阅读全文

posted @ 2019-08-19 22:17 Pentium.Labs 阅读(2439) 评论(2) 推荐(0) 编辑

数据库知识点总结1
摘要:当年肥工的DB课讲的其实还挺好的...就用当时的笔记叭 (所以当年为什么不整理呢?还是懒叭 关系数据库的一些概念 完整性:防止DB中存在不符合规定的数据(eg:性别只能是男或女) 实体完整性:primary key中的属性取值必须唯一且不能为空 参照完整性:若F是R的外码(foreign key), 阅读全文

posted @ 2019-08-14 15:38 Pentium.Labs 阅读(479) 评论(0) 推荐(0) 编辑

RocksDB解析
摘要:0. 存储引擎基础 存储引擎的基本功能和数据结构 一个存储引擎需要实现三个基本的功能: write(key, value) 二分查找并插入 read(key) -> return value 二分查找并返回 scan(begin, end) -> return values 求key在某区间内的所有 阅读全文

posted @ 2019-08-12 08:37 Pentium.Labs 阅读(19537) 评论(1) 推荐(5) 编辑

理解Throughput和Latency
摘要:Throughput,中文译作吞吐量。Latency,中文译作延迟。它们是衡量软件系统的最常见的两个指标。 吞吐量一般指相当一段时间内测量出来的系统单位时间处理的任务数或事务数(TPS)。注意“相当一段时间”,不是几秒,而可能是十几分钟、半个小时、一天、几周甚至几月。它的单位一般是TPS、每单位时间 阅读全文

posted @ 2019-06-18 12:36 Pentium.Labs 阅读(862) 评论(0) 推荐(0) 编辑

OtterTune源码解析
摘要:为了方便后面对ottertune进行魔(hu)改(gao),需要先搞清楚它的源码结构和pipeline OtterTune分为两大部分: server side: 包括一个MySQL数据库(用于存储调优数据,供ml model用),Django(FrontEnd User Interface),Ce 阅读全文

posted @ 2019-05-31 07:11 Pentium.Labs 阅读(2586) 评论(0) 推荐(0) 编辑

OtterTune配置记录
摘要:0. 准备两台Ubuntu 18.04的虚拟机,安装mysql(供server-side存储调优数据用)和postgresql(供client-side存储业务数据用,这里以PostgreSQL为例。因为ottertune官方只给了postgres的knob configuration.....)。 阅读全文

posted @ 2019-05-22 05:02 Pentium.Labs 阅读(2519) 评论(0) 推荐(0) 编辑

TiKV集群配置记录
摘要:环境:两台ubuntu 18.04 pc tidb / pd: 192.168.1.150 tikv: 192.1681.1.151 主要参考https://pingcap.com/docs-cn/dev/how-to/deploy/orchestrated/ansible/ 有几点补充: 1. 配 阅读全文

posted @ 2019-05-20 11:05 Pentium.Labs 阅读(575) 评论(0) 推荐(0) 编辑



Pentium.Lab Since 1998

点击右上角即可分享
微信分享提示