Lohkoketjut vs. keskitetyt tietokannat

Neljä keskeistä eroa lohkoketjujen ja tavallisten tietokantojen välillä

Jos olet lukenut aikaisempia viestejäni, tiedät jo, että estoketjut ovat yksinkertaisesti uuden tyyppinen tietokanta. Toisin sanoen tietokanta, jonka ryhmä, joka ei luota luotettaviin osapuoliin, voidaan jakaa suoraan kirjoitustilassa tarvitsematta keskusjärjestelmänvalvojaa. Tämä on ristiriidassa perinteisten (SQL tai NoSQL) tietokantojen kanssa, joita hallitsee yksi kokonaisuus, vaikka sen seinissä käytettäisiin jonkinlaista hajautettua arkkitehtuuria.

Annoin äskettäin puhe lohkoketjuista tietoturvan näkökulmasta, jossa päädyin siihen, että lohkoketjut ovat tavallaan tietoturvallisempia kuin tavalliset tietokannat ja toisilla vähemmän turvalliset. Ottaen huomioon päärooli että keskitetyt tietokannat pelaavat nykypäivän teknologiapinoa, se sai minut ajattelemaan laajemmin näiden kahden tekniikan välisiä kompromisseja. Todellakin, aina kun joku kysyy minulta moniketjuisille voidaan käyttää tiettyyn tarkoitukseen, ensimmäinen vastaukseni on aina: "Voisitko tehdä sen tavallisella tietokannalla?" Useimmissa tapauksissa kuin luulisi, vastaus on kyllä ​​seuraavasta yksinkertaisesta syystä:

Jos luottamus ja kestävyys eivät ole ongelma, estoketju ei voi tehdä mitään, mitä tavallinen tietokanta ei voi.

Tämä on keskeinen kohta, jossa on niin paljon väärinkäsityksiä. Tallennettavien tietojen tyyppien ja tälle datalle suoritettavien tapahtumien suhteen estoketjut eivät tee mitään uutta. Ja vain selvyyden vuoksi tämä havainto ulottuu myös "älykkäisiin sopimuksiin", huolimatta heidän seksikkäästä nimestään ja kuvastaan. Älykäs sopimus ei ole muuta kuin pala tietokonekoodia, joka toimii jokaisessa lohkoketjun solmussa - vuosikymmeniä vanha tekniikka nimeltä tallennetut tekee saman keskitetyille tietokannoille. (Et myöskään voi käyttää blockchainia, jos tämä koodi tarvitsee aloittaa vuorovaikutus ulkomaailman kanssa.)

Totuus lohkoketjuista on, että vaikka niillä on joitain etuja, heillä on myös haittapuolensa. Toisin sanoen, kuten useimmat teknologiapäätökset, valinta lohkoketjun ja tavallisen tietokannan välillä on sarja kompromisseja. Jos olet sokeutunut hyppystä ja kuurosta melusta, et todennäköisesti tee valintaa objektiivisesti. Joten toivon, että seuraava opas voi auttaa.

Hajauttaminen: etujen estoketjut

Lohkoketjun ydinarvo on mahdollistaa tietokannan jakaminen suoraan luottamuksen rajojen yli ilman keskusvastaavaa. Tämä on mahdollista, koska lohkoketjutapahtumat sisältävät oman todistuksen pätevyydestään ja omasta todistuksestaan ​​valtuutuksesta sen sijaan, että vaaditaan keskitettyä sovelluslogiikkaa näiden rajoitusten toteuttamiseksi. Siksi transaktiot voidaan tarkistaa ja käsitellä itsenäisesti useilla "solmuilla", jolloin lohkoketju toimii konsensusmekanismina varmistaakseen, että nämä solmut pysyvät synkronoituna.

Miksi tässä irtautumisessa on arvoa? Koska tietokanta on vain bittejä ja tavuja, se on myös konkreettinen asia. Tietokannan sisältö tallennetaan tietyn tietokonejärjestelmän muistiin ja levylle, ja kuka tahansa, jolla on riittävä pääsy kyseiseen järjestelmään, voi tuhota tai vioittaa sisällä olevia tietoja. Seurauksena on, että kun annat tietosi normaalille tietokannalle, sinusta tulee myös riippuvainen ihmisen organisaatio, jossa kyseinen tietokanta on.

