

 Amazon Redshift ne prendra plus en charge la création de nouveaux Python à UDFs partir du patch 198. UDFs Le Python existant continuera de fonctionner jusqu'au 30 juin 2026. Pour plus d’informations, consultez le [ billet de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Migration à partir d’un cluster provisionné vers Amazon Redshift sans serveur
<a name="serverless-migration"></a>

Vous pouvez migrer vos clusters alloués existants vers Amazon Redshift sans serveur, ce qui permet une mise à l’échelle automatique et à la demande des ressources de calcul. La migration d’un cluster alloué vers Amazon Redshift sans serveur vous permet d’optimiser les coûts en ne payant que pour les ressources que vous utilisez et en mettant automatiquement à l’échelle la capacité en fonction des demandes de charge de travail. Les cas d’utilisation courants de la migration incluent l’exécution de requêtes ad hoc, de tâches de traitement de données périodiques ou la gestion de charges de travail imprévisibles sans surallouer les ressources. Effectuez les tâches suivantes pour migrer votre cluster Amazon Redshift alloué vers l’option de déploiement sans serveur.

## Création d’un instantané de votre cluster alloué
<a name="serverless-migration-snapshots"></a>

**Note**  
Amazon Redshift convertit automatiquement les clés entrelacées en clés composées lorsque vous restaurez un instantané de cluster provisionné dans un espace de noms sans serveur.

 Pour transférer des données de votre cluster provisionné vers Amazon Redshift sans serveur, créez un instantané de votre cluster provisionné, puis restaurez l’instantané dans Amazon Redshift sans serveur. 

**Note**  
Avant de migrer vos données vers un groupe de travail sans serveur, vérifiez que les besoins de votre cluster provisionné sont compatibles avec la quantité de RPU que vous choisissez dans Amazon Redshift Serverless.

Pour créer un instantané de votre cluster provisionné

1. Connectez-vous à la console Amazon Redshift AWS Management Console et ouvrez-la à l'adresse. [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/)

1. Dans le menu de navigation, choisissez **Clusters**, **Snapshots** (Instantanés), puis choisissez l’onglet **Create snapshot** (Créer un instantané).

1. Entrez les propriétés de la définition de l’instantané, puis choisissez **Create snapshot (Créer un instantané)**. L’instantané n’est pas toujours disponible immédiatement. 

Pour restaurer un instantané de cluster provisionné dans un espace de noms sans serveur :

1. Connectez-vous à la console Amazon Redshift AWS Management Console et ouvrez-la à l'adresse. [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/)

1. Démarrez la console de cluster provisionné Amazon Redshift et accédez à **Clusters**, sur la page **Snapshots** (Instantanés).

1. Choisissez un instantané à utiliser.

1. Choisissez **Restore snapshot** (Restaurer un instantané), **Restore to serverless namespace** (Restaurer vers un espace de noms sans serveur).

1. Choisissez un espace de noms dans lequel restaurer votre instantané.

1. Confirmez que vous souhaitez effectuer une restauration à partir de votre instantané. Cette action remplace toutes les bases de données de votre point de terminaison sans serveur par les données de votre cluster alloué. Choisissez **Restore** (Restaurer).

Pour plus d’informations sur les instantanés de cluster provisionnés, consultez [Instantanées Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-snapshots.html).

