La migliore chiave shard per l'autenticazione dell'utente

-1

Per accedere al mio API, l'utente deve inviare login e password e ottenere il token generato per l'accesso.

Account
 login
 password

Supponiamo che la dimensione della tabella dell'account sia molto grande. Così grande - quindi ha bisogno di sharding. Di solito preferisco il sharding per intervalli (che esclude il re-sharding) quando lo faccio per le tabelle con la chiave primaria ID (e la stessa chiave shard). Ma in questo caso la chiave di sharding dovrebbe essere una stringa ( login ).

Quali sono le ultime best practice che usi per questa attività? Hashing coerente (da Guava, ad esempio) e resharding solo (K / n) chiavi nel caso di modifica della struttura dei nodi? Possono esserci alcune pratiche senza re-sharding? Qualcos'altro?

    
posta Ivan 01.06.2015 - 12:30
fonte

2 risposte

0

Se si deve andare con re-sharding, un modo per farlo è usare un'altra tabella di database per memorizzare l'account reale e il mapping host / tabella. La tabella di mappatura contiene solo i campi chiave per la ricerca su quali sono ottimizzati per le prestazioni (id, nome, email) e il resto dei dati dell'account si trova nella tabella a cui punta la tabella di mapping. Questo offre la tecnica di ri-sharding più flessibile.

    
risposta data 11.06.2015 - 00:30
fonte
0

Solo quanti utenti ti aspetti di avere?

Ho lavorato con sistemi che hanno centinaia di migliaia di utenti e non ho mai sentito il bisogno di sharding (solo indicizzazione corretta).

E, naturalmente, in realtà non stai memorizzando la password , sei ...

    
risposta data 11.06.2015 - 14:09
fonte

Leggi altre domande sui tag