A blockchain is a type of database. Difference between blockchains and typical databases is in the way that the information is stored in these structures. In blockchains, data is clustered and bound into a block - that is immutable - and then, blocks are chained together in chronological order.
A block consists of a group of validated transactions. Each transaction is validated by a mining node. Each block created, holds the cryptographic hash of the previous block, tying the two blocks together.
Blocks could be created at the same time. This results in different nodes "viewing" different versions of the blockchain history. To ensure parity between the network nodes, blockchains have a ranking algorithm that selects the highest scoring of their history versions. When a peer receives a higher scoring version, overwrites the previous database and retransmits it to the rest of the peers.
Blockchain technology is not inherently decentralized. It's just a way of handling and storing data. Nevertheless, when the implementation of a blockchain is in a decentralized fashion, which means that the blockchain is operated by a peer-to-peer network of a large number of independent nodes, the alteration of the records stored in it becomes virtually impossible.
Every peer holds a copy of the blockchain. Distributed and decentralized blockchain networks don't run the risks of a centralized data storage.