2017-09-21 1 views
1

J'utilise Snappydata et SQL pour exécuter certaines analyses, mais le travail est lent et implique des opérations de jointure sur des données d'entrée très volumineuses.SnappyData plusieurs tâches pour obtenir le parallélisme

Je considère d'abord partitionner les données d'entrée, puis exécuter les tâches sur différentes partitions en même temps pour accélérer le processus. Mais en mode embarqué que j'utilise, mon code obtient le SnappySession transmis, et je peux utiliser bin/snappy-sql pour interroger les tables, donc je suppose que tous les jobs snappydata partageront le même SnappySession (ou même espace de noms de table, comme la même base de données dans Postgresql à ma connaissance).

Donc je suppose que si je soumets mon travail en utilisant le même pot avec différents arguments d'entrée, l'espace de noms des tables serait le même pour les différents travaux, provoquant ainsi des erreurs. Donc ma question est: est-il possible d'avoir plusieurs snappySession (ou plusieurs noms d'espaces comme les noms de bases de données) qui exécutent une série d'opérations indépendamment, de préférence dans un job snappydata pour éviter de gérer plusieurs jobs en même temps?

Répondre

1

Je ne suis pas sûr de suivre la question. Cela peut peut-être aider:

Lorsque des requêtes sont envoyées à l'aide de snappy-sql, ce shell utilise JDBC pour se connecter et exécuter la requête. En interne, snappy démarre un Job et exécute des tâches simultanées sur chaque partition en fonction de la requête. Et, oui, cette session SQL interne est associée à un SnappySession unique (session spark). Ou, peut-être, vous essayez de partitionner les données à travers de nombreuses tables et de commencer le traitement sur ces tables indépendamment mais en parallèle?

+0

Merci beaucoup pour la réponse, Donc, il semble que la création de plusieurs tables pour diviser les données et exécuter chaque sql en parallèle est la voie à suivre. J'espérais réutiliser mon code existant tel qu'il est, mais je suppose que je vais devoir modifier mon code maintenant. – user3230153