Per iniziare, tutte le strutture di dati possono essere proiettate in modo più o meno doloroso in qualsiasi motore di archiviazione sottostante (o persino nel file system e nei file di testo). Il motivo per scegliere un determinato modello di dati e di storage back-end sono IMHO:
- vostro sviluppo e modellazione preferenze
- le prestazioni di runtime previsto per l'inserimento, l'archiviazione e l'interrogazione del modello.
Come accennato prima, sia RDBMS e triplestore tendono ad essere utile in fase di esecuzione in "superficiale" l'attraversamento di aderire o attraversamenti SPARQL, e da fare molto lavoro in cache o preparati vista ecc database del grafico (in modo univoco Neo4j) mettere il la struttura del grafico in realtà scende al livello di archiviazione e fa puntare il puntatore (con un numero di ottimizzazioni) sul livello del record del nodo. Pertanto, quando si attraversa il grafico, non è necessario toccare più del sottografo corrente fino al livello di archiviazione, in modo da poter attraversare parti dei dati senza toccare l'intero grafico, ottenendo prestazioni costanti per una serie di scenari interessanti .
fonte
2013-09-02 21:31:44