Attualmente sto progettando un'applicazione web concettuale, in cui gli utenti possono inviare post, commenti e "mi piace" / "non mi piace" entrambi. Tuttavia, non sono sicuro di come memorizzare i (dis) mi piace, a causa di quanti potrebbero esserci e quante query verrebbero eseguite nella tabella corrispondente. (Ad esempio, ottenendo (dis) i Mi piace per post, ottenendo quali post / commenti l'utente ha gradito, calcolando quali post sono di tendenza in base al numero di Mi piace che hanno ricevuto di recente.)
Nel concetto, l'app Web è abbastanza popolare. Paragoniamolo a Facebook e diciamo che è 1 / 1000th popolare come Facebook. Nel 2012, Facebook ha gestito 2,7 miliardi di like al giorno (probabilmente più ora, ma andremo con le statistiche del 2012). Ciò significa che l'app web concettuale gestirà 2,7 milioni di like al giorno, ovvero quasi 30 miliardi all'anno. 30 miliardi di inserimenti all'anno e molte altre query sul tavolo.
Ho due scelte principali quando si tratta di un sistema di database; SQL o NoSQL. Ho già scelto MySQL per le altre parti dell'app Web. Per quanto ne so, i database NoSQL come Cassandra sono più veloci con gli inserti, ma ci sarebbe una notevole differenza di prestazioni?