Maison / Technologie / Un état de l'art du web décentralisé – Partie 4

Un état de l'art du web décentralisé – Partie 4

Un état de l'art du web décentralisé – Partie 4

4. Bases de données

Ceci est le quatrième et dernier chapitre d’une série sur la décentralisation du Web. Comme nous l'avons vu dans le chapitre précédent, les contrats blockchain et smart sont parfaits pour stocker des enregistrements pour certains cas d’utilisation spécifiques (comme les transactions financières), mais ils ne remplaceront pas toute votre base de données. Ici, nous allons nous concentrer sur bases de données distribuées et décentralisées: Quels sont les candidats actuels et comment se comparent-ils. Ensuite, nous allons terminer cette série et revenir sur ce que nous avons appris.

Un état de l'art du web décentralisé – Partie 4 0 P34gqgaGo7aTwsmh
SQL, ce bon vieil ami!

Articles de la série

  1. introduction
  2. Stockage de fichiers
  3. Blockchain et contrats intelligents
  4. Bases de données

introduction

Pour une fois, commençons par un théorème: le Théorème de la PAC:

Le théorème CAP indique qu'il est impossible pour un magasin de données réparti de fournir simultanément plus de deux des trois garanties suivantes:
Cohérence: Chaque lecture reçoit l'écriture la plus récente ou une erreur
Disponibilité: Chaque requête reçoit une réponse (sans erreur) – sans la garantie qu'elle contient l'écriture la plus récente
Tolérance de partition: Le système continue de fonctionner malgré le nombre arbitraire de messages rejetés (ou retardés) par le réseau entre les nœuds
La source

Ce théorème n'est pas parfait, mais il est simple et vous donne une idée du compromis de conception en un coup d'œil. Cela nous aidera à classer les différents candidats.

De plus, si vous ne savez pas de quoi nous parlons, voici une bonne introduction:

Bases de données décentralisées et distribuées, expliquées

Tout bon? Voyons maintenant ces 5 solutions:

  1. PISTOLET
  2. La fluence
  3. Bluzelle
  4. BigchainDB
  5. Cravates.DB

1. GUN

https://gun.eco

