Blockchain et bases de données standard. Y a-t-il une différence

Cette fois, je voudrais parler de la façon dont je vois les différences entre la blockchain et les systèmes de base de données conventionnels. Bien sûr, je ne pense pas avoir trouvé la réponse, considérez-la comme moi.



Souvenons-nous d'abord de la blockchain



Blockchain est le nom populaire de la technologie du grand livre distribué. Il diffère des autres en ce qu'il relie des blocs de données dans une chaîne à l'aide d'un hachage cryptographique. Cette chaîne ne peut être modifiée que si le consensus général adopté entre les participants (nœuds) d'un tel réseau est respecté.



En termes plus simples, technologie de grand livre distribué ou blockchain, nous parlons de sécurité des données; une telle organisation où ils sont protégés du changement indépendant. Cette sécurité est assurée par cryptographie (les données sur le réseau sont toujours signées, qu'il s'agisse d'une transaction ou d'un bloc, et la signature est vérifiée avant que les données ne soient considérées comme fiables), et tous les autres composants sont quelque chose de plus familier. Même ce même consensus est plus une loterie entre les participants qui suivent certaines règles. Un seul participant remporte chaque tour, qui a l'honneur d'envoyer un bloc au réseau et chacun sait qu'il a gagné le tour et prend ce bloc dans sa chaîne.



Les capacités réseau du protocole sont simples: d'abord à partir de la configuration, puis en utilisant les messages des nœuds auxquels il était possible de se connecter, les informations sont lues (adresses réseau et toute méta) et elles sont stockées en mémoire afin de se synchroniser avec elles à leur tour. Le nombre de ces nœuds peut également être défini dans les paramètres lors du démarrage du logiciel réseau (nœuds). Dans la méta, ces nœuds rapportent des informations sur leur charge, puis, sachant cela, le reste des voisins essaie moins de harceler un tel nœud.



Essayons de comparer



Les SGBD modernes sont des programmes complexes et sont conçus pour stocker des informations, de sorte qu'il y ait où les sauvegarder et où chercher plus tard. Ils disposent de nombreux outils pour le protéger, notamment les points de défaillance et de réplication. Ils peuvent travailler distribués. Quelle est leur différence, alors, et d'où vient une telle soif d'ogives des entreprises?



Supposons que certaines organisations souhaitent stocker leurs données comme si elles étaient seules. Ils démarrent une base de données, n'importe laquelle et les insèrent en toute sécurité.



Ensuite, ils ont des partenaires qui veulent mendier un peu à partir de là et insérer quelque chose sur leurs clients, leurs produits, etc. Ce n'est pas non plus une question, on peut les synchroniser, disons, en utilisant REST, le principe des transactions est parfaitement implémenté dans la plupart de leurs moteurs, et le principe des clés (PK, UNIQUE) ne permet pas de réinsérer la même chose et résout en fait le problème de la double dépense. Et ce sont tous des systèmes de gestion de base de données standard.



Alors pourquoi avez-vous besoin d'une blockchain. Ils ont commencé à le regarder en raison de la complexité de la confiance dans les processus financiers modernes, et un peu plus tard dans la production. Ils n'y font pas confiance de différentes manières, et malgré toute l'idéalité du SGBD moderne, ils ont besoin de changements et d'améliorations constants. Et cela fait essentiellement référence à l'algorithme de consensus.



Si vous regardez l'actualité sur le sujet de la technologie blockchain, alors dans leurs startups, ils se disputent les protocoles (vitesse et résilience) et le consensus (le principe de confiance au sein du réseau).

Dans le même temps, il n'y a pas de consensus standard, en fonction des tâches à résoudre, différentes sont choisies.

La concurrence conduit au fait que le droit d'apporter des modifications au grand livre général affecte grandement le succès du participant, et tout le monde veut le faire en premier (enfin, ou toujours pas du tout), mais c'est impossible, une seule copie des modifications apportées doit être acceptée, sinon tout le monde se demandera lequel lire ...



Vous dites: pourquoi ne pas donner l'opportunité à tous à tour de rôle. En fait, cela se fait parfois et cela contribue à d'excellentes performances, mais réduit la sécurité. Le fait est que de cette manière, vous pouvez savoir quand quelqu'un fait des changements et que cela d'un certain type nous centralise au moment de la génération de bloc sur quelqu'un en particulier, et si nous ne lui faisons pas confiance, ou ne faisons confiance qu'à certains nœuds, alors les expéditeurs des transactions eux-mêmes seront envoyez-les à un moment où ils savent exactement à qui c'est le tour.

D'autre part, c'est aussi le principe de la concurrence entre les mineurs, c'est-à-dire les participants qui veulent être les premiers au moment des changements de bloc. Cela est particulièrement vrai pour les systèmes avec des données ouvertes.



En parlant d'ouverture des données. Étant donné que de nombreux SGBD sont fermés, ils ne peuvent pas mettre en œuvre les principes de confiance et ceci, pour ainsi dire, suggère que la technologie doit être séparée et adaptée pour fonctionner avec n'importe quelle base de données.



En conséquence, nous pouvons dire que nous parlons d'un système de technologies construit sur des bases de données existantes, qui a une ouverture et la nécessité de changements et d'améliorations constants pour tous.



C'est très franchement la volonté d'idéaliser la comptabilité des données face à la concurrence pour ces données. Une sorte de garantie des parties à la transaction pour un résultat favorable de leurs activités.



La technologie elle-même apporte une popularité au flux de documents électroniques et ses modifications à celles qui surviennent lors du processus de complication des opérations.



All Articles