rocksdb backend?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

Kyle was telling me that some of the MySQL folks were interested in doing 
an InnoDB backend that sat directly on librados. This is pretty 
interesting for DBaaS use-cases, but it reminded me that the MyRocks stuff 
that Facebook has been doing (a RocksDB backend ofr MySQL) has also been 
showing a lot of promise, and that someone had told me that some CMU 
students had written a librados backend for either leveldb or rocksdb.
Perhaps doing a RocksDB backend will work just as well (or better) for the 
mysql users *and* whatever other things are using rocksdb out there.

It turns out that writing a new backend is really not that hard.  I had to 
do one for BlueStore and it didn't take that long, and most of the work 
was building BlueFS, a toy file system that sat directly on a block 
device.  In the librados case, we can make a super-simple directory 
structure in omap and write files to individual rados objects.  Writes are 
always streaming and full object writes, nothing is read until it is 
written, and so forth.  I think it could be done with a few days' effort.

Also, as part of the bluefs work, I pushed an EnvMirror backend upstream 
that tells rocksdb to mirror to two backends and validate that the return 
identical results on all reads.  This was super useful for debugging the 
bluefs/bluestore backend, and would aid testing here, too.

Anyway, if anyone thinks this is a good or bad idea, or is interested in 
working on it, let us know!

sage


--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux