Getting the Raw Data
For stakehouse ETL the first and the most important step involves fetching the state information of various validators associated with the stakehouse protocol from the Consensus layer. Since the ethereum Consensus layer as per the spec changes state every epoch ( every 6.4 minutes) we scrape the state information every 6.4 minutes.
The consensus layer state is fetched using the RPC endpoint provided by the consensus layer node client that keeps syncing real time with the blockchain. Consensus layer clients expose a wide range of API endpoints that help in accessing the raw data from the blockchain in real-time. The endpoint /state/validator from the Beacon Chain API Spec allows us to access various details from the finalized state, the most important of which is the Active Balance after every epoch.
Once we have the epoch-wise validator state details (Including balance, state root etc.), the database is updated. This database with raw data acts as the foundation for all the things done for the various stakehouse monitoring tools.