Sono nuovo a cassandra
e lo sto utilizzando per attività di analisi (è necessaria una buona indicizzazione).Cassandra - Clausola WHERE con svantaggi chiave non primaria
Ho letto in questo post (e altri): cassandra, select via a non primary key che non posso interrogare il mio DB con una chiave non primaria colonne con WHERE clause
.
Per fare ciò, sembra che non v'è 3 possibilità (tutte con grandi svantaggi):
- creare un indice secondario (non raccomandato per problemi di prestazioni).
- Creare una nuova tabella (non voglio dati ridondanti anche se è ok con cassandra).
- Inserire la colonna che si desidera interrogare all'interno della chiave primaria e in questo caso è necessario definire tutte le parti della chiave primaria nella mia clausola WHERE e non è possibile utilizzare altri operatori oltre a
IN
o=
.
C'è un altro modo per quello che sto cercando di fare (WHERE clause
con la colonna chiave non primaria) senza avere i 3 vincoli sopra?
Cassandra non è davvero adatto per il caso d'uso che stai descrivendo. Sembra che tu abbia bisogno di flessibilità di query e semplicemente non lo capirai da Cassandra. La linea di fondo, è che la raccomandazione di creare tabelle di query (con dati ridondanti) *** è una soluzione scalabile ***; mentre cercare di usare Cassandra come un database relazionale non lo è. – Aaron
Salve @Aaron oups, il problema è che per la flessibilità delle query 'mongodb' è raccomandato più di' cassandra' ma per le prestazioni 'read/write' (che è molto importante nel mio caso) e quest'ultimo è molto brutto in questo punto. – farhawa
E l'unico modo in cui vedrete mai quella prestazione è di adottare un approccio di modellazione basato su query utilizzando dati ridondanti. Cassandra si comporta in modo piuttosto terribile quando si tenta di utilizzare un modello relazionale o metodi simili per ottenere la flessibilità delle query. – Aaron