J'ai vérifié le package Python pré-installé dans Google Cloud Dataflow

Google Cloud Dataflow n'attire pas beaucoup d'attention, mais c'est assez pratique car vous pouvez facilement basculer l'environnement d'exécution entre local et distant. De plus, si vous pensez que vous ne pouvez utiliser que la bibliothèque standard, vous pouvez l'installer depuis Pip list ou [Original installation](http: // qiita. com / orfeon / items / 78ff952052c4bde4bcd3) est également possible. Ensuite, j'ai cherché dans Document pour savoir quelle bibliothèque était préinstallée, donc je ne l'ai pas trouvée.

Préparation

Tout d'abord, les options de réglage, cette zone est le pakuri rond de @ orfeon ...

Paramètres des options


import apache_beam as beam
import apache_beam.transforms.window as window

options = beam.utils.pipeline_options.PipelineOptions()

google_cloud_options = options.view_as(beam.utils.pipeline_options.GoogleCloudOptions)
google_cloud_options.project = '{PROJECTID}'
google_cloud_options.job_name = 'test'
google_cloud_options.staging_location = 'gs://{BUCKET_NAME}/binaries'
google_cloud_options.temp_location = 'gs://{BUCKET_NAME}/temp'

worker_options = options.view_as(beam.utils.pipeline_options.WorkerOptions)
worker_options.max_num_workers = 1

# options.view_as(beam.utils.pipeline_options.StandardOptions).runner = 'DirectRunner'
options.view_as(beam.utils.pipeline_options.StandardOptions).runner = 'DataflowRunner'

p = beam.Pipeline(options=options)

Exécutez pip freeze pour enregistrer la liste des packages Python.

Partie sortie de la liste des packages


def inspect_df(dat):
    import subprocess
    import logging
    process = subprocess.Popen('pip freeze', shell=True,
                               stdout=subprocess.PIPE, 
                               stderr=subprocess.PIPE)
    for line in process.stdout:
        logging.info(line)

Exécutez sur Dataflow. Vous n'avez peut-être pas besoin de bonjour le monde ...

Exécution du pipeline


(p | 'init' >> beam.Create(['hello', 'world'])
   | 'inspect' >> beam.Map(inspect_df))

p.run()

Une fois l'exécution du pipeline terminée, la liste des packages sera sortie dans le journal, vérifiez-la avec Cloud Console.

Vérification du journal

Dans Dataflow Document, vous pouvez consulter le journal à partir de l'écran Détails de la tâche de Dataflow, mais à partir du 4 mars 2017, Stackdriver -> Passer à la journalisation.

Logs_Viewer_-_Test_fx_lab.png Le journal est sorti comme ceci.

Liste des paquets

C'est une liste de paquets crachés dans le journal ci-dessus. ** Au 4 mars 2017 **

Package Version
avro 1.8.1
beautifulsoup4 4.5.1
bs4 0.0.1
crcmod 1.7
Cython 0.25.2
dataflow-worker 0.5.5
dill 0.2.5
enum34 1.1.6
funcsigs 1.0.2
futures 3.0.5
google-api-python-client 1.6.2
google-apitools 0.5.7
google-cloud-dataflow 0.5.5
google-python-cloud-debugger 1.9
googledatastore 6.4.1
grpcio 1.1.0
guppy 0.1.10
httplib2 0.9.2
mock 2.0.0
nltk 3.2.1
nose 1.3.7
numpy 1.12.0
oauth2client 2.2.0
pandas 0.18.1
pbr 1.10.0
Pillow 3.4.1
proto-google-datastore-v1 1.3.1
protobuf 3.0.0
protorpc 0.11.1
pyasn1 0.2.2
pyasn1-modules 0.0.8
python-dateutil 2.6.0
python-gflags 3.0.6
python-snappy 0.5
pytz 2016.10
PyYAML 3.11
requests 2.10.0
rsa 3.4.2
scikit-learn 0.17.1
scipy 0.17.1
six 1.10.0
tensorflow 1.0.0
tensorflow-transform 0.1.4
uritemplate 3.0.0

Est-ce parce que «tf.transform» est arrivé? Dans Cloud ML, ~~ TensorFlow ver est 0.12 ~~ ** (EDIT: La dernière version est [ici](https://cloud.google.com/ml-engine/docs/concepts/runtime-version-" Vous pouvez le vérifier avec la liste)) ** C'est 1.0.0 dans Dataflow. scikit-learn semble un peu vieux.

Bien que la mise en scène soit un peu lente, Dataflow, qui vous permet de basculer facilement entre local et distant à partir du Jupyter Notebook et d'être entièrement géré du lancement au lancement d'une instance sans autorisation, semble être un outil puissant pour des applications telles que l'analyse de données et l'apprentissage automatique. est.

Recommended Posts

J'ai vérifié le package Python pré-installé dans Google Cloud Dataflow
J'ai écrit la file d'attente en Python
J'ai écrit la pile en Python
Implémenté dans Dataflow pour copier la structure hiérarchique de Google Drive vers Google Cloud Storage
J'ai essayé de simuler "Birthday Paradox" avec Python
J'ai essayé la méthode des moindres carrés en Python
J'ai essayé d'utiliser l'API Google Cloud Vision
Installez le package python dans un environnement hors ligne
J'ai essayé d'implémenter la fonction gamma inverse en python
J'ai vérifié le calendrier supprimé dans le calendrier de l'Avent Qiita 2016
Je veux afficher la progression en Python!
J'ai essayé de représenter graphiquement les packages installés en Python
J'ai vérifié les versions de Blender et Python
Je veux écrire en Python! (3) Utiliser des simulacres
Je veux utiliser le jeu de données R avec python
Je ne peux pas utiliser la commande darknet dans Google Colaboratory!
J'ai vérifié la vitesse de référence lors de l'utilisation de la liste python, du dictionnaire et du type de jeu.
J'ai écrit python en japonais
Gestion des packages Python avec IntelliJ
Trouver des erreurs en Python
J'ai essayé de programmer le test du chi carré en Python et Java.
Qu'est-ce que Google Cloud Dataflow?
J'ai essayé d'implémenter la fonction d'envoi de courrier en Python
J'ai essayé l'API Google Cloud Vision pour la première fois
Je comprends Python en japonais!
Ce que j'ai appris en Python
Google recherche la chaîne sur la dernière ligne du fichier en Python
J'ai téléchargé la source python
J'ai essayé de résumer le contenu de chaque paquet enregistré par Python pip en une seule ligne
J'ai comparé le temps de calcul de la moyenne mobile écrite en Python
J'ai essayé d'exécuter le référentiel de packages Python (entrepôt) qui prend en charge PyPI
J'ai essayé le mouvement Python3 qui change la direction dans le système de coordonnées
J'ai eu un AttributeError en me moquant de la méthode ouverte en python
J'ai écrit le code pour écrire le code Brainf * ck en python
Visualisez la fréquence des occurrences de mots dans les phrases avec Word Cloud. [Python]
Essayez d'utiliser FireBase Cloud Firestore avec Python pour le moment
[Package cloud] Gérez les packages python avec le package cloud
Obtenir l'API arXiv en Python
Je me suis perdu dans le labyrinthe
Python dans le navigateur: la recommandation de Brython
Enregistrez le fichier binaire en Python
Frappez l'API Sesami en Python
[Python] Accédez à l'API Google Translation
Obtenez le chemin du bureau en Python
J'ai vérifié la construction de l'environnement Mac Python
GPyOpt, un package d'optimisation bayésienne en Python
J'ai participé au tour de qualification ISUCON10!
Téléchargez des fichiers Google Drive en Python
Obtenez le chemin du script en Python
Dans la commande python, python pointe vers python3.8
Implémenter le modèle Singleton en Python
Exécutez XGBoost avec Cloud Dataflow (Python)
J'ai écrit Fizz Buzz en Python
Accédez à l'API Web en Python
J'ai aimé le tweet avec python. ..
J'ai essayé d'étudier le processus avec Python
Scikit-learn ne peut pas être installé en Python