Questions tagged [leveldb]

LevelDB is an embedded key-value storage developed by Google that is used in Bitcoin Core for block index storage and quick access to the UTXO set (unspent transaction outputs).

Filter by
Sorted by
Tagged with
39 votes
4 answers
16k views

What are the keys used in the blockchain levelDB (ie what are the key:value pairs)?

I am wondering if I can use node.js and levelup to access a copy of the blockchain database directly. But from what I can see, I need to know the name of the key(s) before I can get any data, as this ...
  • 1,334
22 votes
1 answer
10k views

How does Bitcoin read from/write to LevelDB

I know that Bitcoin Core uses LevelDB since 0.8 version. However, I couldn't find detailed explanation about how Bitcoin stores and retrieves from LevelDB. E.g. If B transaction uses an output from ...
  • 627
22 votes
1 answer
5k views

Migration from Berkeley DB to LevelDB

In 2013 a new bitcoin core was released and one of the supposed improvement was migrating from Berkeley DB to LevelDB. According to the release notes at bitcoin.org: LevelDB, a fast, open-source, ...
4 votes
3 answers
1k views

Format of a block key's contents in bitcoind's LevelDB?

I am trying to use bitcoind's LevelDB block index files (that are stored in blocks/index) to find the file (e.g. blk00029.dat) and byte position of specfic blocks. Thanks to questions What is the ...
  • 143
2 votes
1 answer
3k views

Bitcoind Node crashes after using -dbcache option

I've been trying to speed up my node sync by increasing the dbcache. However my node tends to crash overnight. My system is running ubuntu 18.04, 4GM of ram bitcoin core v0.18. I've tried bitcoind -...
0 votes
2 answers
399 views

How does bitcoind store blocks?

I want to parse blockchain manually and extract the UTXO set (for various reasons). Is there any way to understand how the blocks are stored without going through the C++ code? Some specs will be ...
  • 1,313
10 votes
1 answer
5k views

Why is Bitcoin Core using LevelDB instead of Redis or SQLite?

Why did Core move from BDB to LevelDB? Why don't they use SQLite or move to Redis now? Is there a technical reason for this choice?
4 votes
1 answer
1k views

mysql instead of leveldb for bitcoin core

Is it possible to use db other than leveldb for bitcoin core? I'd like to make queries on running node and make views with decoded data
3 votes
2 answers
379 views

Why was Bitcoin Core in need of a fork of LevelDB?

Why did Bitcoin Core fork LevelDB? What special needs does Bitcoin Core have, which require a specialized version of LevelDB?
  • 9,859