[PYTHON] Créez un DMP privé sans coût initial ni développement avec BigQuery
Les DMP privés sont populaires de nos jours, mais la plupart d'entre eux sont des données au trésor (YBI).
Les données au trésor sont très utiles (en particulier td-js-sdk), mais elles sont un peu chères.
D'autre part, BigQuery est attrayant pour son prix bas et sa vitesse d'exécution des requêtes, mais il est très peu pratique d'entrer et de sortir des données par rapport aux données de trésor.
J'ai donc créé une application avec GAE (Python) qui se rend compte de la facilité d'utilisation comme des données de trésor sur BigQuery.
Si vous utilisez votre propre code source, vous pouvez le créer sans aucun développement.
Code source: https://github.com/mats116/ElasticBigQuery
- Vous êtes libre d'effectuer toutes les réparations, mais si possible, nous vous serions reconnaissants de bien vouloir faire une demande de problème ou d'extraction.
- Au fait, c'est un projet complètement individuel, donc ça n'a rien à voir avec l'entreprise à laquelle j'appartiens.
- ʻElasticbigquery.appspot.com` fonctionne sans frais, vous pouvez donc le frapper librement, mais veuillez le faire dans les limites du bon sens.
Pouvoir
Obtenez les journaux de td-js-sdk
- Cela fonctionne comme des données de trésor simplement en modifiant le point de terminaison comme indiqué ci-dessous.
--writeKey est statique pour le moment, mais nous prévoyons de rendre possible l'émission et la gestion des autorisations à partir de l'écran.
- Seul JSONP, qui est devenu la valeur par défaut depuis la v1.4.0, est pris en charge.
--BigQuery n'est pas sans schéma, mais il l'identifie automatiquement dans l'API et génère automatiquement des ensembles de données et des tables.
- Le nom de la table générée a une date (UTC) à la fin, telle que
table_id + AAAAMMJJ
, ce qui en fait une table quotidienne.
--En tant que fonction unique, les paramètres suivants sont acquis dans l'état décodé par URL.
- td_path
- td_referrer
- td_url
pageviews.js
<script type="text/javascript">
var td = new Treasure({
host: 'elasticbigquery.appspot.com',
pathname: '/dmp/v1/event/',
writeKey: 'thie_is_static_setting_yet',
database: '<dataset_id>'
});
td.trackPageview('<table_id>');
</script>
Obtenir les journaux des balises Web
- Renvoie un GIF transparent avec le point de terminaison ci-dessous.
//elasticbigquery.appspot.com/dmp/v1/beacon/<dataset_id>/measurement
- Vous pouvez obtenir le paramètre GET.
- Certains paramètres sont acquis par défaut, tels que les références.
Émission d'un identifiant de cookie
- Émettez
bqid
sous le domaine GAE xxx-xxx.appspot.com
.
- Veuillez changer le nom de domaine et l'identifiant en fonction de l'objectif.
- Vous pouvez le vérifier au point final suivant.
- http://elasticbigquery.appspot.com/dmp/v1/bqid/get
--Si vous ajoutez
callback = hoge
au paramètre GET, vous pouvez l'utiliser comme JSONP.
Ce que je veux pouvoir faire à partir de maintenant
Contrôle de compte
--Je souhaite pouvoir accorder des autorisations pour l'ensemble de données BigQuery de l'interface utilisateur à un compte inscrit auprès d'Oauth (Google).
contrôle de writeKey
- Je veux pouvoir émettre une writeKey depuis l'interface utilisateur. (Actuellement statique)
――Il est difficile de faire référence à Cloud Datastore à chaque fois, alors peut-être memocache?
Fonction d'exportation
- Je souhaite pouvoir exporter les résultats de la requête vers S3 et Google Cloud Storage.
――N'est-il pas possible de l'intégrer à Apps Script d'une manière agréable?
Impressions
- Complètement freeride à td-js-sdk. ..
――Lorsque je n'ai pas réussi à le mettre dans BigQuery, je l'ai mis dans la file d'attente des tâches, donc je l'ai fait assez fermement.
――Parce qu'il s'agit d'un projet personnel, nous recherchons une entreprise capable de faire une vérification de charge GAE.
――Je ne suis pas doué pour créer l'interface utilisateur, alors aidez-moi s'il vous plaît.
* Méthode de construction GAE
Pour votre information. Si vous êtes nouveau dans GAE, faites de votre mieux.
Quoi préparer
Créer un projet
-Créer un nouveau projet dans Google Developers Console.
--En ce qui concerne l'emplacement d'App Engine, ** us-central ** est le plus proche du Japon
--Par défaut, ** l'API BigQuery ** doit être activée, mais juste au cas où
Obtenir le code source
- Puisqu'il est publié sur GitHub, veuillez le cloner de manière appropriée.
- https://github.com/mats116/ElasticBigQuery
changement de réglage
--Ouvrez ʻapp.yaml` et renommez le projet
--En termes de code source, ici
Déployer
--Déployer depuis Google AppEngine Launcher.