Modul în care bazele de date grafice duc rețelele la date

Autor: Roger Morrison
Data Creației: 20 Septembrie 2021
Data Actualizării: 17 Iunie 2024
Anonim
Modul în care bazele de date grafice duc rețelele la date - Tehnologie
Modul în care bazele de date grafice duc rețelele la date - Tehnologie

Conţinut


Sursa: Nongpimmy / Dreamstime.com

La pachet:

Bazele de date grafice folosesc concepte de rețea pentru a prelucra datele mult mai rapid și mai eficient decât bazele de date tradiționale.

Aplicațiile bazate pe date moderne depind în mare măsură de perspective relevante derivate din volumele enorme de date pe care le gestionează zilnic. Pentru a obține o perspectivă mai bună de fiecare dată, aplicațiile trebuie să poată face interogări complexe, iar baza de date ar trebui să poată aborda interogări complexe. Sistemele tradiționale RDBMS care se bazează pe SQL nu pot gestiona interogări extrem de complexe. Bazele de date grafice au reușit să rezolve această problemă deoarece se bazează pe obiecte și pe relațiile dintre obiecte. Pe baza acestei premise, este posibil să extragem perspective profunde. Utilizarea bazelor de date grafice este totuși limitată, deși există semne clare că aceasta va juca un rol important, întrucât întreprinderile se bazează tot mai mult pe perspective pentru a-și dezvolta afacerile. (Pentru mai multe despre bazele de date în general, consultați Introducere în baze de date.)


Ce este o bază de date grafică?

Pentru a înțelege bazele de date grafice, să folosim exemplul de mai jos:

Bill și familia lui vor să planifice o vacanță într-un loc care oferă o bucătărie asiatică excelentă. A început să planifice din timp și una dintre căile de a găsi informații este, desigur, Google. În timp ce informațiile de la Google sunt credibile și bune, pentru Bill, este important să obțineți informații cât mai specifice. Așa că, începe să-și întrebe prietenii, cunoscuții și colegii. Să presupunem că Bill îi cere lui Ryan, Sheena și John, care sunt contactele sale principale (nivel de contact 1). Toți trei promit să răspundă cu informații cât mai curând posibil. Ryan îl întreabă pe prietenul său Greg, care îl întreabă pe vărul său Martin care a fost de câteva ori la Bangkok. Martin recomandă numele și detaliile tuturor restaurantelor sale favorite din Bangkok, cunoscute pentru mâncărurile lor asiatice. Aceste informații sunt transmise înapoi la Bill.


Tocmai ați văzut un exemplu din viața reală a unei interogări complexe bazate pe obiecte și relații. Baza de date grafică funcționează pe același principiu. Este vorba despre rețea, obiectele și relațiile lor din rețea.

Practic, o bază de date de graf este capabilă de grafice extrem de complexe și oferă informații pe care sistemele RDBMS bazate pe interogare SQL nu le pot. Și acesta este punctul unic de vânzare despre bazele de date grafice.

Cum funcționează o bază de date grafică?

Descrierea de mai sus a unei baze de date grafice oferă o idee despre principiile pe care o bază de date grafice le aplică atunci când caută informații sau informații. Practic, parcurge rețeaua de obiecte și relații bazate pe interogare și returnează rezultatele.

Dacă luăm exemplul de mai sus de Bill, atunci cum ar merge o bază de date grafică despre treaba ei? Evident, există o mulțime de relații și noduri în exemplu. Dacă vedem distanța relațiilor, ar arăta astfel:

Bill = 0 (originea)

Fără bug-uri, fără stres - Ghidul dvs. pas cu pas pentru crearea de programe care schimbă viața fără a vă distruge viața

Nu îți poți îmbunătăți abilitățile de programare atunci când nimeni nu îi pasă de calitatea software-ului.

Ryan = 1

Sheena = 1

Ioan = 1

Greg = 2

Martin = 3

Distanța dintre origine (zero) și nodul care furnizează informațiile ar putea fi chiar mai departe în viața reală - așa funcționează rețeaua.

Imaginează-ți o aplicație folosind o interogare pe baza cerinței lui Bill. Ar fi ceva de genul:

Găsiți toți prietenii care sunt conectați cu cinci prieteni cărora le place mâncarea asiatică, care au vizitat Thailanda și care locuiesc la maxim 5 km de Dallas.

