Dans les meilleures pratiques officielles I found:Utilisation du _PARTITIONDATE contre les pseudo-colonnes de _PARTITIONTIME dans BigQuery
Partitionnement vos tables par date et l'interrogation de la partition concernée; par exemple, où _PARTITIONDATE = « 01/01/2017 » scanne seul le 1 Janvier, 2017 partition
Et je commencé à utiliser la pseudo-colonne _PARTITIONDATE
pas mal, que je trouve plus facile d'écrire des requêtes de cette façon , contrairement à la colonne _PARTITIONTIME
et appliquer une fonction TIMESTAMP()
sur ma date, comme le montre cette example:
OÙ _PARTITIONTIME = TIMESTAMP ('28.03.2016')
Je me demandais si je devais continuer avec mon utilisation de _PARTITIONDATE
- comme je ne pouvais pas trouver plus de documentation à ce sujet. En outre, contrairement à _PARTITIONTIME
, il n'est pas mis en évidence par la syntaxe dans l'éditeur SQL BigQuery.
Est le moyen officiel de favoriser _PARTITIONTIME
sur _PARTTIONDATE
?
Vous mentionnez deux fois '_PARTITIONTIME', mais je suppose que vous vouliez dire _PARTITIONDATE' dans votre deuxième ligne? Je sais qu'ils sont sémantiquement identiques, je voulais juste m'assurer de ne pas utiliser quelque chose qui n'est pas officiellement supporté pour éviter que la colonne ne disparaisse dans le futur. (Donc, ma question portait sur «_PARTITIONDATE» vs «_PARTITIONTIME») – Tobi
Oh, désolé, je vois ce que vous voulez dire. '_PARTITIONDATE' n'est pas documenté car il ne correspond pas à une fonctionnalité qui a été publiée. Vous devriez utiliser '_PARTITIONTIME' à moins d'annoncer une nouvelle fonctionnalité dans les [notes de mise à jour] (https://cloud.google.com/bigquery/docs/release-notes). –
Merci pour la clarification, j'ai mis à jour votre réponse afin que les gens puissent obtenir l'information plus facilement sans lire les commentaires! Je suppose que les [Best-Practices] (https://cloud.google.com/bigquery/docs/best-practices-costs) doivent être mis à jour puis utiliser _PARTITIONTIME'? – Tobi