azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 15, 2014, 06:49:23 PM Last edit: July 25, 2014, 06:07:04 AM by azeteki |
|
I've recently been playing around with indexing the blockchain and producing some interesting charts. I thought others may find them useful so I've uploaded them. More charts can be found at the following link: https://azeteki.github.io/chartsThe data was gleaned using a short python script to get historical block data from bitcoind. This takes a little while but can be updated quickly with new blocks once historical information is indexed. You can find it on my GitHub page if you are interested. GitHub link: https://github.com/azeteki/bitcoind-chainstats
|
|
|
|
roslinpl
Legendary
Offline
Activity: 2212
Merit: 1199
|
|
July 15, 2014, 06:51:46 PM |
|
Hey!! This is very interesting!
What's is a link to the GitHub?? Edited: I found a link in your profile!
I will take a look at it! It is really cool!
Regards.
|
|
|
|
azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 15, 2014, 06:59:37 PM |
|
Hey!! This is very interesting!
What's is a link to the GitHub?? Edited: I found a link in your profile!
I will take a look at it! It is really cool!
Updated the original post with GitHub link. Note that the gnuplot scripts are not included. With full output, it will take a few hours and generate a delimited list of information about each block. You can also get data for a range, e.g. block 300000-301000 if you so wish. I believe you will need -txindex enabled to get coinbase fee data (it queries the coinbase transaction for each block). Without that it should report 0 for all related items though I have not tested. There are likely better programs available to perform the same task, however I like the simplicity of using bitcoind wherever possible.
|
|
|
|
roslinpl
Legendary
Offline
Activity: 2212
Merit: 1199
|
|
July 15, 2014, 07:02:55 PM |
|
Hey!! This is very interesting!
What's is a link to the GitHub?? Edited: I found a link in your profile!
I will take a look at it! It is really cool!
Updated the original post with GitHub link. Note that the gnuplot scripts are not included. With full output, it will take a few hours and generate a delimited list of information about each block. You can also get data for a range, e.g. block 300000-301000 if you so wish. There are likely better programs available to perform the same task, however I like the simplicity of using bitcoind wherever possible. Yeah. That's very cool indeed. A lot of data for data maniacs Could you do the same in JavaScript? Regards.
|
|
|
|
azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 15, 2014, 07:04:28 PM |
|
That's very cool indeed. A lot of data for data maniacs Could you do the same in JavaScript? Apologies, but I would rather nail myself to a rock, on Mars.
|
|
|
|
roslinpl
Legendary
Offline
Activity: 2212
Merit: 1199
|
|
July 15, 2014, 07:07:07 PM |
|
That's very cool indeed. A lot of data for data maniacs Could you do the same in JavaScript? Apologies, but I would rather nail myself to a rock, on Mars. Ahh ok I was asking because I am trying to do something similar in JS and it is not easy One more time thanks for sharing this with us! This is really cool tool! I hope you plan to do some more good stuff for Bitcoiners in the future! Regards.
|
|
|
|
dserrano5
Legendary
Offline
Activity: 1974
Merit: 1029
|
|
July 15, 2014, 07:59:01 PM |
|
Really cool charts!
What's "Average transaction size"? Doesn't seem to be bytes per transaction and I can't think of anything else.
|
|
|
|
azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 15, 2014, 08:10:45 PM |
|
Really cool charts!
What's "Average transaction size"? Doesn't seem to be bytes per transaction and I can't think of anything else.
Good question! I was charting inverse average transaction size. Not so useful! Updated now. Calculation: block_size/transactions_in_block.
|
|
|
|
azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 16, 2014, 03:17:49 AM |
|
Updated the charts page with individual charts for 2013 and 2014. I've set the axes to show the most reasonable data, with the exception of coinbase reward which really isn't that interesting otherwise. You can pick out quite a few instances in which large fees have been paid, presumably by mistake. Oops
|
|
|
|
dserrano5
Legendary
Offline
Activity: 1974
Merit: 1029
|
|
July 16, 2014, 06:43:47 PM |
|
I git cloned the repo today. Am I blind or you're not sharing the gnuplot scripts? I expected a wholly spoon-fed solution .
|
|
|
|
azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 16, 2014, 11:22:53 PM |
|
I git cloned the repo today. Am I blind or you're not sharing the gnuplot scripts? I expected a wholly spoon-fed solution . Consider it me giving you work to do. I will likely upload the scripts at some point, though I want to slim them down somewhat and ensure they don't break first.
|
|
|
|
MountainTop
Newbie
Offline
Activity: 10
Merit: 0
|
|
July 18, 2014, 10:24:25 AM |
|
Its worth taking a look.
It will be much better if more information or some analysis is presented along with the charts.
|
|
|
|
rarkenin
|
|
July 18, 2014, 11:28:57 AM |
|
Are the high-up dots in the coinbase reward chart large fees, out of curiosity? Or is it something else I'm not understanding wholly?
|
|
|
|
|
azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 18, 2014, 01:18:49 PM |
|
Are the high-up dots in the coinbase reward chart large fees, out of curiosity? Or is it something else I'm not understanding wholly?
Yes. The total coinbase reward (for the most part) will be equal to the block subsidy (50...25...12.5, etc), plus the sum of all fees in the blocks. Most of the high up dots there represent mistakes or similar, like the ~200BTC fee that ASICMiner mined a while back.
|
|
|
|
azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 23, 2014, 12:39:11 AM |
|
Updated and added a chart for the total blockchain size.
In the space of a year we've gone from ~9GB to ~21GB. How time flies!
|
|
|
|
DeathAndTaxes
Donator
Legendary
Offline
Activity: 1218
Merit: 1079
Gerald Davis
|
|
July 23, 2014, 12:42:05 AM |
|
A chart with the size of the UTXO (# of transactions, size or both) would be interesting. It is the critical resource and anecdotally it appears to grow slower than the overall blockchain but it would be interesting to see.
|
|
|
|
gmaxwell
Moderator
Legendary
Offline
Activity: 4256
Merit: 8754
|
|
July 23, 2014, 01:44:55 AM |
|
A chart with the size of the UTXO (# of transactions, size or both) would be interesting. It is the critical resource and anecdotally it appears to grow slower than the overall blockchain but it would be interesting to see.
You mean like? http://bitcoin.sipa.be/pruning-size.png
|
|
|
|
DeathAndTaxes
Donator
Legendary
Offline
Activity: 1218
Merit: 1079
Gerald Davis
|
|
July 23, 2014, 02:00:06 AM |
|
A chart with the size of the UTXO (# of transactions, size or both) would be interesting. It is the critical resource and anecdotally it appears to grow slower than the overall blockchain but it would be interesting to see.
You mean like? http://bitcoin.sipa.be/pruning-size.pngNice find. I only wish sipa had continued it through the current block. Also I assume this is more than just the UTXO (i.e. includes hashes of pruned txns to allow validation of the merkle tree).
|
|
|
|
azeteki (OP)
Member
Offline
Activity: 96
Merit: 10
esotericnonsense
|
|
July 23, 2014, 02:10:08 AM |
|
All of my charts have been produced using bitcoind RPC only, no manipulation. I can't really think of a way of producing a chart like sipa's without reindexing somehow. If you could get bitcoin core to step through indexing block by block, you could do something like the following... for i in blockcount: index_one_block gettxoutsetinfo My machine is unfortunately too slow for both, really. A reindex would take weeks if not more for me, and gettxoutsetinfo is an extremely slow command to run each time. Without specialist tools it will have to fall to someone else I'm afraid.
|
|
|
|
|