## Connexion à Amazon Redshift sans serveur à l’aide d’un pilote
<a name="serverless-migration-drivers"></a>

 Pour vous connecter à Amazon Redshift sans serveur avec votre client SQL préféré, vous pouvez utiliser le [pilote JDBC version 2.x](https://docs.aws.amazon.com/redshift/latest/mgmt/jdbc20-install.html) fourni par Amazon Redshift. Nous vous recommandons de vous connecter à Amazon Redshift à l’aide de la dernière version du pilote JDBC Amazon Redshift version 2.x. Le numéro de port est facultatif. Si vous ne l’incluez pas, Amazon Redshift sans serveur utilise par défaut le numéro de port 5439. Vous pouvez passer à un autre port dans la plage de ports 5431-5455 ou 8191-8215. Pour modifier le port par défaut d'un point de terminaison sans serveur, utilisez l'API AWS CLI et Amazon Redshift. 

 Pour connaître le point de terminaison exact à utiliser pour le pilote JDBC, ODBC ou Python, consultez **Configuration du groupe de travail** dans Amazon Redshift sans serveur. Vous pouvez également utiliser l'opération d'API Amazon Redshift Serverless `GetWorkgroup` ou l' AWS CLI opération `get-workgroups` pour renvoyer des informations sur votre groupe de travail, puis vous connecter. 

### Connexion à l’aide d’une authentification par mot de passe
<a name="serverless-migration-drivers-password-auth"></a>

Pour établir une connexion à l’aide du pilote JDBC Amazon Redshift version 2.x avec authentification par mot de passe, utilisez la syntaxe suivante :

```
jdbc:redshift://<{{workgroup-name}}>.<{{account-number}}>.<{{aws-region}}>.redshift-serverless.amazonaws.com:5439/?username={{username}}&password={{password}}
```

Pour établir une connexion à l’aide du connecteur Amazon Redshift Python avec authentification par mot de passe, utilisez la syntaxe suivante :

```
import redshift_connector
with redshift_connector.connect(
    host='<{{workgroup-name}}>.<{{account-number}}>.<{{aws-region}}>.redshift-serverless.amazonaws.com',
    database='<{{database-name}}>',
    user='{{username}}',
    password='{{password}}'
    # port value of 5439 is specified by default
) as conn:
    pass
```

Pour établir une connexion à l’aide du pilote ODBC Amazon Redshift version 2.x avec authentification par mot de passe, utilisez la syntaxe suivante :

```
Driver={Amazon Redshift ODBC Driver (x64)}; Server=<{{workgroup-name}}>.<{{account-number}}>.<{{aws-region}}>.redshift-serverless.amazonaws.com; Database={{database-name}}; User={{username}}; Password={{password}}
```

### Connexion à l’aide d’IAM
<a name="serverless-migration-drivers-iam"></a>

 Si vous préférez vous connecter avec IAM, utilisez l’opération d’API Amazon Redshift sans serveur [https://docs.aws.amazon.com//redshift-serverless/latest/APIReference/API_GetCredentials.html](https://docs.aws.amazon.com//redshift-serverless/latest/APIReference/API_GetCredentials.html). 

Pour utiliser l’authentification IAM, ajoutez `iam:` à l’URL Amazon Redshift JDBC après `jdbc:redshift:`, comme indiqué dans l’exemple suivant.

```
jdbc:redshift:iam://<{{workgroup-name}}>.<{{account-number}}>.<{{aws-region}}>.redshift-serverless.amazonaws.com:5439/<{{database-name}}>
```

Ce point de terminaison Amazon Redshift sans serveur ne prend pas en charge la personnalisation de dbUser, dbGroup ou la création automatique. Par défaut, le pilote crée automatiquement des utilisateurs de base de données lors de la connexion. Il affecte ensuite les utilisateurs aux rôles de base de données Amazon Redshift en fonction des balises spécifiées dans IAM ou des groupes définis dans votre fournisseur d’identité (IdP).

Assurez-vous que votre AWS identité possède la politique IAM appropriée pour l'`redshift-serverless:GetCredentials`action. Voici un exemple de politique IAM qui accorde les autorisations appropriées à une AWS identité pour se connecter à Amazon Redshift Serverless. Pour plus d’informations sur les autorisations IAM, consultez la rubrique [Ajout et suppression d’autorisations basées sur l’identité IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) dans le *Guide de l’utilisateur IAM*.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Action": "redshift-serverless:GetCredentials",
            "Resource": "*"
        }
    ]
}
```

------

Pour établir une connexion à l’aide du connecteur Amazon Redshift Python avec une authentification basée sur IAM, utilisez `iam=true` dans votre code, comme indiqué dans la syntaxe suivante :

```
import redshift_connector
with redshift_connector.connect(
    iam=True,
    host='<{{workgroup-name}}>.<{{account-number}}>.<{{aws-region}}>.redshift-serverless.amazonaws.com',
    database='<{{database-name}}>'
    <{{IAM credentials}}>
) as conn:
    pass
