Author

Topic: ////////////////////////////////////////////////// (Read 2408 times)

newbie
Activity: 6
Merit: 100
SQLite is not part of berkeley db, they are even of different types (SQL obviously vs noSQL key-value store in file)

Is not get/set rawtransaction basically what sx can do? And newly announced protocoin? I might look into this. Sounds interesting.
newbie
Activity: 6
Merit: 100
That's fine, a shame though they are not in Python Sad
hero member
Activity: 727
Merit: 500
Minimum Effort/Maximum effect
Hi everyone,

I know that leveldb is fine for embedded, but we need to think big. Soon or later the Nodes will also be a business.
So leveldb will start to slow down soon or later.

So is there a way to store blockchain in SQL (postgresql, mysql), No-SQL (mongo, orient), key-value storages (redis, memcached)?
It would be really nice to choose a medium, especially for big business.

I think SQLite is part of BerkleyDB, I went and looked at the performance between SQLite and LevelDB is pretty much the same... so what needs improvement?
hero member
Activity: 812
Merit: 1022
No Maps for These Territories
It's the wallet implementation in bitcoind (which uses berkelydb) that has performance/scaling problems, not the block chain handling (which uses leveldb).

The 0.9 release will include "disable wallet" mode, and I expect in time that will be the recommended way of running your own full node. You can use any SPV-ish wallet client (or multiple!) on top.

Sure, because you'll need to cross verify the txs, and it's not that easy with no direct leveldb access and only json capabilities of bitcoind, and I'm not sure it's possible to partly lock leveldb to make a transaction atomically.
You may be able to do what you want through the raw transaction API (createrawtransaction/signrawtransaction/sendrawtransaction/getrawtransaction). There is no direct leveldb access but there are low-level queries in the JSON interface.

You can also lock specific outputs from being spent using lockunspent.
legendary
Activity: 1400
Merit: 1009
Both btcd and Bits of Proof are capable of swapping out block storage databases.
legendary
Activity: 2618
Merit: 1006
Yeah, looks like MtGox tried the multiple bitcoind thingie - they started to get into race conditions and double spend each other from time to time.
staff
Activity: 4200
Merit: 8441
Why don't you go do some testing and find out where it falls down?

Otherwise it's all just buzzwords: REDIS HAZ WEBSCALE!!!!

You might also try looking at the implementations which alreay have used postgresql...
legendary
Activity: 2618
Merit: 1006
Do you know what levelDB is used for in bitcoind? Roll Eyes

Anyways, if you need a faster version of it, you can check facebook's pimped version: http://rocksdb.org/
member
Activity: 98
Merit: 10
nearly dead

I know that leveldb ..

So is there a way to store blockchain in key-value storages ?


Have you tried finding out what leveldb is ?
newbie
Activity: 6
Merit: 100
/////////////////////////
Jump to: