I want to do analysis of the ethereum blockchain in a manner similar to what blockchain explorer sites do to answer a few more general questions.

I will need info on all addresses and transaction sizes. But will not need debug trace info. For example, we'll be asking questions like "what's the distribution of transaction sizes?" "How long do addresses stay active?" etc.

Can this be done with a "fast" sync mode in geth? Or will I need to use "full" sync mode? Does pruning matter here?


2 Answers 2


I think, the deeper you dig into the data, the more you'll find that you will need the traces (at the very least). You'll find that only about 2/3 of all the available data resides at the 'top level' (that is in the regular transactions). Because smart contracts can do all sorts of things (and do), much of the actual behavior happens in what are sometimes called internal transactions. At least in the case of Parity, internal transactions and traces are nearly identical.

An example of what you won't be able to analyze without traces is any transaction that is sent to a multi-sig wallet. At the top level, that transaction is from an external account to the multi-sig, but the "real" transaction is whatever the multi-sig is proxy for.

We run parity --tracing on and we're able to analyze anything we want. The --pruning archive adds historical state, so if you're only interested in transactions, you probably don't need that, and it adds a huge amount of data.


Parity OfficialThis is from the Parity website and details the various sync options.

I would assume, from your requirement of no debug trace, that you would be able to use one of the fast syncs.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.