```

Pour `IAM credentials`, vous pouvez utiliser toutes les informations d’identification, y compris les suivantes : 
+  AWS configuration du profil. 
+  Informations d’identification IAM (ID de clé d’accès, clé d’accès secrète et éventuellement jeton de session). 
+  Fédération du fournisseur d’identité 

Pour établir une connexion à l’aide du pilote ODBC Amazon Redshift version 2.x avec une authentification basée sur IAM et un profil, utilisez la syntaxe suivante :

```
Driver={Amazon Redshift ODBC Driver (x64)}; IAM=true; Server=<{{workgroup-name}}>.<{{account-number}}>.<{{aws-region}}>.redshift-serverless.amazonaws.com; Database={{database-name}}; Profile={{aws-profile-name}};
```

### Connexion via IAM avec l'API GetClusterCredentials
<a name="serverless-migration-drivers-iam-dbuser-group"></a>

**Note**  
Lorsque vous vous connectez à Amazon Redshift sans serveur, nous vous recommandons d’utiliser l’API [https://docs.aws.amazon.com//redshift-serverless/latest/APIReference/API_GetCredentials.html](https://docs.aws.amazon.com//redshift-serverless/latest/APIReference/API_GetCredentials.html). Cette API offre une fonctionnalité complète de contrôle d’accès basé sur les rôles (RBAC) ainsi que d’autres nouvelles fonctionnalités qui ne sont pas disponibles dans `GetClusterCredentials`. Nous prenons en charge l’API `GetClusterCredentials` afin de simplifier la transition entre les clusters alloués et les groupes de travail sans serveur, mais nous vous recommandons vivement de migrer vers `GetCredentials` dès que possible pour une compatibilité optimale.

Vous pouvez établir une connexion à Amazon Redshift sans serveur à l’aide de l’API [https://docs.aws.amazon.com//redshift/latest/APIReference/API_GetClusterCredentials.html](https://docs.aws.amazon.com//redshift/latest/APIReference/API_GetClusterCredentials.html). Pour implémenter cette méthode d’authentification, modifiez votre client ou votre application en incorporant les paramètres suivants :
+  `iam=true` 
+  `clusterid/cluster_identifier=redshift-serverless-<{{workgroup-name}}>` 
+  `region=<{{aws-region}}>` 

Les exemples suivants illustrent le plug-in BrowserSAML sur les trois pilotes. Cela représente l’une des nombreuses approches d’authentification disponibles. Les exemples peuvent être modifiés pour utiliser des méthodes d’authentification ou des plug-ins alternatifs en fonction de vos besoins spécifiques.

#### Autorisations de politique IAM pour GetClusterCredentials
<a name="serverless-migration-drivers-iam-dbuser-group-iam"></a>

Voici un exemple de politique IAM avec les autorisations requises pour utiliser `GetClusterCredentials` avec Amazon Redshift sans serveur : 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "redshift-serverless:GetWorkgroup",
                "redshift-serverless:GetNamespace",
                "redshift:GetClusterCredentials",
                "redshift:CreateClusterUser",
                "redshift:JoinGroup",
                "redshift:ExecuteQuery",
                "redshift:FetchResults",
                "redshift:DescribeClusters",
                "redshift:DescribeTable"
            ],
            "Resource": [
                "arn:aws:redshift-serverless:us-east-1:{{111122223333}}:workgroup/{{workgroup-name}}",
                "arn:aws:redshift-serverless:us-east-1:{{111122223333}}:namespace/{{namespace-name}}",
                "arn:aws:redshift:us-east-1:{{111122223333}}:cluster:{{cluster-name}}",
                "arn:aws:redshift:us-east-1:{{111122223333}}:dbuser:{{database-name}}/${redshift:DbUser}"
            ]
        }
    ]
}
```

------

Pour établir une connexion à l’aide du pilote JDBC Amazon Redshift version 2.x avec `GetClusterCredentials`, utilisez la syntaxe suivante :

```
jdbc:redshift:iam://redshift-serverless-<{{workgroup-name}}>:<{{aws-region}}>/<{{database-name}}>?plugin_name=com.amazon.redshift.plugin.BrowserSamlCredentialsProvider&login_url=<{{single sign-on URL from IdP}}>"
```

Pour établir une connexion à l’aide du connecteur Amazon Redshift Python avec `GetClusterCredentials`, utilisez la syntaxe suivante :

```
import redshift_connector
with redshift_connector.connect(
    iam=True,
    cluster_identifier='redshift-serverless-<{{workgroup-name}}>',
    region='<{{aws-region}}>',
    database='<{{database-name}}>',
    credentials_provider='BrowserSamlCredentialsProvider'
    login_url='<{{single sign-on URL from IdP}}>'
    # port value of 5439 is specified by default
) as conn:
    pass
```

Pour établir une connexion à l’aide du pilote ODBC Amazon Redshift version 2.x avec `GetClusterCredentials`, utilisez la syntaxe suivante :

```
Driver= {Amazon Redshift ODBC Driver (x64)}; IAM=true; isServerless=true; ClusterId=redshift-serverless-<{{workgroup-name}}>; region=<{{aws-region}}>; plugin_name=BrowserSAML;login_url=<{{single sign-on URL from IdP}}>
```

Voici un exemple de configuration DSN ODBC sous Windows :

![L’onglet Connexion du pilote ODBC Amazon Redshift pour Windows. Les champs correspondant à l’exemple de syntaxe ci-dessus sont remplis.](http://docs.aws.amazon.com/fr_fr/redshift/latest/mgmt/images/GetClusterCredentials-odbc-windows.png)


## Utilisation du kit SDK Amazon Redshift sans serveur
<a name="serverless-migration-sdk"></a>

Si vous avez écrit des scripts de gestion à l’aide du kit SDK Amazon Redshift, vous devez utiliser le nouveau kit SDK Amazon Redshift sans serveur pour gérer Amazon Redshift sans serveur et les ressources associées. Pour plus d’informations sur les opérations d’API disponibles, consultez le [guide de référence de l’API de données Amazon Redshift sans serveur](https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/Welcome.html).