

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Resharding online per MemoryDB
<a name="cluster-resharding-online"></a>

Utilizzando il resharding online e con MemoryDB, puoi scalare MemoryDB in modo dinamico senza tempi di inattività. Questo approccio indica che il cluster può continuare a servire le richieste anche durante il dimensionamento o il ribilanciamento.

È possibile effettuare le seguenti operazioni:
+ **Scalabilità** orizzontale: aumenta la capacità di lettura e scrittura aggiungendo shard al cluster MemoryDB.

  Se aggiungi uno o più shard al cluster, il numero di nodi in ogni nuovo shard è uguale al numero di nodi nel più piccolo degli shard esistenti.
+ **Scalabilità**: riduci la capacità di lettura e scrittura, e quindi i costi, rimuovendo gli shard dal cluster MemoryDB.

Attualmente, le seguenti limitazioni si applicano al resharding online di MemoryDB:
+ Gli slot, gli spazi chiave e gli elementi grandi prevedono delle limitazioni:

  Se una delle chiavi di uno shard contiene un elemento di grandi dimensioni, tale chiave non viene migrata su un nuovo shard durante la scalabilità orizzontale. Questa caratteristicapuò produrre partizioni non bilanciati.

  Se alcune chiavi in una partizione contengono un elemento grande (di dimensioni superiori a 256 MB dopo la serializzazione), quella partizione non viene eliminato se le dimensioni diminuiscono. Con questa caratteristicaalcunle partizioni potrebbero non essere eliminati.
+ Durante la scalabilità orizzontale, il numero di nodi in ogni nuovo shard è uguale al numero di nodi negli shard esistenti.

Per ulteriori informazioni, consulta [Best practice. Dimensionamento di cluster online](best-practices-online-resharding.md).

È possibile ridimensionare orizzontalmente i cluster di MemoryDB utilizzando, the e l'API MemoryDB. Console di gestione AWS AWS CLI

## Aggiunta dele partizioni con il resharding online
<a name="cluster-resharding-online-add"></a>

È possibile aggiungere shard al cluster MemoryDB utilizzando l'API, o MemoryDB. Console di gestione AWS AWS CLI

### Aggiunta dle partizioni (Console)
<a name="cluster-resharding-online-add-console"></a>

È possibile utilizzare il Console di gestione AWS per aggiungere uno o più shard al cluster MemoryDB. Questo processo viene descritto di seguito.

****

1. Accedi Console di gestione AWS e apri la console MemoryDB all'indirizzo. [https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/)

1. Dall'elenco dei cluster, scegli il nome del cluster da cui desideri aggiungere uno shard.

1. **Nella scheda **Shards and nodes, scegli Aggiungi/Elimina shard****

1. In **Nuovo numero di frammenti**, inserisci il numero di frammenti che desideri. 

1. Scegliete **Conferma** per mantenere le modifiche o **Annulla per ignorarle**.

### Aggiunta dle partizioni (AWS CLI)
<a name="cluster-resharding-online-add-cli"></a>

Il processo seguente descrive come riconfigurare gli shard nel cluster MemoryDB aggiungendo shard utilizzando. AWS CLI

Utilizzare i seguenti parametri con `update-cluster`.

**Parameters**
+ `--cluster-name`: obbligatorio Speciifica su quale cluster (cluster) deve essere eseguita l'operazione di riconfigurazione degli shard.
+ `--shard-configuration`: obbligatorio Consente di impostare il numero di shard. 
  + `ShardCount`— Impostate questa proprietà per specificare il numero di frammenti desiderati. 

**Example**  
L'esempio seguente modifica il numero di shard nel cluster `my-cluster` portandolo a 2.   
Per Linux, macOS o Unix:  

```
aws memorydb update-cluster \
    --cluster-name my-cluster \
    --shard-configuration \
        ShardCount=2
```
Per Windows:  

```
aws memorydb update-cluster ^
    --cluster-name my-cluster ^
    --shard-configuration ^
        ShardCount=2
```

Restituisce la seguente risposta JSON:

