Casa Finanza personale Gestione delle chiavi in ​​NoSQL - dummies

Gestione delle chiavi in ​​NoSQL - dummies

Sommario:

Video: Cosa c'è dietro lo sviluppo di un'app: UI/UX, Linguaggi lato Server e Database 2024

Video: Cosa c'è dietro lo sviluppo di un'app: UI/UX, Linguaggi lato Server e Database 2024
Anonim

Le capacità di lettura veloce dei negozi di valori-chiave derivano dal loro uso di chiavi ben definite. Queste chiavi sono tipicamente hash, il che fornisce all'archivio dei valori-chiave un modo molto prevedibile per determinare su quale partizione (e quindi sul server) risiedono i dati. Un server particolare gestisce una o più partizioni.

Una buona chiave consente di identificare in modo univoco il singolo record che risponde a una query senza dover guardare i valori all'interno di quel record. Una chiave errata richiede che il codice dell'applicazione interpreti il ​​record per determinare se, di fatto, corrisponde alla query.

Se non si progetta bene la chiave, si può finire con un server con un carico sproporzionato rispetto agli altri, che porta a prestazioni scadenti. Ad esempio, l'utilizzo del tempo di sistema corrente come chiave, spinge tutti i nuovi dati sull'ultimo nodo nel cluster, il che porta a uno scenario da incubo di ribilanciamento.

Partizionamento

La progettazione delle partizioni è importante perché alcuni negozi di valori-chiave, come Oracle NoSQL, non consentono il numero di partizioni da modificare una volta creato un cluster. La loro distribuzione tra i server, tuttavia, può essere modificata. Quindi inizia con un numero elevato di partizioni che puoi distribuire in futuro.

Un esempio di partizionamento è l'approccio di hashing coerente di Voldemort, come mostrato. Qui si vedono le stesse partizioni distribuite su tre server inizialmente e successivamente su quattro server in un secondo momento. Il numero di partizioni rimane lo stesso, ma la loro allocazione è diversa tra i server. Lo stesso è vero per le loro repliche.

Accesso ai dati sulle partizioni

Gli archivi a valori-chiave sono altamente distribuiti senza un singolo punto di errore. Ciò significa che non è necessario che un nodo di coordinamento principale tenga traccia dei server all'interno di un cluster. La gestione dei cluster viene eseguita automaticamente da un protocollo di chat tra i nodi nel server.

È possibile utilizzare un trucco nel driver client per spremere le massime prestazioni dal recupero e dall'archiviazione di chiavi e valori - il driver client tiene traccia di quali server detengono quale intervallo di chiavi. Quindi il driver client sa sempre a quale server comunicare.

La maggior parte dei database, incluso NoSQL, passa una richiesta a tutti i membri di un cluster. Quel cluster accetta la scrittura internamente o la passa al nodo corretto. Questa configurazione significa che è possibile un ulteriore viaggio di rete tra i nodi, che può aumentare la latenza.

Al fine di evitare la latenza di individuazione, la maggior parte dei driver client degli archivi di valori-chiave gestisce un elenco di metadati dei nodi correnti in un cluster e gli intervalli di chiavi di partizione gestiti da ciascun nodo.In questo modo, il driver client può contattare il server corretto, il che rende le operazioni più veloci.

Se un nuovo nodo viene aggiunto a un cluster e i metadati non sono aggiornati, il cluster informa il driver client, che quindi scarica gli ultimi metadati del cluster prima di inviare nuovamente la richiesta al nodo corretto. In questo modo il throughput massimo viene mantenuto con un minimo di overhead durante lo sviluppo. Un altro vantaggio collaterale è che non è necessario che un servizio di bilanciamento del carico trasmetta le query al successivo server disponibile o meno occupato: solo un server (o server di lettura in lettura) riceve una richiesta client, quindi non è necessario il bilanciamento del carico.

Gestione delle chiavi in ​​NoSQL - dummies

Scelta dell'editore

Sintassi JavaScript selezionata - dummies

Sintassi JavaScript selezionata - dummies

