Puedes ejecutar bitcoin en:
Modo txindex: que le permite consultar cualquier transacción en la cadena de bloques con getrawtransactions (¿algún otro beneficio?). Esto ocupa la mayor parte del espacio.
modo predeterminado: esto le permite obtener transacciones sin procesar solo para su propia transacción
Modo podado: como el modo predeterminado, pero solo conserva unos pocos GB de las últimas transacciones. Descarga los bloques, verifica y luego los desecha.
Pero me gustaría saber con más profundidad las diferencias entre los modos.
¿Qué parte de la cadena de bloques de Bitcoin almacena cada modo en la máquina local? ¿Qué descarga y verifica? ¿Qué descarta? ¿Qué habilidades pierdes con los diferentes modos?
La mayoría de los casos de uso no requieren un índice tx. La billetera realiza un seguimiento de las transacciones relevantes (si ejecuta una billetera). Un tx-index completo puede ser útil para interfaces tipo explorador de bloques o para investigación, etc. Requiere algo de espacio en disco.
Poda y TxIndex : no puede usar un txindex con una cadena de bloques podada. La poda desechará los bloques escaneados. Tener un índice que apunte a un tx en un bloque que ya no está en su disco parece un desperdicio.
Autopprune (-prune=550) le permite reducir sus datos históricos de blockchain a un objetivo determinado (en MB, el ejemplo usa 550, que es el mínimo). No puede desechar todos los bloques porque es posible que deba "retroceder un par de bloques" si hay una reorganización de la cadena.
Si configura prune=1
(== modo manual), puede podar manualmente su cadena de bloques (use la llamada RPC pruneblockchain <height>
) [desde 0.14]
La única razón para mantener los bloques antiguos (digamos más profundos que 144 bloques) es permitir que otros pares arranquen la cadena de bloques y sirvan bloques (filtrados) al cliente SPV. Hay pocos casos de uso de "usuario final" (espere el txindex) para mantener el bloque antiguo.
Es importante saber que su nodo completo realizará un seguimiento de todas las transacciones no gastadas (solo aquellas son relevantes para validar bloques/la cadena). Esta base de datos tiene (en este momento) aproximadamente 2 GB de tamaño y estará (y debe) también estar presente en el modo de poda. Esta base de datos es esencial para un nodo completo.
Conserva todos los bloques (ocupa ~80 GB de espacio en disco). Esto permitirá que otros pares verifiquen la cadena de bloques y permite que los pares SPV soliciten transacciones relevantes en todos los bloques posibles. Si nadie se ejecuta en este modo, el historial de la cadena de bloques puede perderse (exagerarse).
λ MEC-MBP scripts → λ git master* → du -sh ~/Library/Application\ Support/Bitcoin/{blocks,chainstate} 228G /Users/mec/Library/Application Support/Bitcoin/blocks 2.7G /Users/mec/Library/Application Support/Bitcoin/chainstate
pieter wuille
gettransaction
(que siempre funciona y brinda más información).