Ho svolto un bel po 'di ricerche sull'argomento fino ad ora, ma non sono riuscito a trovare una conclusione da prendere in considerazione.
Sto progettando un social network e durante la mia ricerca mi sono imbattuto in database di grafici, ho trovato neo4j piuttosto interessante per le relazioni con gli utenti e il passaggio attraverso i nodi. Ho anche pensato di utilizzare un database relazionale come MS-SQL o MySQL per archiviare solo i dati delle entità e in base a neo4j per le connessioni tra entità. Ovviamente questo significa più lavoro nella mia applicazione per archiviare e tirare dati dentro e fuori da 2 fonti diverse.
La mia prima domanda: utilizzo questo approccio (grafico + relazionale) un buon approccio per progettare il mio social network tenendo presente che gli utenti sui social network non devono necessariamente sincronizzarsi con i dati reali di secondo in secondo piano? Quali sono i lati positivi e negativi di questo approccio?
La mia seconda domanda: ho letto alcune letture su CQRS e, come ho capito, è utile soprattutto per ambienti collaborativi e ambienti in cui gli utenti vedono molti dati "obsoleti". i social network hanno condiviso commenti, eventi, ecc. e molti utenti interrogano o aggiornano gli stessi dati. Potrebbe CQRS essere un approccio utile? Fornirebbe vantaggi in termini di prestazioni / scalabilità o complessità non utile? E 'abbastanza applicabile con la mia possibile scelta di approccio di database (grafico + relazionale) menzionato nella domanda sopra?
Il mio scopo è sapere se gli approcci che ho menzionato sopra sembrano abbastanza buoni per il contesto aziendale.