Există o mulțime de baze de date grafice disponibile pe piață, iar Neo4j este cea mai populară dintre ele. Neo4j poate atribui popularitatea sa faptelor că este atât eficient cât și open source. Așadar, atunci când faceți o întrebare la Neo4j pentru a rezolva problema Bill, interogarea ar putea arăta ca:

// selectați prietenii și prietenii prietenilor, cuvântul cheie din mâncare asiatică, cuvântul cheie din Bangkok, ordonați în funcție de profunzimea relației

String findFriendsQuery = "start n = nod (*), persoană = nod ({userNode}) MATCH p = (persoană) - (prieten) returnează o comandă distinctă p după lungime (p)";

Pe baza interogării, Neo4j va căuta prin rețeaua sa disponibilă și va găsi cele mai apropiate potriviri.

Diferența dintre bazele de date grafice și bazele de date relaționale

Punctul principal în jurul căruia sunt comparate bazele de date relaționale și bazele de date grafice este viteza tranzacțiilor, adică cât de rapid poate să proceseze o interogare complexă pe un set de date mari.

Emil Eifrem, CEO-ul Neo Technology, compania din spatele Neo4j, a măsurat performanța bazelor de date relaționale și grafice pe mai mulți parametri. Întrebarea a fost: la 1.000 de utilizatori cu fiecare utilizator având 50 de prieteni sau mai mult, aflați dacă un utilizator este conectat la altul în 4 sau mai puține hamei. Rezultatele sunt prezentate mai jos:

  • O populară bază de date relațională open-source a luat 200 ms pentru a procesa interogarea în timp ce o bază de date grafică a durat 2 ms.
  • Când aceeași interogare a fost executată pe o bază de utilizatori de 1.000.000 de utilizatori, baza de date grafic a durat 2 ms, în timp ce baza de date relațională a trebuit să fie abandonată după câteva zile de procesare fără sfârșit.

Motivul principal pentru care baza de date relațională a durat un timp atât de îndelungat pentru a prelucra interogările a fost că a căutat datele pentru fiecare termen furnizat în interogare. Nu e de mirare că a durat o perioadă atât de lungă! Pe o bază de date mai mare, ar dura și mai mult. Baza de date grafic, pe de altă parte, ar analiza doar înregistrările care sunt direct conectate la înregistrările din baza de date. Dacă baza de date a graficului este permisă unui anumit număr de hamei, atunci se va respecta exact acest lucru. Acesta a fost motivul pentru care o bază de date grafică a putut să proceseze interogări complexe pe seturi de date uriașe relativ ușor și să obțină rezultate mai rapide. (Pentru a afla mai multe despre lucrul cu bazele de date, consultați Cariere de administrare a bazelor de date 101.)

Baza de date grafică Studii de caz

Au existat multe aplicații de succes ale bazelor de date grafice în diferite industrii. Marile companii au condus în construirea produselor de clasă mondială cu principiile bazei de date grafice. Inițial, s-a crezut că, întrucât este vorba despre noduri și relații, anumite industrii precum media socială ar putea beneficia de acest lucru. Cu toate acestea, alte sectoare precum dating online, portaluri de fabricație și joburi online au beneficiat și de aceasta. Mai jos sunt câteva exemple:

  • a reușit să utilizeze cu succes o bază de date grafică în construirea produsului său de clasă mondială. Astăzi, puteți căuta informații parcurgând rețeaua de prieteni și prieteni, etc.
  • LinkedIn a lucrat la mult prea mediatizat Graficul Economic. Graficul economic intenționează să ofere oportunități adecvate tuturor utilizatorilor săi prin conectarea utilizatorilor cu companiile și profilurile lor până la un anumit nivel.
  • Sistemul de recomandări, care este un instrument foarte important pentru mulți comercianți cu amănuntul online, a utilizat principii ale bazei de date grafice pentru a oferi recomandări eficiente și relevante consumatorilor potențiali. Motoarele de recomandare caută practic rețeaua de clienți care au efectuat achiziții similare într-o perioadă de timp și presupun că clientul care navighează pe produse similare va avea aceleași gusturi și preferințe.

rezumat

Pentru tot potențialul bazelor de date grafice, o mulțime de companii continuă să acopere trendul. Deci, va trece ceva timp înainte ca bazele de date grafice să fie acceptate pe scară largă. Deși potențialul bazei de date grafice în rezolvarea problemelor complexe nu mai este în dubiu, poziția bazei de date relaționale nu este amenințată în niciun fel. Cel mai bun lucru pentru baza de date grafic este faptul că poate fi oferit ca o tehnologie open-source. Industriilor le revine avantajele.