Nyt maailma on täynnä organisaatioita, jotka ovat ansainneet tämän luottamuksen - hallitukset ja pankit (enimmäkseen), yliopistot, ammattiyhdistykset ja jopa yksityiset yritykset, kuten Google ja Facebook. Useimmissa tapauksissa, erityisesti kehittyneissä maissa, nämä toimivat erittäin hyvin. Uskon, että ääneni on aina laskettu, yksikään pankki ei ole koskaan varastanut rahani, ja olen vielä etsimässä tapaa maksaa paremmista arvosanoista. Joten mikä on ongelma? Jos organisaatio hallitsee tärkeää tietokantaa, se tarvitsee myös joukon ihmisiä ja prosesseja paikallaan estääkseen kyseisen tietokannan väärentämisen. Ihmiset tarvitsevat palkkaamista, prosessit on suunniteltava, ja kaikki tämä vie paljon aikaa ja rahaa.

Joten estoketjut tarjoavat tavan korvata nämä organisaatiot hajautetulla tietokannalla, joka on lukittu fiksulla salauksella. Kuten niin paljon kuin aikaisemmin on tullut, ne hyödyntävät tietojärjestelmien jatkuvasti kasvavaa kapasiteettia tarjotakseen uuden tavan korvata ihmiset koodilla. Ja kun se on kirjoitettu ja viritetty, koodi on yleensä paljon halvempi.

Luottamuksellisuus: etuna keskitetyt tietokannat

Kuten mainitsin, lohkoketjun jokainen solmu tarkistaa ja käsittelee itsenäisesti kaikki tapahtumat. Solmu voi tehdä tämän, koska sillä on täydellinen näkyvyys: (a) tietokannan nykytilaan, (b) tapahtuman pyytämään muutokseen ja (c) digitaaliseen allekirjoitukseen, joka todistaa tapahtuman alkuperän. Tämä on epäilemättä fiksu uusi tapa suunnitella tietokanta, ja se todella toimii. Joten missä saalis on? Monissa sovelluksissa, etenkin taloudellisissa asioissa, kaikkien solmujen täydellinen läpinäkyvyys on ehdoton tappaja.

Kuinka tavallisiin tietokantoihin perustuvat järjestelmät välttävät tämän ongelman? Aivan kuten estoketjut, ne rajoittavat tapahtumia, joita tietyt käyttäjät voivat suorittaa, mutta nämä rajoitukset on asetettu yksi keskeinen sijainti. Tämän seurauksena koko tietokannan sisällön on oltava näkyvissä vain kyseisessä paikassa eikä useissa solmuissa. Tietojen lukupyynnöt käyvät myös tämän keskusviranomaisen kautta, joka voi hyväksyä tai hylätä pyynnöt sopivaksi katsomallaan tavalla. Toisin sanoen, jos tavallista tietokantaa luetaan ja kirjoitusohjattu, lohkoketju voi olla vain kirjoitusohjattu.

Ollaksemme oikeudenmukaisia, on olemassa monia strategioita tämän ongelman lieventämiseksi. Nämä vaihtelevat yksinkertaisista ideoista, kuten tapahtumista useilla lohkoketjuosoitteilla, edistyneisiin salaustekniikoihin, kuten luottamukselliset tapahtumat ja nollatieto-todisteet (nyt kehitteillä). Siitä huolimatta, mitä enemmän tietoja haluat piilottaa lohkoketjussa, sitä raskaampi laskennallinen taakka maksat tapahtumien luomisesta ja vahvistamisesta. Riippumatta siitä, miten nämä tekniikat kehittyvät, ne eivät koskaan lyö yksinkertaista ja suoraviivaista tapaa piilottaa tiedot kokonaan.

Vankkuus: edun estoketjut

