Разница между драйвером JDBC и адаптерами Python для Amazon Redshift - PullRequest
1 голос
/ 30 октября 2019

Чтобы подключить Amazon Redshift, я использовал модуль python psycopg2 для добавления набора данных в Amazon Redshift, и он работает нормально. Просто упомянуть, что я использую URL-адрес конечной точки Redshift для подключения через psycopg2, который использует Python DB API v2.0. Amazon Redshift также предоставляет URL-адрес JDBC или ODBC для подключения, но я этим не пользуюсь.

псевдокод:

import psycopg2
try:
    connection = psycopg2.connect(user = "redshift_user",
                                  password = "redshift_password",
                                  host = "redshift_endpoint",
                                  port = "5432",
                                  database = "redshift_database")

    cursor = connection.cursor()

Примечание: Я также использую ту же конечную точку Redshift для подключения к ней из моих разных клиентов, таких как Tableau, Navicat Premium или другие клиенты SQL, которые используют драйвер JDBC / ODBC под ним.

Но недавно Amazon отправил мне сообщение об обновлении драйвера JDBC,

AWS Redshift выявил проблему в RedshiftДрайверы JDBC, которые привели к неожиданному перезапуску сервера, что впоследствии было исправлено в последних драйверах Redshift JDBC. Некоторые из ваших кластеров в регионе US-WEST-2 регистрируют соединения из более старых версий драйвера JDBC и могут быть затронуты этой проблемой.

Пожалуйста, обновите драйвер до последней версии: 1.2.36.1060, котораядоступно для скачивания [1].

[1] https://docs.aws.amazon.com/redshift/latest/mgmt/configure-jdbc-connection.html#download-jdbc-driver

Так что теперь у меня есть пара вопросов -

  1. Модуль psycopyg2 использует драйвер JDBC или ODBC под ним?

  2. Вышеприведенное сообщение от AWS из-за различных клиентов, которые я использовал, под которыми используются старыеверсия драйверов JDBC или ODBC. Поэтому я должен обновлять драйверы своих клиентов только не на моем psycopg2 модуле.

...