JavaScript è un linguaggio importante per la programmazione, lo sviluppo di giochi e le applicazioni desktop. Di seguito sono riportati gli elementi di sintassi JavaScript più comunemente utilizzati, inclusi i comandi per manipolare le variabili, controllare il flusso del programma e gestire le funzioni. Avviso funzione Descrizione ("messaggio"); Crea una finestra di dialogo a comparsa contenente un messaggio. var myVar = 0; Crea una variabile con un valore iniziale dato. Type is ...

I nuovi CSS3 Border Techniques - dummies

I nuovi CSS3 Border Techniques - dummies

Hanno fatto parte del CSS fin dall'inizio, ma i CSS3 aggiungono nuove opzioni davvero entusiasmanti. I browser moderni ora supportano i bordi creati da un'immagine così come gli angoli arrotondati e le ombre dei riquadri. Queste tecniche promettono di aggiungere nuove straordinarie funzionalità ai tuoi progetti. Confini dell'immagine CSS3 consente di utilizzare un'immagine ...

Scelta dell'editore

Utilizzando il componente aggiuntivo Analisi dati Excel con tabelle - dummies

Utilizzando il componente aggiuntivo Analisi dati Excel con tabelle - dummies

Il componente aggiuntivo Analisi dati (noto nelle precedenti versioni di Excel come Analysis ToolPak o ATP) ti aiuta a fare analisi statistiche di ogni genere - e la previsione delle vendite è sicuramente una sorta di analisi statistica. Un componente aggiuntivo contiene codice Visual Basic: un programma, spesso scritto in una versione di BASIC, che Excel può eseguire. È ...

Utilizzando riferimenti di celle esterne in Excel - dummies

Utilizzando riferimenti di celle esterne in Excel - dummies

Potresti scoprire di avere dati in una cartella di lavoro di Excel che desideri fare riferimento in una formula all'interno di un'altra cartella di lavoro. In tale situazione, è possibile creare un collegamento tra le cartelle di lavoro utilizzando un riferimento di cella esterna. Un riferimento di cella esterna non è altro che un riferimento di cella che risiede in un esterno ...

Utilizzando Excel per calcolare una media basata su criteri - dummy

Utilizzando Excel per calcolare una media basata su criteri - dummy

È Possibile utilizzare Excel per calcolare una media . Immaginalo: devi calcolare una media da un elenco di numeri, usando solo i numeri nell'elenco che corrispondono a una condizione. In altre parole, calcola la media utilizzando i numeri se corrispondono a un determinato criterio. Excel è pieno di sorprese e, per questo trucco, tu ...

Scelta dell'editore

Come utilizzare le funzioni per trovare valori in Excel - dummies

Come utilizzare le funzioni per trovare valori in Excel - dummies

Excel fornisce funzioni per trovare il più grande o i valori più piccoli in un set di dati Excel. Queste funzioni includono MAX, MAXA, MIN, MINA, LARGE e SMALL. MAX: valore massimo La funzione MAX trova il valore più grande nei dati. La funzione ignora le celle vuote e le celle contenenti testo o valori logici come TRUE e FALSE ...

Come utilizzare le macro per creare cartelle di lavoro Excel - dummies

Come utilizzare le macro per creare cartelle di lavoro Excel - dummies

A volte potresti volere o dover creare un Excel cartella di lavoro in modo automatico. Ad esempio, potrebbe essere necessario copiare i dati da una tabella e incollarli in una cartella di lavoro appena creata. La seguente macro copia un intervallo di celle dal foglio attivo e incolla i dati in una nuova cartella di lavoro. In che modo ...

Come utilizzare l'obiettivo Ricerca in Excel 2016 - manichini

Come utilizzare l'obiettivo Ricerca in Excel 2016 - manichini

A volte quando si fa l'analisi what-if in Excel 2016 , hai in mente un risultato particolare, ad esempio un importo di vendita o una percentuale di crescita target. Quando è necessario eseguire questo tipo di analisi, si utilizza la funzione Goal Seek di Excel per trovare i valori di input necessari per raggiungere l'obiettivo desiderato. Per utilizzare la ricerca obiettivo ...