0
votes

Comment exécuter une macro à bigquery

J'ai une obligation de déplacer certaines des applications frontales existantes exécutant Teradata comme backend à Google BigQuery. L'un des modèles courants utilisés dans ces applications frontaendes consiste à appeler une macro dans Teradata, en fonction de différentes entrées sélectionnées par les utilisateurs. Considérant que BigQuery n'a pas le moyen de créer une entité macro, comment puis-je remplacer cela et faire appel à BigQuery d'exécuter quelque chose de similaire. La connexion à BigQuery passe par le biais des services ODBC / JDBC ou Java.


2 commentaires

Si vous avez besoin d'une seule source de vérité pour une certaine requête avec des variables, vous pouvez simplement utiliser n'importe quel outil de gestion de code (GitHub, ...) pour l'enregistrer et la récupérer, non?


Qu'est-ce qu'un micro fait habituellement? Comment est-il comparé à une procédure avec des paramètres de requête?


3 Réponses :


1
votes

Une macro in Teradata est simplement un moyen d'exécuter plusieurs instructions SQL en tant que demande unique, qui est à son tour traitée comme une transaction unique. Il vous permet également de paramétrer votre requête.

Si votre nouveau backend de DB prend en charge, vous pouvez convertir les macros en procédures / fonctions stockées. Sinon, vous pouvez extraire les instructions SQL individuelles de la macro et essayer de les exécuter ensemble comme une seule transaction.

Ces liens peuvent être utiles: Fonctions , DML

Glancher à la documentation, il semble que la rédaction d'une fonction peut être votre meilleur pari: "Il n'y a aucun support pour les transactions multi-sortes."


0 commentaires

1
votes

Vous pouvez regarder les scripts de BigQuery qui est en version bêta - https://cloud.google.com/bigquery/docs/reference/standard-sql/scrips#bigquery-scripting pour migrer vos macros de Teradata. Avec cette version, vous pouvez écrire des procédures dans lesquelles vous pouvez définir la logique de votre entreprise, puis exécuter la procédure à l'aide d'un relevé d'appel.

merci, Jayadeep


0 commentaires

0
votes

Comme mentionné ci-dessus:

Une macro à Teradata n'est qu'un moyen d'exécuter plusieurs déclarations SQL En tant que demande unique, qui est à son tour traité comme une transaction unique. Il vous permet également de paramétrer votre requête.

Cela dit, il vous suffit de faire la partie migration de Teradata, Voici , vous pouvez trouver le guide pour le faire et répondre à votre question, la connexion est effectuée via JDBC dont les pilotes sont tdgssconfig.jar et terajdbc4.jar .


0 commentaires