Feeds

Facebook helps coders get their Rocks off with flash-wringing DB lib

Open-source persistent key-value store sits in your NAND, chugging data

Secure remote control for conventional and virtual desktops

Facebook has developed an open-source database library that wrings more performance out of server-side flash storage than ever before, while building on previous technology published by Google.

The RocksDB embeddable persistent key-value store was announced by Facebook on Thursday, and gives developers a C++ library based on version 1.5 of Google's open-source LevelDB tech to supercharge databases manipulating data held on modern high-IO server flash. Facebook is storing almost a petabyte of data in it at the moment.

Potential apps that may find the tech useful include spam-detection programs that need fast access to memory, real-time graph-search queries, real-time Hadoop queries, message queues that can handle high numbers of inserts and deletes, or user-facing apps that store viewing history and state of a website, Facebook said.

LevelDB was developed by Google and released in 2011 to help it expose some of the tricks it had learned while building BigTable in a way that could be used by outside developers. Some people have adopted the technology, including Riak specialists Basho who serve up a tweaked version of the software to customers that have non-random access patterns.

"We have customers with very large datasets, performing at or very near the I/O subsystem's maximum is a requirement for most if not all of them. Continuing to provide that level of ingest while at the same time servicing the hot subset of the data in read requests is something that LevelDB is very good at doing," Basho technical product manager Greg Burd told us via email.

Now Facebook has hopped on the LevelDB tech as well, and substantially enhanced it.

"RocksDB software can fully utilize the IOPS offered by flash storage, making it perform faster than LevelDB across random read, write, and bulk uploads," Facebook wrote. "Modern storage devices support up to 100,000 random operations per second on a single flash storage card. If you stripe ten of these cards, you get about one million random operations per second. Today, RocksDB is able to run fast enough to avoid being the bottleneck when operating on this type of storage."

The tech works by storing keys and values as arbitrary byte streams. Writes go straight into an in-memory data structure called memtable, and are optionally also written to a logfile that is a sequentially written to main storage. Once memtable fills it up it is flushed into an sstfile on main storage and the logfile is deleted.

The tech has been seen achieving 10 times faster random writes and 30 per cent faster random reads than LevelDB, and seems to have better performance at scale than vanilla LevelDB when dealing with large memory footprints, Facebook said, in an architecture outline published along with the code on Github.

"RocksDB isn't a distributed database - rather the focus is on making an efficient, high-performance, single-node database engine," the company wrote.

The release of RocksDB follows the publication of the code for Facebook's Hive-beating Presto system in early November.

Though Facebook says it is publishing the code under a three-clause BSD license "because we think it will be useful beyond Facebook," there is likely another motivation at play here: if the company gets its tools into the wider IT ecosystem, it makes it easier for Facebook to hire new talent, and can outsource some components of ongoing development to the wider open-source community. ®

Remote control for virtualized desktops

More from The Register

next story
Be real, Apple: In-app goodie grab games AREN'T FREE – EU
Cupertino stands down after Euro legal threats
Download alert: Nearly ALL top 100 Android, iOS paid apps hacked
Attack of the Clones? Yeah, but much, much scarier – report
Microsoft: Your Linux Docker containers are now OURS to command
New tool lets admins wrangle Linux apps from Windows
Bada-Bing! Mozilla flips Firefox to YAHOO! for search
Microsoft system will be the default for browser in US until 2020
Facebook, working on Facebook at Work, works on Facebook. At Work
You don't want your cat or drunk pics at the office
Soz, web devs: Google snatches its Wallet off the table
Killing off web service in 3 months... but app-happy bonkers are fine
prev story

Whitepapers

Why cloud backup?
Combining the latest advancements in disk-based backup with secure, integrated, cloud technologies offer organizations fast and assured recovery of their critical enterprise data.
Getting started with customer-focused identity management
Learn why identity is a fundamental requirement to digital growth, and how without it there is no way to identify and engage customers in a meaningful way.
5 critical considerations for enterprise cloud backup
Key considerations when evaluating cloud backup solutions to ensure adequate protection security and availability of enterprise data.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Simplify SSL certificate management across the enterprise
Simple steps to take control of SSL across the enterprise, and recommendations for a management platform for full visibility and single-point of control for these Certificates.