What are the types of Bitcoin nodes?

TL;DR: The Bitcoin network has different types of nodes, each with varying tradeoffs. Full nodes store the entire blockchain and verify all transactions, and come with greater security and privacy for users by eliminating the need for third-party reliance. Pruned nodes, on the other hand, retain only a portion of the blockchain to save space, which limits their historical data access. Lightweight or Simplified Payment Verification (SPV) nodes, commonly found on mobile devices, fetch transaction data from other nodes and may pose potential trust issues. Mining nodes, paired with specialized mining hardware (ASICs), facilitate block creation and transaction ordering. While Bitcoin full nodes were originally primarily mining nodes, the rise in hashrate has made them a minority.

Full nodes: nodes that run a compatible version of the Bitcoin client software and store a full copy of the Bitcoin blockchain history. A full node handles all protocol aspects and can independently verify the entire blockchain and any transaction. By running a full node, Bitcoin users can protect their interests by validating consensus rules, ensuring miners follow suit. A full node also enhances your security by eliminating dependency on a third party and offers better privacy as you can connect to the network anonymously.

Pruned nodes: nodes that hold only a truncated version of the blockchain in order to save storage space. This is controlled by a parameter in the bitcoin.conf configuration file that defines the maximum number of bytes to use for blockchain data. Pruned nodes have some drawbacks, as they discard some historical data. For instance, they cannot be indexed for faster lookups, and they cannot fully recover wallets that received bitcoin during the time period that is now discarded, as those transactions simply are not there anymore.

Lightweight or SPV nodes: nodes that do not have a copy of the blockchain but instead rely on some other node to serve them data about their transactions via a protocol called “Simple Payment Verification.” This may be problematic because the SPV node has to trust the node that delivers the data. This node could hide transactions, serve fake transactions, and potentially misuse or sell data and metadata pertaining to the SPV node. SPV nodes are often used on mobile devices, where battery life, storage space, and data plans may prohibit running a full node.

Mining nodes: nodes that participate in transaction ordering and block creation in conjunction with running specialized mining hardware called ASICs (Application Specific Integrated Circuits). This is made possible via the Stratum protocol, which acts as a bridge between the ASIC and Bitcoin network. Upon Bitcoin's inception, most nodes were also mining, but as mining evolved with greater computational demands, they made up a smaller subset of Bitcoin full nodes.

Master nodes: nodes specific to some altcoins that organize governance on-chain or perform some other specific function not carried out by regular nodes. Fortunately, there are no master nodes in Bitcoin. They run counter to the fundamental principles of Bitcoin, as a non-hierarchical operation. In Bitcoin, all nodes are equal and must follow its protocol rules.