La combinaison de Python et de BigQuery convient parfaitement à l'analyse des données.
Python ne convient pas pour gérer des données trop volumineuses, mais si vous laissez BigQuery faire uniquement cette partie et découpez les données en petits morceaux, vous pouvez faire ce que vous voulez avec Python.
La question est de savoir comment Python et BigQuery fonctionnent ensemble, mais il existe deux façons principales de le faire.
2 est particulièrement recommandé pour ceux qui sont habitués à utiliser Jupyter Notebook.
Il existe plusieurs bibliothèques pour accéder à BigQuery à partir de Python. Par exemple, BigQuery-Python, bigquery_py.
Cependant, en fait __ le plus simple et le plus recommandé __ est le seul module de Pandas.io pandas.io.gbq .gbq.read_gbq.html). Il fonctionne bien avec les objets DataFrame et est très facile à authentifier, c'est donc génial que vous puissiez l'utiliser sans vous soucier des choses difficiles.
pandas.io.Tout ce dont vous avez besoin pour utiliser gbq est l'ID de projet BigQuery.
La notation est la suivante.
Dans cet exemple, le résultat de `` `` SELECT * FROM nomtable``` est stocké dans` `` data_frame```, puis il peut être utilisé comme un objet DF normal.
```python
import pandas as pd
query = 'SELECT * FROM tablename'
#requêtes et projets basés sur str_identifiant requis
data_frame = pd.read_gbq(query, 'project-id')
Lorsqu'il est exécuté, il renvoie des statistiques simples du processus de requête. (Si vous souhaitez masquer les statistiques, spécifiez verbose = False comme argument)
Exemple d'exécution
L'exécution de pd.read_gbq ouvrira l'écran d'authentification du compte Google dans votre navigateur. Si vous vous connectez avec un compte pouvant accéder au projet, l'authentification liée sera terminée et le processus démarrera.
À ce stade, le format json `` fichier d'informations d'identification '' est craché dans le dossier de travail. Tant que vous avez ce fichier, vous pouvez lancer la requête plusieurs fois sans ré-authentification. Inversement, si ce fichier est remis, BigQuery sera utilisé sans autorisation et vous mourrez, alors faites attention à la gestion du fichier. http://qiita.com/itkr/items/745d54c781badc148bb9
Vous pouvez également facilement écrire un objet Python DataFrame sous forme de table sur BigQuery. Document officiel de la Bibliothèque
from pandas.io import gbq
gbq.to_gbq(df, 'Table à laquelle écrire', 'ID du projet')
Avec cela seul, vous pouvez renvoyer l'objet DF utilisé en Python à BigQuery.
Quand vous pouvez le faire jusqu'à présent, par exemple
(1) Récupérer les données des fonctionnalités utilisateur à partir de BigQuery (lire)_bgq)
↓
② Connectez et traitez les données avec Python(pandas)
↓
③ Étiqueter les utilisateurs avec un modèle d'apprentissage automatique(scikielearn)
↓
④ Renvoyez le résultat étiqueté à BigQuery(gbq.to_gbq)
Vous pourrez faire des choses comme celle-ci relativement facilement. Hmmm merveilleux Pandas est vraiment pratique
Datalab est un environnement d'analyse cloud interactif basé sur jupyter notebook (anciennement iPython-Notebook) construit sur Google Compute Engine. L'opération se fait en écrivant le code dans une interface appelée "Notebook" qui peut être visualisée et décrite avec un navigateur.
En gros, il présente les avantages suivants.
Je ne pense pas qu'il soit facile de lire le texte, donc c'est peut-être le plus rapide pour regarder la vidéo ou l'image.
[Vidéo] https://www.youtube.com/watch?v=RzIjz5HQIx4
[Image de l'exemple d'utilisation]
Les caractères sur la première ligne sont Markdown,
La première cellule est écrite en SQL et la deuxième cellule est écrite en Python
Les graphiques, etc. sont également affichés en ligne
(Bien sûr, non seulement des graphiques mais également des tableaux peuvent être affichés)
Étant en version bêta (?), Vous ne pouvez pas activer les fonctionnalités directement depuis la console GCP Sélectionnez un projet sur cette page et Déployez pour utiliser la fonction
De plus, il semble que seuls les propriétaires disposant de droits de propriété ou de droits d'édition puissent activer la fonction Une fois déployé dans le projet, il sera disponible pour tous les membres du projet
Cloud Datalab is deployed as a Google App Engine application module in the selected project. The Google Compute Engine and Google BigQuery APIs must be enabled for the project, and you must be authorized to use the project as an owner or editor.
Image de l'écran de démarrage
Une instance de Datalab est lancée sur Google Compute Engine et l'environnement Datalab est construit dessus. L'interface Datalab peut être exploitée à partir d'un navigateur. (Bien sûr, la connexion SSH est également possible dans cet environnement)
Le notebook (code SQL et Python) écrit sur le navigateur sera enregistré sur cette instance (= tout le monde peut le voir)
La console GCP n'a pas de point d'entrée pour activer la fonctionnalité Datalab, mais lorsque vous utilisez Datalab, vous verrez "Datalab" dans la liste des instances.
Il y a des frais pour les instances GCE (~ plusieurs milliers de yens? Selon les spécifications de l'instance) Bien sûr, vous serez également facturé pour accéder à BigQuery.
Officiel Datalab
You only pay for the resources you use to run Cloud Datalab, as follows:
Compute Resources Cloud Datalab uses Google App Engine and Google Compute Engine resources to run within your project. When you have Cloud Datalab instances deployed within your project, you incur compute charges —the charge for one VM per Cloud Datalab instance
Google BigQuery -You incur BigQuery charges when issuing SQL queries within Cloud Datalab
Other Resources —You incur charges for other API requests you make within the Cloud Datalab environment.
Voyage Group http://www.slideshare.net/hagino_3000/cloud-datalabbigquery Vasily http://tech.vasily.jp/entry/cloud-datalab Wonder Planet http://wonderpla.net/blog/engineer/Try_GoogleCloudDatalab/
Recommended Posts