/ / Cassandra eviterà di calcolare la riga MD5 se il valore è già un MD5? - cassandra, cql3, md5sum, cassandra-3.0

Cassandra eviterà di calcolare la riga MD5 se il valore è già un MD5? - cassandra, cql3, md5sum, cassandra-3.0

Da vari documenti su Cassandra, si dice chiaramente che converte le chiavi di riga in un MD5 prima di salvarle nel database.

Se le mie chiavi di riga sono già somme MD5, c'è un modo per far sapere a Cassandra e quindi evitare di far calcolare l'MD5 di quell'MD5?

Post scriptum La tabella di cui sto parlando contiene dei file e le chiavi sono le somme MD5 dei file.

risposte:

1 per risposta № 1

Ciò che Cassandra fa veramente è l'hashchiave di partizione basata su ciò che definisce il partizionatore. Il partizionatore originale era MD5, ma le versioni moderne di Cassandra erano impostate su Murmur3 (non QUITE murmur3, ma fondamentalmente murmur3).

In entrambi i casi, sì, Cassandra blocca la chiave di partizione, perché non c'è modo di far sapere a Cassandra che è già un MD5.

Se tu veramente vuoi evitare l'hashing, puoi guardare altri partizionatori alternativi (come ad esempio byte ordinato o conservazione degli ordini ), o scrivi il tuo che implementa IPartitioner . Si noti, tuttavia, che se si utilizza un partizionatore diverso, questo viene utilizzato per tutte le tabelle / spazi chiavi nel cluster.