```
{
    "Cluster": {
        "Name": "my-cluster",
        "Status": "updating",
        "NumberOfShards": 2,
        "AvailabilityMode": "MultiAZ",
        "ClusterEndpoint": {
            "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
            "Port": 6379
        },
        "NodeType": "db.r6g.large",
        "EngineVersion": "6.2",
        "EnginePatchVersion": "6.2.6",
        "ParameterGroupName": "default.memorydb-redis6",
        "ParameterGroupStatus": "in-sync",
        "SubnetGroupName": "my-sg",
        "TLSEnabled": true,
        "ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster",
        "SnapshotRetentionLimit": 0,
        "MaintenanceWindow": "wed:03:00-wed:04:00",
        "SnapshotWindow": "04:30-05:30",
        "DataTiering": "false",
        "AutoMinorVersionUpgrade": true
    }
}
```

Per visualizzare i dettagli del cluster aggiornato una volta che il suo stato passa da *aggiornamento* a *disponibile*, utilizza il comando seguente:

Per Linux, macOS o Unix:

```
aws memorydb describe-clusters \
    --cluster-name my-cluster
    --show-shard-details
```

Per Windows:

```
aws memorydb describe-clusters ^
    --cluster-name my-cluster
    --show-shard-details
```

Restituirà la seguente risposta JSON:

```
{
    "Clusters": [
        {
            "Name": "my-cluster",
            "Status": "available",
            "NumberOfShards": 2,
            "Shards": [
                {
                    "Name": "0001",
                    "Status": "available",
                    "Slots": "0-8191",
                    "Nodes": [
                        {
                            "Name": "my-cluster-0001-001",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1a",
                            "CreateTime": "2021-08-21T20:22:12.405000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        },
                        {
                            "Name": "my-cluster-0001-002",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1b",
                            "CreateTime": "2021-08-21T20:22:12.405000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        }
                    ],
                    "NumberOfNodes": 2
                },
                {
                    "Name": "0002",
                    "Status": "available",
                    "Slots": "8192-16383",
                    "Nodes": [
                        {
                            "Name": "my-cluster-0002-001",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1b",
                            "CreateTime": "2021-08-22T14:26:18.693000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        },
                        {
                            "Name": "my-cluster-0002-002",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1a",
                            "CreateTime": "2021-08-22T14:26:18.765000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        }
                    ],
                    "NumberOfNodes": 2
                }
            ],
            "ClusterEndpoint": {
                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                "Port": 6379
            },
            "NodeType": "db.r6g.large",
            "EngineVersion": "6.2",
            "EnginePatchVersion": "6.2.6",
            "ParameterGroupName": "default.memorydb-redis6",
            "ParameterGroupStatus": "in-sync",
            "SubnetGroupName": "my-sg",
            "TLSEnabled": true,
            "ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster",
            "SnapshotRetentionLimit": 0,
            "MaintenanceWindow": "wed:03:00-wed:04:00",
            "SnapshotWindow": "04:30-05:30",
            "ACLName": "my-acl",
            "DataTiering": "false",
            "AutoMinorVersionUpgrade": true
        }
    ]
}
```

Per ulteriori informazioni, vedere [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/memorydb/update-cluster.html) nel Command Reference. AWS CLI 

### Aggiungere frammenti (API MemoryDB)
<a name="cluster-resharding-online-add-api"></a>

È possibile utilizzare l'API MemoryDB per riconfigurare gli shard nel cluster MemoryDB online utilizzando l'operazione. `UpdateCluster`

Utilizzare i seguenti parametri con `UpdateCluster`.

**Parameters**
+ `ClusterName`: obbligatorio Speciifica su quale cluster deve essere eseguita l'operazione di riconfigurazione degli shard.
+ `ShardConfiguration`: obbligatorio Consente di impostare il numero di shard. 
  + `ShardCount`— Impostate questa proprietà per specificare il numero di frammenti desiderati. 

Per ulteriori informazioni, consulta [UpdateCluster](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_UpdateCluster.html).

## Rimozione dele partizioni con il resharding online
<a name="cluster-resharding-online-remove"></a>

È possibile rimuovere gli shard dal cluster MemoryDB utilizzando l'API Console di gestione AWS AWS CLI, o MemoryDB.

