Наше приложение (python 3.6) является генератором запросов, позволяющим пользователям запрашивать несколько таблиц из разных баз данных.
Мы пытаемся добавить поддержку Qubole. В настоящее время пытаются ассимилировать кластеры с двигателем Presto.
У нас есть несколько токенов API, и мы должны иметь возможность запрашивать разные базы данных Presto одновременно.
Мы начали реализовывать это с использованием qds_sdk, однако, кажется, что класс Qubole является синглтоном, а класс PrestoCommand взаимодействует с ним напрямую.
Пожалуйста, рассмотрите qds-sdk-py / example / qubole_presto_api_example.py
https://github.com/qubole/qds-sdk-py/blob/master/example/qubole_presto_api_example.py
строки 67-68
Qubole.configure(api_token=‘YOUR-QUBOLE-API-TOKEN’)
get_results(execute_query(“select * from default.cities limit 100;“))
Наш сервис требует возможности иметь несколько объектов Qubole.configure и запрашивать их в соответствии с взаимодействиями с пользователем.
То есть:
q1 = Qubole.configure(api_token=‘Token1’)
q2 = Qubole.configure(api_token=‘Token2’)
*user triggeres an event*
q1.get_results(execute_query(“query”))
Как бы вы поступили? Должен ли я реализовать некоторую блокировку перед попыткой доступа к таблице?