Windows의 Python 앱에서 Amazon Redshift로 ODBC로 데이터 연결

소개



이 기사에서는 DataDirect 드라이버를 활용하고 Windows의 Python 애플리케이션에서 Amazon Redshift로 ODBC로 쉽게 데이터를 통합하는 방법을 설명합니다.

Amazon Redshift용 DataDirect 드라이버 설치



1, Windows용 DataDirect ODBC Driver for Amazon Redshift를 다운로드합니다.

2, 순서대로 드라이버를 설치합니다.

RedShift 연결 설정



1, ODBC Administrator에서 [추가]를 클릭하여 연결을 정의합니다.
드라이버는 DataDirect 7.1 Amazon Redshift Wire Protocol을 선택합니다.


2, 설정 창에서 다음과 같이 호스트 이름, 포트, 데이터 소스를 입력합니다.


3. Test Connect를 클릭하여 사용자 이름과 암호로 성공적으로 연결할 수 있는지 확인합니다.

Python에서 Redshift에 연결



1, Python에서 Redshift에 액세스하려면 pyodbc 패키지를 설치하십시오.
다음 명령으로 설치하십시오.
pip install pyodbc

2, 다음과 같은 Python 프로그램으로 Redshift 데이터에 액세스합니다. (연결 설정 변경)
import pyodbc

conn = pyodbc.connect('DSN=Redshift;UID=awsuser;PWD=awsPassword')

cursor = conn.cursor()

## Create Tables
cursor.execute("CREATE TABLE Track ( TrackId INT NOT NULL, Name VARCHAR(200) NOT NULL, AlbumId INT, MediaTypeId INT NOT NULL, GenreId INT, Composer VARCHAR(220), Milliseconds INT NOT NULL, Bytes INT, UnitPrice NUMERIC(10,2) NOT NULL);")

cursor.execute("INSERT INTO Track (TrackId, Name, AlbumId, MediaTypeId, GenreId, Composer, Milliseconds, Bytes, UnitPrice) VALUES (1, 'For Those About To Rock (We Salute You)', 1, 1, 1, 'Angus Young, Malcolm Young, Brian Johnson', 343719, 11170334, 0.99);")

conn.commit()

##Access Data using SQL
cursor.execute("select * from Track")
while True:
    row = cursor.fetchone()
    if not row:
        break
    print(row)

##Access Data using SQL
cursor.execute("select * from Artist")
while True:
    row = cursor.fetchone()
    if not row:
        break
    print(row)

3. 위와 같이 연결 문자열을 정의하거나 다음 연결 문자열을 사용하여 ODBC Administrator에서 연결 설정을 생략 할 수 있습니다.
Driver={DataDirect 7.1 Amazon Redshift Wire Protocol}; HostName=ホスト名を設定ください; Database=DB名を設定ください; UID=ユーザIDを設定ください; PWD=パスワードを設定ください; Port=5439

아주 간단하네요.

참고 기사

Amazon Redshift에 실시간 액세스

DataDirect for Redshift 자습서

좋은 웹페이지 즐겨찾기