📜 ⬆️ ⬇️

Google opens LevelDB: another internal development

Google has opened LevelDB source codes - this is a fast engine (library) created by Google for working with the key-value pairs repository.

The LevelDB library in C ++ can be used for different purposes. For example, a web browser can process the LevelDB cache of recently visited pages. The operating system is a list of installed packages and dependencies between them, and any application can use LevelDB to store user settings.

The LevelDB library is made in such a way that it is convenient to use it as a building block when creating higher-level storage. Future versions of the Chrome browser include an implementation of the IndexedDB HTML5 API programming interfaces that are built on top of LevelDB. Even Google’s Bigtable high-performance database manages millions of table segments (tablets) in which the content of a particular segment is represented by LevelDB. Recently, LevelDB support has also been added to the Riak distributed database.

In the LevelDB library itself, a minimum of dependencies was left, so it is easy to port it to any systems. It has already been ported to various Unix systems, OS X, Windows and Android.
')
As for performance, Google offers a look at these benchmarks that compare LevelDB performance with SQLite and Kyoto Cabinet . In some tests LevelDB has a very significant advantage.

In addition, the developers Riak compared with InnoDB . In these tests, the main advantage of LevelDB over other systems like SQLite and Kyoto Cabinet is that LevelDB is optimized for massive updates, in which many keys change in a large address space. This is an important condition for efficiently updating an inverted index that does not fit in RAM.

The library is distributed under the free BSD-type license.

via Open Source at Google

Source: https://habr.com/ru/post/125137/


All Articles