GUN est:

  • UNE temps réél, décentralisé, hors ligne en premier, graphique base de données.
  • AP: il garantit disponibilité, tolérance de partition, mais, seulement cohérence éventuelle. Cela le rend particulièrement intéressant pour le temps réel (chat, jeu en ligne, visualisation de capteurs en direct sur IOT,…), mais vous devriez probablement éviter de l'utiliser lorsque la cohérence est cruciale, comme dans le secteur bancaire. Lire la suite ici.
  • Stockage-agnostique. Les adaptateurs actuels incluent le stockage de fichiers, le stockage local (dans le navigateur), IPFS et S3.
  • Codé en JavaScript et super facile à utiliser (voir Docs de l'API).
  • Très évolutif: capable de faire 20M + API ops / sec.
  • Soutenu par VC et recueilli 1,5 M $ en 2018.

La feuille de route est disponible ici.

Notez que GUN peut être utilisé sans serveur (à l'exception de la découverte des homologues), mais les données ne persisteront que dans la mémoire de stockage locale du navigateur. Donc, si vous avez besoin de persistance des données, vous devez toujours laisser quelques nœuds en cours d'exécution.

L'univers n'est pas très cohérent

GUN a fait un compromis intéressant en se concentrant sur les capacités en temps réel et hors ligne. Si tu veux comprendre pourquoi cette présentation explique bien les avantages et les inconvénients de manière simple et amusante. GUN peut ne pas convenir à toutes les applications, mais ça vaut vraiment le coup d'y jeter un coup d'œil!

2. fluence

Réseau Fluence – un traitement de données décentralisé qui fonctionne.

Fluence a commencé comme réseau de base de données décentralisé et récemment déplacé devenir un couche de requête sans confiance sur la blockchain Ethereum.

Fluence crée un réseau indépendant avec son propre consensus décentralisé pour chaque requête, modèle de sécurité et conception crypto-économique. Ce réseau est optimisé pour extraire et traiter les données à partir de sources décentralisées sans sacrifier la sécurité et les performances. Des bases de données, des langages de requête et des algorithmes arbitraires peuvent être créés et déployés sur le réseau Fluence et peuvent être entièrement décentralisés sur la machine virtuelle Fluence.

Avec Fluence, vous pourrez interroger des données de la blockchain et du stockage froid (Ethereum Swarm, IPFS) à l’aide de SQL, GraphQL ou un langage de requête personnalisé.

La fluence est CP (vois ici). Le réseau principal devrait être bientôt disponible (feuille de route).

Dans le même esprit, vous pourriez être intéressé par EthQL, une interface GraphQL vers Ethereum (que je ne vais pas détailler ici car elle repose sur un serveur centralisé).

3. Bluzelle

La base de données décentralisée pour Dapps

Bluzelle fournit un Base de données décentralisée NoSQL key-value store avec un API CRUD. De la même manière que pour de nombreuses solutions de stockage de fichiers, les nœuds peuvent être récompensés avec Jetons BLZ pour l'hébergement de données. Si vous êtes un consommateur, vous utilisez la même crypto-monnaie pour louer du stockage de données dans l'essaim. Bluzelle est aussi Open source.

Tu peux soit créez votre propre client qui communique avec la base de données via WebSockets ou utilise le client Node.js existant. le opérations disponibles sont assez similaires aux autres bases de données NoSQL.

Bluzelle est toujours en version bêta et vous pouvez l'essayer gratuitement sur TestNet.

4. BigchainDB

BigchainDB * * La base de données blockchain.

Avec un débit élevé, une latence faible, des fonctionnalités de requête puissantes, un contrôle décentralisé, un stockage de données immuable et une prise en charge intégrée des actifs, BigchainDB se présente comme une base de données présentant les caractéristiques de la blockchain.

BigchainDB introduit un nouveau paradigme dans les bases de données. Il est axé sur les actifs (au lieu de tableaux ou de documents) et fonctionne avec 2 types de transactions: CREATE et TRANSFER:

Un état de l'art du web décentralisé – Partie 4 1 jZCRB3wbBprby ZlvoH2aQ
Concepts clés de BigchainDB

BigchainDB est maintenant géré par le Fondation IPDB qui fournit un TestNet et maintient la base de code open source. UNE groupe de conducteurs est disponible dans différentes langues, ainsi qu’un Interface GraphQL.

Il est maintenant disponible dans v2.0.0b9. Jettes un coup d'oeil à cette introduction si vous voulez aller plus loin.

5. Cravates.DB

Première base de données publique décentralisée pour dApps

Une base de données publique, distribuée et décentralisée ayant un dénominateur commun: la confiance. Renforcé par la tolérance aux pannes intégrée, les systèmes d’incitation et les contrats intelligents.

Comme avec Bluzelle, Ties.DB incite les nœuds à traiter les requêtes et à héberger les données en les payant Jetons TIE. Pour le moment, le réseau est intégré à Ethereum, mais ils envisagent de l'intégrer à d'autres blockchains dans le futur. Ties.DB est AP. Vous pouvez essayer la version alpha ici.

Vous pouvez soit utiliser le Node.js client (avec certaines fonctions comme putField) ou récupérez vos données en utilisant TiQL (un langage de requête de type SQL).

Point bonus pour offrir un interface graphique conviviale (quelque chose de similaire à phpMyAdmin pour MySQL):

Un état de l'art du web décentralisé – Partie 4 0 hLldtP1w5 E7cuaU
Ties.DB explorer

Conclusion

Nous avons examiné les 3 briques les plus importantes du Web décentralisé:

  • Comment stocker des fichiers
  • Comment obtenir un consensus
  • Comment stocker des données relationnelles

Alors, quel est l’état actuel de ces technologies? Devez-vous démarrer votre nouveau projet de manière décentralisée?

Eh bien, à mon avis… cela dépend de votre projet. Nous sommes encore à un stade très précoce de la décentralisation du Web et il s’agit d’un paradigme totalement nouveau par rapport au Web actuel.

Si vous travaillez sur quelque chose d'expérimental, allez-y et choisissez l'une de ces technologies. Vous allez apprendre beaucoup. Même si certains outils sont encore instables pour le moment, cela devrait s'améliorer avec le temps et vous en ferez partie!

Si votre projet ne vise pas à générer des revenus mais que vous devez stocker une grande quantité de données, je vous recommande de décentraliser la couche de stockage sur IPFS. Vous économiserez beaucoup d’argent tout en conservant un élément extrêmement évolutif. Vous pouvez demander à votre communauté d’héberger des nœuds IPFS. De plus, si votre projet meurt pour une raison quelconque, les utilisateurs peuvent toujours avoir accès à leurs données sur IPFS.

Si votre projet nécessite des données en temps réel mais ne nécessite pas une cohérence forte (comme pour une discussion en ligne), vous devez envisager d'utiliser GUN. Il est vraiment agréable à utiliser, semble assez stable et est déjà utilisé par de gros dApps.

Concernant la blockchain, 2018 a vu la mort de nombreux projets vraiment intéressants. La plupart du temps, la raison n'était pas "La blockchain convient-elle à cette fin?" mais "Cela vaut-il la peine de s’offrir toute la complexité que la blockchain apporte à cet effet?". Je pense fermement que la blockchain continuera d'évoluer et de s'améliorer au cours des prochaines années. Cependant, il était probablement trop tôt quelques années pour commencer à l'utiliser pour tous les besoins. Il existe encore de très bonnes raisons de démarrer un projet en utilisant la blockchain: il appartient à tout le monde de l’équilibrer. Mais si vous êtes prêt à utiliser la blockchain uniquement pour la traçabilité, quelque chose comme BigchainDB peut probablement vous fournir ce dont vous avez besoin d’une manière plus simple.

De plus, je vous recommanderais de garder un œil sur quelques projets qui développent une couche d’abstraction facilitant l’intégration des développeurs avec les technologies décentralisées. Ils sont encore jeunes, mais s’ils peuvent tenir ce qu’ils promettent, créer une application sera aussi simple que de développer une application normale! Voici mes 3 favoris:

  • DADI: Le fournisseur de cloud décentralisé. Leur feuille de route inclut le stockage, la couche de calcul, le CDN, l’API, les files d’attente, ainsi que tout ce dont vous avez besoin.
  • Blockstack: Comme pour DADI mais limité à l'identité et au stockage.
  • Textile: En construisant leur Photos dApp En plus d’IPFS, ils étaient confrontés à de nombreux problèmes tels que la gestion des identités, le blocage de fichiers sur IPFS, les notifications, comment le faire fonctionner sur mobile,… Tous ces éléments sont disponibles dans leur environnement. cadre de go-textile. Ils fournissent également un Réagir au SDK natif.
Un état de l'art du web décentralisé – Partie 4 0 RmZYqFoLMit B3Uz

C’est tout pour moi, merci de votre lecture! N'hésitez pas à partager vos commentaires et expériences sur la décentralisation du Web dans les commentaires.

Un état de l'art du web décentralisé – Partie 4 stat event post


Un état de l'art du web décentralisé – Partie 4 a été publié à l'origine dans Hacker midi sur Medium, où les gens poursuivent la conversation en soulignant et en répondant à cette histoire.

Source

A propos newstrotteur-fr

Découvrez également

Adobe passe à 11, dépassant les 11 milliards de dollars de revenus

Hier, Adobe a soumis son rapport trimestriel sur les résultats et les résultats étaient assez …

Laisser un commentaire