La risposta breve è, sì, ovviamente influirà sulle prestazioni, poiché la lunghezza della chiave avrà un impatto diretto sul tempo necessario per percorrere l'albero.
Influisce anche sull'archiviazione, poiché i tasti più lunghi richiedono più spazio, lo spazio richiede tempo.
Tuttavia, la sfumatura che ti manca è che mentre Couch CAN (e lo fa) ha assegnato nuovi ID per te, non è necessario. Sarà più che felice accettare i tuoi ID anziché generarli. Quindi, se la lunghezza della chiave ti infastidisce, sei libero di usare le chiavi più corte.
Tuttavia, data la natura "json" del divano, è praticamente un database basato su "testo". Non c'è un sacco di dati binari memorizzati in un'istanza di Couch normale (gli allegati non resistono, ma anche quelli che penso siano memorizzati in BASE64, potrei sbagliarmi).
Quindi, sì, un 64 bit sarebbe il più efficiente, il semplice fatto è che Couch è progettato per funzionare per qualsiasi chiave, e "qualsiasi chiave" è più facilmente espressa nel testo.
Infine, a dire il vero, il costo del confronto delle chiavi è sminuito dai tempi di recupero I/O del disco e dal marshalling dei dati JSON (soprattutto sulle scritture). Qualsiasi guadagno reale ottenuto con la conversione in un tale sistema probabilmente non avrebbe alcun impatto sul "mondo reale" sulle prestazioni complessive.
Se si desidera veramente accelerare il sistema di chiavi Couch, codificare la routine chiave per bloccare la chiave in byte a 64 bit, e riprenderli (come hai detto tu). 8 byte di testo sono gli stessi di "long int" a 64 bit. Ciò ti darebbe, in teoria, un aumento delle prestazioni di 8 volte su confronti chiave. Se erlang può creare tale codice, non posso dire.
Grazie per le risposte. Adoro l'eleganza che gli id più lunghi consentono. E ora le mie preoccupazioni per le prestazioni sono diminuite. –