Blockchain-pohjaisten tietokantojen toinen etu on äärimmäinen vikasietoisuus, joka johtuu niiden sisäänrakennetusta redundanssista. Jokainen solmu käsittelee jokaisen tapahtuman, joten mikään yksittäinen solmu ei ole ratkaiseva koko tietokannalle. Samoin solmut muodostavat yhteyden toisiinsa tiheällä vertaisvertaisella tavalla, joten monet viestintälinkit voivat epäonnistua, ennen kuin asiat pysähtyvät. Lohkoketju varmistaa, että alaspäin menneet solmut voivat aina saada kiinni menetetyistä tapahtumista.

Joten vaikka on totta, että säännölliset tietokannat tarjoavat monia tekniikoita replikointi, lohkoketjut vievät tämän uudelle tasolle. Aluksi määritystä ei tarvita - yhdistä vain jotkut estoketjusolmut yhteen, ja ne pitävät itsensä automaattisesti synkronoituna. Lisäksi solmut voidaan vapaasti lisätä tai poistaa verkosta ilman mitään valmisteluja tai seurauksia. Lopuksi ulkoiset käyttäjät voivat lähettää tapahtumansa mihin tahansa solmuun tai useaan solmuun samanaikaisesti, ja nämä tapahtumat siirtyvät automaattisesti ja saumattomasti kaikille muille.

Tämä vankkuus muuttaa tietokantojen saatavuuden taloudellisuutta. Säännöllisillä tietokannoilla korkea saatavuus saavutetaan yhdistämällä kallis infrastruktuuri ja katastrofipalautuksen. Ensisijainen tietokanta toimii huippuluokan laitteistolla, jota tarkkaillaan tarkasti ongelmien varalta. Tapahtumat toistetaan varmuuskopiointijärjestelmään eri fyysisessä paikassa. Jos ensisijainen tietokanta epäonnistuu (esim. Virtakatkoksen tai katastrofaalisen laitevian vuoksi), toiminta siirretään automaattisesti varmuuskopioon, josta tulee uusi ensisijainen. Kun vikaantunut järjestelmä on korjattu, se on järjestetty toimimaan uudena varmuuskopiona tarvittaessa ja tarvittaessa. Vaikka kaikki tämä on toteutettavissa, se on kallista ja tunnetusti vaikeaa saada oikea.

Sen sijaan, mitä jos meillä olisi 10 lohkoketjun solmua eri puolilla maailmaa, kaikki hyödykelaitteistossa? Nämä solmut olisivat tiiviisti yhteydessä toisiinsa, jakamalla tapahtumia vertaisverkossa ja käyttämällä lohkoketjua konsensuksen varmistamiseksi. Tapahtumat tuottavat loppukäyttäjät muodostavat yhteyden (esimerkiksi) 5 näistä solmuista, joten ei ole väliä, meneekö muutama tiedonsiirtoyhteys. Ja jos yksi tai kaksi solmua epäonnistuu kokonaan tiettynä päivänä, kukaan ei tunne mitään, koska jäljellä on vielä enemmän kuin tarpeeksi kopioita. Kuten tapahtuu, tämä yhdistelmä edullisia järjestelmiä ja suurta redundanssia on juuri se, miten Google rakensi hakukoneensa niin halvalla. Lohkoketjut voivat tehdä saman asian tietokannoille.

Suorituskyky: etuna keskitetyt tietokannat