### Rimozione dle partizioni (Console)
<a name="cluster-resharding-online-remove-console"></a>

Il processo seguente descrive come riconfigurare gli shard nel cluster MemoryDB rimuovendo gli shard utilizzando. Console di gestione AWS

**Importante**  
Prima di rimuovere gli shard dal cluster, MemoryDB si assicura che tutti i dati entrino negli shard rimanenti. Se i dati sono adatti, gli shard vengono eliminati dal cluster come richiesto. Se i dati non rientrano negli shard rimanenti, il processo viene terminato e al cluster viene lasciata la stessa configurazione degli shard di prima della richiesta.

È possibile utilizzare il Console di gestione AWS per rimuovere uno o più shard dal cluster MemoryDB. Non è possibile rimuovere tutti gli shard in un cluster. È invece necessario eliminare il cluster. Per ulteriori informazioni, consulta [Passaggio 5: Eliminazione di un cluster](getting-started.md#clusters.delete). La procedura seguente descrive il processo di rimozione di uno o più shard.

****

1. Accedi Console di gestione AWS e apri la console MemoryDB all'indirizzo. [https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/)

1. Dall'elenco dei cluster, scegli il nome del cluster da cui desideri rimuovere uno shard.

1. **Nella scheda **Shards and nodes, scegli Aggiungi/Elimina shard****

1. In **Nuovo numero di frammenti**, inserisci il numero di frammenti che desideri (con un minimo di 1). 

1. Scegliete **Conferma** per mantenere le modifiche o **Annulla per ignorarle**.

### Rimozione dele partizioni (AWS CLI)
<a name="cluster-resharding-online-remove-cli"></a>

Il processo seguente descrive come riconfigurare gli shard nel cluster MemoryDB rimuovendo gli shard utilizzando. AWS CLI

**Importante**  
Prima di rimuovere gli shard dal cluster, MemoryDB si assicura che tutti i dati entrino negli shard rimanenti. Se i dati sono adatti, gli shard vengono eliminati dal cluster come richiesto e i relativi keyspace mappati negli shard rimanenti. Se i dati non rientrano negli shard rimanenti, il processo viene terminato e al cluster viene lasciata la stessa configurazione degli shard di prima della richiesta.

È possibile utilizzare il AWS CLI per rimuovere uno o più shard dal cluster MemoryDB. Non è possibile rimuovere tutti gli shard in un cluster. È invece necessario eliminare il cluster. Per ulteriori informazioni, consulta [Passaggio 5: Eliminazione di un cluster](getting-started.md#clusters.delete).

Utilizzare i seguenti parametri con `update-cluster`.

**Parameters**
+ `--cluster-name`: obbligatorio Speciifica su quale cluster (cluster) deve essere eseguita l'operazione di riconfigurazione dello shard.
+ `--shard-configuration`: obbligatorio Consente di impostare il numero di shard utilizzando la proprietà: `ShardCount` 

  `ShardCount`— Imposta questa proprietà per specificare il numero di frammenti che desideri. 

**Example**  
L'esempio seguente modifica il numero di shard nel cluster `my-cluster` portandolo a 2.   
Per Linux, macOS o Unix:  

```
aws memorydb update-cluster \
    --cluster-name my-cluster \
    --shard-configuration \
        ShardCount=2
```
Per Windows:  

```
aws memorydb update-cluster ^
    --cluster-name my-cluster ^
    --shard-configuration ^
        ShardCount=2
```

Restituisce la seguente risposta JSON:

```
{
    "Cluster": {
        "Name": "my-cluster",
        "Status": "updating",
        "NumberOfShards": 2,
        "AvailabilityMode": "MultiAZ",
        "ClusterEndpoint": {
            "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
            "Port": 6379
        },
        "NodeType": "db.r6g.large",
        "EngineVersion": "6.2",
        "EnginePatchVersion": "6.2.6",
        "ParameterGroupName": "default.memorydb-redis6",
        "ParameterGroupStatus": "in-sync",
        "SubnetGroupName": "my-sg",
        "TLSEnabled": true,
        "ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster",
        "SnapshotRetentionLimit": 0,
        "MaintenanceWindow": "wed:03:00-wed:04:00",
        "SnapshotWindow": "04:30-05:30",
        "DataTiering": "false",
        "AutoMinorVersionUpgrade": true
    }
}
```

Per visualizzare i dettagli del cluster aggiornato una volta che il suo stato passa da *aggiornamento* a *disponibile*, utilizza il comando seguente:

Per Linux, macOS o Unix:

```
aws memorydb describe-clusters \
    --cluster-name my-cluster
    --show-shard-details
```

Per Windows:

```
aws memorydb describe-clusters ^
    --cluster-name my-cluster
    --show-shard-details
```

Restituirà la seguente risposta JSON:

```
{
    "Clusters": [
        {
            "Name": "my-cluster",
            "Status": "available",
            "NumberOfShards": 2,
            "Shards": [
                {
                    "Name": "0001",
                    "Status": "available",
                    "Slots": "0-8191",
                    "Nodes": [
                        {
                            "Name": "my-cluster-0001-001",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1a",
                            "CreateTime": "2021-08-21T20:22:12.405000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        },
                        {
                            "Name": "my-cluster-0001-002",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1b",
                            "CreateTime": "2021-08-21T20:22:12.405000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        }
                    ],
                    "NumberOfNodes": 2
                },
                {
                    "Name": "0002",
                    "Status": "available",
                    "Slots": "8192-16383",
                    "Nodes": [
                        {
                            "Name": "my-cluster-0002-001",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1b",
                            "CreateTime": "2021-08-22T14:26:18.693000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        },
                        {
                            "Name": "my-cluster-0002-002",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1a",
                            "CreateTime": "2021-08-22T14:26:18.765000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        }
                    ],
                    "NumberOfNodes": 2
                }
            ],
            "ClusterEndpoint": {
                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                "Port": 6379
            },
            "NodeType": "db.r6g.large",
            "EngineVersion": "6.2",
            "EnginePatchVersion": "6.2.6",
            "ParameterGroupName": "default.memorydb-redis6",
            "ParameterGroupStatus": "in-sync",
            "SubnetGroupName": "my-sg",
            "TLSEnabled": true,
            "ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster",
            "SnapshotRetentionLimit": 0,
            "MaintenanceWindow": "wed:03:00-wed:04:00",
            "SnapshotWindow": "04:30-05:30",
            "ACLName": "my-acl",
            "DataTiering": "false",
            "AutoMinorVersionUpgrade": true
        }
    ]
}
```

Per ulteriori informazioni, vedere [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/memorydb/update-cluster.html) nel Command Reference. AWS CLI 

### Rimozione degli shard (API MemoryDB)
<a name="cluster-resharding-online-remove-api"></a>

È possibile utilizzare l'API MemoryDB per riconfigurare gli shard nel cluster MemoryDB online utilizzando l'operazione. `UpdateCluster`

Il processo seguente descrive come riconfigurare gli shard nel cluster MemoryDB rimuovendo gli shard utilizzando l'API MemoryDB.

**Importante**  
Prima di rimuovere gli shard dal cluster, MemoryDB si assicura che tutti i dati rientrino negli shard rimanenti. Se i dati sono adatti, gli shard vengono eliminati dal cluster come richiesto e i relativi keyspace mappati negli shard rimanenti. Se i dati non rientrano negli shard rimanenti, il processo viene terminato e al cluster viene lasciata la stessa configurazione degli shard di prima della richiesta.

È possibile utilizzare l'API MemoryDB per rimuovere uno o più shard dal cluster MemoryDB. Non è possibile rimuovere tutti gli shard in un cluster. È invece necessario eliminare il cluster. Per ulteriori informazioni, consulta [Passaggio 5: Eliminazione di un cluster](getting-started.md#clusters.delete).

Utilizzare i seguenti parametri con `UpdateCluster`.

**Parameters**
+ `ClusterName`: obbligatorio Speciifica su quale cluster (cluster) deve essere eseguita l'operazione di riconfigurazione dello shard.
+ `ShardConfiguration`: obbligatorio Consente di impostare il numero di shard utilizzando la proprietà: `ShardCount` 

  `ShardCount`— Imposta questa proprietà per specificare il numero di frammenti che desideri. 