LSMTree综述

LSMTree综述
  LSM-based storage techniques: a survey (VLDBJ 2020)   This paper aims to serve as a guide to the state of the art in LSM-based storage techniques for researchers, practitioners, and users.   LSMTree引擎在业界已经有了很多的落地。很多NoSQL系统如Bigtable、Dynamo、HBase、Cassandra、LevelDB、RocksDB、AsterixDB底层都是LSMTree引擎。RocksDB在Facebook的实时数据处理...

What's Really New with NewSQL?

What's Really New with NewSQL?
  这篇文章介绍的面很广,提到了诸多系统,不过每个点都不太细。另外虽然是16年的文章,但不知道为啥还是感觉有点陈旧了。。。简单来说,当个手册看吧,遇到具体细节问题,可以找文中提到的具体系统参考下。这里捡我感兴趣的点罗列了一下,详细内容读者可以看原文。   DBMS简史 1968年第一个DBMS上线,IBM在数据库领域发力甚早,比如System R,不过没有对外。 70年代,Oracle发布了第一个版本。 ...

MyRocks in Facebook UDB

MyRocks in Facebook UDB
MyRocks Paper《MyRocks: LSM-Tree Database Storage Engine Serving Facebook's Social Graph》 这篇文章介绍了Facebook为了解决UDB数据库成本迁移MyRocks的挑战和解决方案。   Introduction 迁至MyRocks所遇到的挑战 在Facebook UDB场景下,MyRocks将存储空间压缩了一半,因此实例数目减半,也意味着UDB集群的CPU和IO硬件资源减半。 Range Scan的Forward和Backward性能不一样,这个主要是底层数据...

FLP impossibility证明 阅读笔记

FLP impossibility证明 阅读笔记

分布式系统一致性协议里面有一个FLP impossibility的结论,这个结论是说,在分布式系统中,异步网络(消息延迟可能任意大或丢失,消息可能乱序),只要有一个进程失效(进程死亡或者足够长时间不响应),就不可能设计出一个一致性协议。
该结论由Fisher、Lynch、Paterson三位分布式系统领域的科学家在1985年在论文Impossibility of Distributed Consensus with One Faulty Process证明。本文解读了证明过程。

几道面试趣题( 打印重复数字 编码扑克牌 煎饼堆排序 随机选取数字 统计1的个数 )

几道面试趣题( 打印重复数字  编码扑克牌  煎饼堆排序  随机选取数字  统计1的个数 )

逛Quora的时候,看到一个有趣的问题。”What are the best programming interview questions you've ever asked or been asked?” (在编程面试中,你问过或者被问过的最好的问题是什么)里面有几道题目很有意思,在这里分享给大家。
第一道题:有一个长度为N+1的数组,里面的元素都是1~N的整数,但有些数字可能重复多次。例如1,1,3 ,3或者 1,3,2,2。现在要求打印出重复的数字(有多个数字重复时,可打印任意一个)。
第二道题目:去掉大小王的52张扑克牌,你和你的朋友事先约定一种策略,使得:我任意给你5张扑克牌,你选择一张留下,剩余的4张给你的朋友,你的朋友能够根据事先约定的策略,知道你留下的牌是什么。
从连续不断的数字流中随机选取一个数字(数字流只能过一遍),要求保证任意时刻,已经过去的数字流中任意一个数字被选中的概率相等。
给定整数N,计算从1到N的数字的二进制表示中所有1的个数。

The Columbia Optimizer

The Columbia Optimizer
  《EFFICIENCY IN THE COLUMBIA DATABASE QUERY OPTIMIZER》 1998 这是Portland State University的硕士论文,作者是YONGWEN XU,相比Cascades论文的跳跃和晦涩,这篇可以说是很良心了。 Motivation 当时背景下,优化器仍然是值得研究的方向,尤其是在Decision Support Systems(DSS)、OLAP、大数据量、复杂对象、新的执行技术如并行和分布式执行等等。 第一代可扩展的优化器包括EXODUS、Starburst...

Raft论文解读

Raft论文解读

Raft论文解读,本文根据Raft会议论文,参考Raft博士论文,解读了部分内容。Raft跟(Multi)Paxos差别较大,相比Paxos加强了很多约束,尤其是strong leader,直接影响了Raft协议的架构。

重新审视Paxos协议的Quorum问题

重新审视Paxos协议的Quorum问题

Flexible Paxos: Quorum intersection revisited 这篇论文重新审视了Paxos中关于Quorum的问题。在Basic Paxos中,要求任何quorum都有交集(通常选择多数派作为quorum)。事实上,这个要求可以放宽到Paxos的两个阶段prepare/accept阶段的quorum有交集即可。文中描述了majority, simple, grid三种quorum system。