Lohkoketjut ovat aina hitaampia kuin keskitetyt tietokannat. Se ei ole vain sitä tämän päivän estoketjut ovat hitaita, koska tekniikka on uutta ja optimoimatonta, mutta se on seurausta luonto itse lohkoketjuista. Tapahtumia käsiteltäessä lohkoketjun on tehtävä kaikki samat asiat kuin tavallisessa tietokannassa, mutta sillä on kolme lisärasitetta:

  1. Allekirjoituksen todentaminen. Jokainen lohkoketjutapahtuma on allekirjoitettava digitaalisesti käyttämällä esimerkiksi julkisen ja yksityisen salausmenetelmää ECDSA. Tämä on välttämätöntä, koska transaktiot etenevät solmujen välillä vertaisverkossa, joten niiden lähdettä ei muuten voida todistaa. Näiden allekirjoitusten luominen ja todentaminen on laskennallisesti monimutkaista ja muodostaa ensisijaisen pullonkaulan kaltaisissamme tuotteissa. Sitä vastoin keskitetyissä tietokannoissa, kun yhteys on muodostettu, ei tarvitse tarkistaa erikseen jokaista sitä vastaan ​​tulevaa pyyntöä.
  2. Konsensusmekanismit. Hajautetussa tietokannassa, kuten lohkoketjussa, on pyrittävä varmistamaan, että verkon solmut pääsevät yksimielisyyteen. Käytetystä konsensusmekanismista riippuen tähän voi liittyä merkittävää edestakaisen viestintää ja / tai haarukoiden ja niistä seuraavien takaiskujen käsittelyä. Vaikka onkin totta, että keskitettyjen tietokantojen on taisteltava myös ristiriitaisten ja keskeytettyjen tapahtumien kanssa, nämä ovat paljon vähemmän todennäköisiä, kun tapahtumia jonotetaan ja käsitellään yhdessä paikassa.
  3. irtisanominen. Tämä ei koske yksittäisen solmun suorituskykyä, mutta lohkoketjun vaatima laskennan kokonaismäärä. Kun keskitetyt tietokannat käsittelevät tapahtumia kerran (tai kahdesti), lohkoketjussa ne täytyy käsitellä itsenäisesti jokaisen verkon solmun kautta. Joten samaa lopputulosta varten tehdään paljon enemmän työtä.

Rivi

Luonnollisesti on olemassa muita tapoja, joilla lohkoketjuja ja tavallisia tietokantoja voidaan verrata. Voisimme puhua koodikannan kypsyydestä, kehittäjien houkuttelevuudesta, ekosysteemien leveydestä ja muusta. Mutta mikään näistä asioista ei ole luontainen itse tekniikkaan. Joten kun kyseessä on pitkäaikainen päätös blockchainin käytöstä, on kysyttävä tämä: Mikä on tärkeämpää käyttötapaukselleni? Keskeytyminen ja kestävyys? Tai luottamuksellisuus ja suorituskyky?

Kun tarkastellaan tätä yksinkertaista valoa, monet parhaillaan keskusteltavista käyttötapauksista ei käy järkeen. Suurin ongelma on yleensä luottamuksellisuus. Voimakkaasti kilpaillun markkinapaikan osallistujat suosivat luonnollisesti keskitetyn tietokannan yksityisyyttä sen sijaan, että paljastaisivat toimintansa toisilleen. Tämä pätee erityisesti, jos luotettu keskuspuolue on jo olemassa ja voi tarjota puolueettoman alueen, jolla tietokanta voi asua. Vaikka tähän keskuspalveluntarjoajaan saattaa liittyä jonkin verran kustannuksia, tämä on enemmän kuin perusteltua säilytetyn yksityisyyden arvolla. Ainoa motivaatio siirtymiselle lohkoketjuihin olisi aggressiivinen uusi sääntely.

Lohkoketjuilla on kuitenkin vahvoja käyttötapauksia, joissa keskinäinen välittyminen ja kestävyys ovat tärkeämpiä kuin luottamuksellisuus ja suorituskyky. Kirjoitan näistä lisää seuraavassa viestissä, mutta lupaavimmat alueet, joita olemme tähän mennessä nähneet, ovat: (a) yritysten väliset tarkastuspolut, (b) alkuperän seuranta ja (c) kevyt rahoitusjärjestelmät. Kaikissa kolmessa tapauksessa olemme löytäneet ihmisiä, jotka rakentavat MultiChainille selkeän näkymän käyttöönottoon eikä vain uteliaisuuteen ja kokeiluihin. Joten jos etsit tapoja, joilla estoketjut voivat lisätä todellista arvoa yrityksellesi, ne voivat olla hyvä paikka aloittaa.

Ole hyvä ja lähetä kommentit LinkedIn.

Aikaleima:

Lisää aiheesta moniketjuisille