MultiChain viri za integracijo podatkovne baze PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Viri z več verigami za integracijo baz podatkov

Prenos podatkov iz blockchaina v širši svet

S prvo javno izdajo MultiChain, davnega leta 2015, smo opazili zanimanje za aplikacije blockchain iz presenetljive smeri. Medtem ko smo prvotno zasnovali MultiChain, da bi omogočili izdajo, prenos in skrbništvo digitalnih sredstev, se je vse več uporabnikov zanimalo za njegovo uporabo za podatkovno usmerjene aplikacije.

V teh primerih uporabe je namen verige blokov omogočiti shranjevanje in iskanje splošnih informacij, za katere ni nujno, da so finančne narave. Motivacija za uporabo verige blokov namesto običajne baze podatkov je izogibanje zanašanju na zaupanja vrednega posrednika za gostovanje in vzdrževanje te baze podatkov. Zaradi komercialnih, regulativnih ali političnih razlogov uporabniki zbirke podatkov želijo, da je to porazdeljena in ne centralizirana odgovornost.

Evolucija tokov

Kot odgovor na te povratne informacije smo leta 2016 Uvedeno MultiChain tokovi, ki zagotavljajo preprosto abstrakcijo za shranjevanje, indeksiranje in pridobivanje splošnih podatkov v verigi blokov. Veriga lahko vsebuje poljubno število tokov, od katerih je vsak lahko omejen za pisanje z določenimi naslovi. Vsak element toka je označen z naslovom izdajatelja in izbirnim ključem za prihodnje iskanje. Vsako vozlišče se lahko neodvisno odloči, ali se bo naročilo na vsak tok, pri čemer indeksira svoje elemente v realnem času za hitro iskanje po ključu, založniku, času, bloku ali položaju. Tokovi so bili takojšnja uspešnica pri uporabnikih MultiChaina in so ga močno razlikovali od drugih poslovnih platform blockchain.

V letu 2017 so bili tokovi podaljšan za podporo izvornega besedila JSON in Unicode, več ključev na element in več elementov na transakcijo. Ta zadnja sprememba omogoča objavo več kot 10,000 posameznih podatkovnih elementov na sekundo na vrhunski strojni opremi. Nato smo leta 2018 dodali brezhibno podporo za podatki izven verige, v katerem je v verigi objavljen le zgoščeni del nekaterih podatkov, sami podatki pa so dostavljeni izven verige do vozlišč, ki jih želijo. Kasneje istega leta smo izdali MultiChain 2.0 Community with Pametni filtri, kar omogoča kodi JavaScript po meri, da izvede poljubno preverjanje veljavnosti elementov toka.

V letu 2019 smo se osredotočili na MultiChain 2.0 Enterprise, komercialno različico MultiChain za večje stranke. Prvi Predstavitev podjetja izkorišča podatke zunaj verige v tokovih, da omogoči dovoljenje za branje, dostavo šifriranih podatkov ter selektivno pridobivanje in čiščenje posameznih elementov. Kot vedno je osnovna zapletenost skrita za preprostim naborom API-jev, ki se nanašajo na dovoljenja in elemente toka. S tokovi je bil naš cilj dosledno pomagati razvijalcem, da se osredotočijo na podatke svojih aplikacij in ne skrbijo, da veriga blokov teče v zakulisju.

Dilema baze podatkov

Ker so se tokovi MultiChain še naprej razvijali, smo se soočali z nenehno dilemo. Ali naj gre MultiChain za branje in analiziranje podatkov v toku in postane popolnoma razvita zbirka podatkov? Ali bi moral ponujati indeksiranje polj JSON, optimizirano poizvedovanje in napredno poročanje? Če je odgovor pritrdilen, katero paradigmo baze podatkov naj uporablja – relacijsko (na primer MySQL ali SQL Server), NoSQL (MongoDB ali Cassandra), iskalno (Elastic ali Solr), časovno vrsto (InfluxDB) ali v pomnilniku (SAP HANA)? Navsezadnje obstajajo primeri uporabe verige blokov, primerni za vsakega od teh pristopov.

