Blockchain vs Base de datos tradicionales

in #spanish6 years ago

blockchain-vs-database.jpg

Para comprender la diferencia entre una cadena de bloques y una base de datos tradicional, vale la pena considerar cómo se diseña y mantiene cada una de ellas.

blockvsdb_01-1024x528.png

Bases de datos “tradicionales”
Las bases de datos tradicionales usan la arquitectura de red cliente-servidor. Aquí, un usuario (conocido como cliente) puede modificar datos, que se almacenan en un servidor centralizado. El control de la base de datos permanece con una autoridad designada, que autentica las credenciales de un cliente antes de proporcionar acceso a la base de datos. Dado que esta autoridad es responsable de la administración de la base de datos, si la seguridad de la autoridad se ve comprometida, los datos pueden modificarse o incluso eliminarse.

blockvsdb_02-1024x754.png

Bases de datos “Blockchain”
Las bases de datos de Blockchain consisten en varios nodos descentralizados. Cada nodo participa en la administración: todos los nodos verifican nuevas adiciones al blockchain, y son capaces de ingresar nuevos datos en la base de datos. Para que se realice una adición a la cadena de bloques, la mayoría de los nodos deben llegar a un consenso. Este mecanismo de consenso garantiza la seguridad de la red, lo que dificulta su manipulación.
En Bitcoin, el consenso se alcanza mediante la minería (resolviendo acertijos complejos), mientras que Ethereum busca usar la prueba de la participación como su mecanismo de consenso.

Integridad y Transparencia
Una propiedad clave de la tecnología blockchain, que lo distingue de la tecnología de base de datos tradicional, es la verificabilidad pública, que es habilitada por la integridad y la transparencia.

Integridad: todos los usuarios pueden estar seguros de que los datos que están recuperando no están corruptos ni alterados desde el momento en que se grabaron.
Transparencia: cada usuario puede verificar cómo se ha agregado la cadena de bloques a lo largo del tiempo.

blockvsdb_03-1024x408.png
CRUD vs Operaciones de lectura y escritura
En una base de datos tradicional, un cliente puede realizar cuatro funciones en datos: Crear, Leer, Actualizar y Eliminar (conocidos colectivamente como los comandos CRUD).
El blockchain está diseñado para ser una estructura de solo agregar. Un usuario solo puede agregar más datos, en forma de bloques adicionales. Todos los datos anteriores se almacenan permanentemente y no se pueden modificar. Por lo tanto, las únicas operaciones asociadas con blockchains son:

Operaciones de lectura: estas consultas y recuperación de datos de la cadena de bloques
Operaciones de escritura: agregan más datos en la cadena de bloques
Validar y escribir
El blockchain permite dos funciones: validación de una transacción y escritura de una nueva transacción. Una transacción es una operación que cambia el estado de los datos que viven en la cadena de bloques. Si bien las entradas pasadas en el blockchain deben permanecer siempre iguales, una nueva entrada puede cambiar el estado de los datos en las entradas anteriores. Por ejemplo, si el blockchain ha registrado que mi billetera Bitcoin tiene 100 de BTC, esa cifra se almacena permanentemente en el blockchain. Cuando gasto 20 BTC, esa transacción se registra en blockchain, llevando mi saldo a 80 BTC. Sin embargo, dado que el blockchain solo puede adjuntarse, mi saldo previo a la transacción de 100 de BTC también permanece en el blockchain de forma permanente, para aquellos a los que les importa mirar. Esta es la razón por la que a menudo se hace referencia a la cadena de bloques como un libro mayor inmutable y distribuido.

blockvsdb_04-672x273.png

En resumen, la diferencia es el control descentralizado
El control descentralizado elimina los riesgos del control centralizado. Cualquiera con suficiente acceso a una base de datos centralizada puede destruir o corromper los datos que contiene. Por lo tanto, los usuarios dependen de la infraestructura de seguridad del administrador de la base de datos.
La tecnología Blockchain utiliza el almacenamiento descentralizado de datos para eludir este problema y, de este modo, crear seguridad en su propia estructura.
Aunque la tecnología blockchain es adecuada para registrar ciertos tipos de información, las bases de datos tradicionales son más adecuadas para otro tipo de información. Es crucial para cada organización entender lo que quiere de una base de datos, y medir esto contra las fortalezas y vulnerabilidades de cada clase de base de datos, antes de seleccionar una.