Come il DB grafico memorizza i dati?

7

Recentemente letto un paio di esercitazioni di Graph DB. La maggior parte di essi indica cos'è il DB grafico / quando usare / recuperare la sintassi ma non dove trova la descrizione di alto livello come GraphDB memorizza internamente i dati per capirlo meglio.

Venendo da sfondo java, penso che GraphDB debba memorizzare i dati allo stesso modo come Java rappresenta il grafico Object. Ad esempio, il dipartimento contiene l'elenco degli impiegati. Ogni dipartimento ha il suo indirizzo.

Department {

List<Employees> employees;
Address address;
}

Quando cerco di pensarlo in termini di DB grafico, Department sarà un nodo che contiene l'elenco della posizione di memoria dei suoi dipendenti.

Vantaggi: -

Coerenza: - Ogni volta che c'è un aggiornamento nel nodo dipendente, non ha bisogno di alcun aggiornamento nel nodo del dipartimento poiché contiene solo la posizione di memoria del dipendente.

Prestazioni trasversali: il recupero dei dipendenti per il reparto è facile in quanto contiene riferimenti dei dipendenti. Quindi, non è necessario utilizzare join e indici.

È così che il DB grafico memorizza i dati ad alto livello o possiamo concettualizzare il suo modello di archiviazione per comprenderlo meglio?

    
posta user3198603 05.03.2017 - 03:33
fonte

2 risposte

1

La risposta dipende dall'archivio grafico che stai utilizzando.

Virtuoso spiega il suo approccio ibrido in un whitepaper

Altri venditori utilizzano per esempio una rappresentazione di tartaruga su disco e rappresentazioni di memoria proprietarie (leggi, non sappiamo come lo fanno).

Se sei davvero interessato, vedi l' implementazione del TDB di Apache Jena e il suo codice sorgente . p>     

risposta data 05.03.2017 - 22:43
fonte
0

Un database che utilizza strutture di grafici per query semantiche con nodi, spigoli e proprietà per rappresentare e archiviare dati è noto come GRAPH DATABASE . Un concetto chiave del sistema è il grafico (o il bordo o la relazione), che collega direttamente gli elementi di dati nel negozio. Le relazioni consentono ai dati del negozio di essere collegati direttamente e in molti casi recuperati con una sola operazione.

Ciò contrasta con i database relazionali convenzionali, in cui i collegamenti tra i dati sono memorizzati nei dati e le query cercano questi dati all'interno dello store e utilizzano il concetto di join per raccogliere i dati correlati. I database grafici, in base alla progettazione, consentono il recupero semplice e veloce di strutture gerarchiche complesse difficili da modellare nei sistemi relazionali.

È scritto sopra JVM e possiede Compact storage e Memory caching per i grafici, con conseguente scalabilità e miliardi di nodi efficienti in un database su hardware moderato.

Puoi visitare questo link per ottenere una vista più chiara: link

    
risposta data 05.03.2017 - 12:29
fonte

Leggi altre domande sui tag