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.
Tutoriel : Configuration d'un PyCharm environnement professionnel avec un terminal de développement
Ce didacticiel explique comment connecter l'IDE Python PyCharm professionnel
Pour vous connecter à un point de développement de manière interactive, PyCharm Professional doit être installé sur votre ordinateur. Vous ne pouvez pas le faire avec la version gratuite.
Note
Le didacticiel utilise Amazon S3 comme source de données. Si vous souhaitez utiliser une source de données JDBC à la place, vous devez exécuter votre point de terminaison de développement dans un cloud privé virtuel (VPC). Pour vous connecter avec SSH à un point de terminaison de développement dans un VPC, vous devez créer un tunnel SSH. Ce didacticiel ne contient pas d'instructions pour la création d'un tunnel SSH. Pour plus d'informations sur l'utilisation de SSH pour se connecter à un point de terminaison de développement dans un VPC, consultez la section Connexion sécurisée aux instances Linux exécutées dans un Amazon VPC privé
Rubriques
Connecter un PyCharm professionnel à un terminal de développement
-
Créez un nouveau projet en Python pur dans named. PyCharm
legislators
-
Créez un fichier nommé
get_person_schema.py
dans le projet avec le contenu suivant :from pyspark.context import SparkContext from awsglue.context import GlueContext def main(): # Create a Glue context glueContext = GlueContext(SparkContext.getOrCreate()) # Create a DynamicFrame using the 'persons_json' table persons_DyF = glueContext.create_dynamic_frame.from_catalog(database="legislators", table_name="persons_json") # Print out information about this data print("Count: ", persons_DyF.count()) persons_DyF.printSchema() if __name__ == "__main__": main()
-
Effectuez l’une des actions suivantes :
-
Dans AWS Glue version 0.9, téléchargez le AWS Glue Fichier de bibliothèque Python
PyGlue.zip
, depuishttps://s3.amazonaws.com/aws-glue-jes-prod-us-east-1-assets/etl/python/PyGlue.zip
un emplacement pratique sur votre machine locale. -
Dans AWS Glue version 1.0 et versions ultérieures, téléchargez le AWS Glue Fichier de bibliothèque Python
PyGlue.zip
, depuishttps://s3.amazonaws.com/aws-glue-jes-prod-us-east-1-assets/etl-1.0/python/PyGlue.zip
un emplacement pratique sur votre machine locale.
-
-
Ajoutez
PyGlue.zip
en tant que racine de contenu pour votre projet dans PyCharm :-
Dans PyCharm, choisissez Fichier, Paramètres pour ouvrir la boîte de dialogue Paramètres. (Vous pouvez également appuyer sur
Ctrl+Alt+S
.) -
Développez le projet
legislators
et choisissez Project Structure (Structure du projet). Ensuite, dans le panneau droit, sélectionnez + Add Content Root (+ Ajouter le contenu racine). -
Accédez à l'emplacement où vous avez enregistré
PyGlue.zip
, sélectionnez-le, puis choisissez Apply (Appliquer).
L'écran Settings (Paramètres) doit ressembler à ceci :
Laissez la boîte de dialogue Settings (Paramètres) ouverte après avoir choisi Apply (Appliquer).
-
-
Configurez les options de déploiement pour télécharger le script local sur votre terminal de développement à l'aide du protocole SFTP (cette fonctionnalité n'est disponible que dans PyCharm Professional) :
-
Dans la boîte de dialogue Settings (Paramètres), développez la section Build, Execution, Deployment (Création, exécution, déploiement). Choisissez la sous-section Deployment (Déploiement).
-
Sélectionnez l'icône + en haut du panneau central pour ajouter un nouveau serveur. Définissez Type sur
SFTP
et donnez-lui un nom. -
Définissez SFTP host (Hôte SFTP) sur l'adresse publique de votre point de terminaison de développement, comme indiqué sur sa page de détails. (Choisissez le nom de votre point de terminaison de développement dans le AWS Glue console pour afficher la page de détails). Pour un point de terminaison de développement s'exécutant dans un VPC, définissez SFTP host (Hôte SFTP) sur l'adresse hôte et le port local de votre tunnel SSH sur le point de terminaison de développement.
-
Définissez le champ User name (Nom d'utilisateur) sur
glue
. -
Définissez le champ Auth type (Type d'autorisation) sur Key pair (OpenSSH or Putty) (Paire de clés (OpenSSH ou Putty)). Définissez le champ Private key file (Fichier de clé privée) en accédant à l'emplacement du fichier de clé privée de votre point de terminaison de développement. Notez que PyCharm seuls les types de clés DSA, RSA et ECDSA OpenSSH sont pris en charge et que les clés au format privé de Putty ne sont pas acceptées. Vous pouvez utiliser une up-to-date version de
ssh-keygen
pour générer un type de paire de clés qui PyCharm accepte, en utilisant une syntaxe similaire à la suivante :ssh-keygen -t rsa -f
<key_file_name>
-C "<your_email_address>
" -
Choisissez Test connection (Tester la connexion) et autorisez le test de la connexion. Si la connexion est établie, choisissez Apply (Appliquer).
L'écran Settings (Paramètres) doit désormais ressembler à ceci :
Laissez à nouveau la boîte de dialogue Settings (Paramètres) ouverte après avoir choisi Apply (Appliquer).
-
-
Mappez le répertoire local à un répertoire distant pour le déploiement :
-
Dans le panneau de droite de la page Deployment (Déploiement), sélectionnez l'onglet central en haut, intitulé Mappings (Mappages).
-
Dans la colonne Deployment Path (Chemin d'accès du déploiement), saisissez un chemin sous
/home/glue/scripts/
pour le déploiement du chemin de votre projet. olpPar exemple :/home/glue/scripts/legislators
. -
Choisissez Appliquer.
L'écran Settings (Paramètres) doit désormais ressembler à ceci :
Choisissez OK pour fermer la boîte de dialogue Settings (Paramètres).
-
Déploiement du script sur votre point de terminaison de développement
-
Choisissez Tools (Outils), Deployment (Déploiement), puis choisissez le nom sous lequel vous configurez votre point de terminaison de développement, comme illustré dans l'image suivante :
Une fois que votre script a été déployé, le bas de l'écran doit ressembler à ce qui suit :
-
Dans la barre de menus, choisissez Tools (Outils), Deployment (Déploiement), Automatic Upload (always) [Téléchargement automatique (toujours)]. Assurez-vous qu'une coche s'affiche en regard de Automatic Upload (always) [Téléchargement automatique (toujours)].
Lorsque cette option est activée, les fichiers modifiés PyCharm sont automatiquement téléchargés sur le terminal de développement.
Configuration d'un interpréteur distant
Configurez PyCharm pour utiliser l'interpréteur Python sur le point de terminaison de développement.
-
Dans le menu File (Fichier), choisissez Settings (Paramètres).
-
Développez les législateurs du projet et choisissez Project Interpreter (Interpréteur de projet).
-
Choisissez l'icône représentant un engrenage en regard de la liste Project Interpreter (Interpréteur de projet), puis choisissez Add (Ajouter).
-
Dans la boîte de dialogue Add Python Interpreter (Ajouter un interpréteur Python) dans le panneau gauche, sélectionnez SSH Interpreter (Interpréteur SSH).
-
Choisissez Existing server configuration (Configuration du serveur existant), et, dans la liste Deployment configuration (Configuration du déploiement), choisissez votre configuration.
Votre écran doit ressembler à l’image suivante.
-
Choisissez Move this server to IDE settings (Déplacer ce serveur dans les paramètres IDE, puis choisissez Next (Suivant).
-
Dans le champ Interpreter (Interpréteur) modifiez le chemin d'accès en
/usr/bin/gluepython
si vous utilisez Python 2, ou en/usr/bin/gluepython3
si vous utilisez Python 3. Choisissez ensuite Finish (Terminer).
Exécution de votre script sur le point de terminaison de développement
Pour exécuter le script :
-
Dans le volet de gauche, cliquez avec le bouton droit sur le nom du fichier et choisissez Exécuter
<filename>
« ».Après une série de messages, la sortie finale doit afficher le nombre et le schéma.
Count: 1961 root |-- family_name: string |-- name: string |-- links: array | |-- element: struct | | |-- note: string | | |-- url: string |-- gender: string |-- image: string |-- identifiers: array | |-- element: struct | | |-- scheme: string | | |-- identifier: string |-- other_names: array | |-- element: struct | | |-- lang: string | | |-- note: string | | |-- name: string |-- sort_name: string |-- images: array | |-- element: struct | | |-- url: string |-- given_name: string |-- birth_date: string |-- id: string |-- contact_details: array | |-- element: struct | | |-- type: string | | |-- value: string |-- death_date: string Process finished with exit code 0
Vous êtes maintenant en mesure de déboguer votre script à distance sur votre point de terminaison de développement.