TzKT provides REST endpoints to query historical data for Tezos blockchain. Flexible filters allow to request only data needed for your application and drastically speed up the indexing process.
datasources: tzkt_mainnet: kind: tezos.tzkt url: https://api.tzkt.io
Then, use it in your index definitions:
indexes: operations: kind: tezos.tzkt.operations datasource: tzkt_mainnet ...
Also, you can wait for several block confirmations before processing the data:
datasources: tzkt_mainnet: ... buffer_size: 1 # indexing with a single block lag
Since 6.0 chain reorgs are processed automatically, but you may find this feature useful for other cases.