Ena od možnosti, ki smo jo upoštevali, je uporaba zunanje baze podatkov kot primarne podatkovne shrambe MultiChain namesto trenutne kombinacije vdelanih LevelDB in binarnih datotek. To strategijo je sprejel Verižno jedro (ukinjeno), Postchain (še ni javno) in je na voljo kot možnost v Hyperledger Fabric. Vendar smo se nazadnje odločili proti temu pristopu zaradi tveganj odvisnosti od zunanjega procesa. V resnici ne želite, da vaše vozlišče blockchain zamrzne, ker je izgubilo povezavo z bazo podatkov ali ker nekdo izvaja zapleteno poizvedbo v njegovi shrambi podatkov.

Drug dejavnik, ki ga je treba upoštevati, je agnosticizem tehnologije in integracije. V omrežju blockchain, ki zajema več organizacij, bo imel vsak udeleženec svoje želje glede tehnologije baze podatkov. Že bodo imeli aplikacije, orodja in poteke dela zgrajene na platformah, ki ustrezajo njihovim potrebam. Če bi torej izbrali katero koli določeno bazo podatkov ali celo ponudili nekaj možnosti, bi bili nekateri uporabniki nezadovoljni. Tako kot lahko vsak udeleženec verige blokov poganja svoje vozlišče v najrazličnejših okusih Linuxa, mora imeti možnost integracije s svojo bazo podatkov po izbiri.

Predstavljamo MultiChain Feeds

Danes z veseljem izdajamo naš pristop k integraciji baze podatkov – MultiChain Feeds. Vir je binarni dnevnik dogodkov na disku v realnem času, ki se nanaša na enega ali več tokov verige blokov, za branje zunanjih procesov. Ponujamo tudi odprto kodo MultiChain Feed Adapter ki lahko prebere vir in samodejno kopira njegovo vsebino v zbirko podatkov Postgres, MySQL ali MongoDB (ali več hkrati). Adapter je napisan v Pythonu in ima liberalno licenco, zato ga je mogoče enostavno spremeniti, da podpira dodatne baze podatkov ali dodaja filtriranje in preoblikovanje podatkov. (Dokumentirali smo tudi format datoteke vira za tiste, ki želijo napisati razčlenjevalnik v drugem jeziku.)

MultiChain Feed Diagram

Vozlišču ni treba naročiti na tok, da bi svoje dogodke posnemal v vir. To omogoča, da se vgrajeno indeksiranje toka MultiChain popolnoma izogne, da se prihrani čas in prostor na disku. Viri odražajo tudi pridobivanje in čiščenje podatkov izven verige ter lahko poročajo o prihodu novih blokov v verigo. Če želite prihraniti prostor na disku, lahko natančno nadzorujete, kateri dogodki se zapišejo v vir in katera polja se zabeležijo za vsakega od teh dogodkov. Poleg tega se datoteke vira dnevno izmenjujejo in na voljo je preprost ukaz za čiščenje za odstranitev datotek po obdelavi.

Zakaj se viri MultiChain zapišejo na disk, namesto da se pretakajo med procesi ali prek omrežja? Ker želimo, da služijo kot izjemno zanesljiv dnevnik replikacije, ki je odporen na izpade baze podatkov, zrušitve sistema, izgubo energije in podobno. Z uporabo diskovnih datotek lahko zagotovimo vzdržljivost in omogočimo asinhrono posodabljanje ciljne baze podatkov. Če iz nekega razloga ta zbirka podatkov postane preobremenjena ali prekinjena, lahko MultiChain nadaljuje z delovanjem brez prekinitev in baza podatkov bo dohitela, ko se bodo stvari vrnile v normalno stanje.

Kako začeti z viri

Viri so integrirani v najnovejšo predstavitev/beta MultiChain Enterprise, ki je na voljo za prenos zdaj. Začnite tako, da preberete dokumentacijo za MultiChain Feed Adapter, ali pregledovanje API-ji, povezani z viri. Radi bi slišijo vaše povratne informacije o tej funkciji in kako jo lahko razširimo v prihodnosti.

Z izdajo virov je različica 2.0 MultiChain Enterprise zdaj popolna – glejte Prenesite in namestite stran za popolno primerjavo med izdajama Community in Enterprise. V naslednjih nekaj mesecih bomo dokončali njegovo testiranje in optimizacijo in pričakujemo, da bo pripravljen za proizvodnjo ob koncu prvega četrtletja. Medtem za informacije o licenciranju ali cenah za MultiChain Enterprise ne oklevajte priti v stik.

Prosimo, pošljite kakršne koli pripombe na LinkedIn.

Vir: https://www.multichain.com/blog/2020/02/multichain-feeds-for-database-integration/

Časovni žig:

Več od Večnamenska veriga