Google은 AI 기술을 사용하여 콘텐츠를 사용자의 기본 언어로 번역합니다. AI 번역에는 오류가 있을 수 있습니다.
데이터베이스용 Dataflow 관리형 I/O
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
Dataflow는 Java Database Connectivity (JDBC)를 사용하여 데이터베이스에서 읽고 데이터베이스에 쓰는 작업을 지원합니다. Dataflow는 Apache Beam JdbcIO 커넥터를 사용하여 JDBC 데이터 소스 및 싱크에 연결합니다. 데이터베이스용 관리 I/O는 PostgreSQL, MySQL, Microsoft SQL Server를 비롯한 다양한 데이터베이스의 표준 JDBC 드라이버를 지원합니다.
요구사항
다음 SDK는 데이터베이스용 관리형 I/O를 지원합니다.
- Java용 Apache Beam SDK 버전 2.69.0 이상
- Python용 Apache Beam SDK 버전 2.69.0 이상
구성
데이터베이스용 관리형 I/O는 다음 구성 파라미터를 지원합니다.
POSTGRES 읽기
| 구성 |
유형 |
설명 |
|
jdbc_url
|
str
|
JDBC 소스의 연결 URL입니다.
|
|
connection_properties
|
str
|
이미 독립형 매개변수로 정의되지 않은 JDBC 드라이버에 전달되는 연결 속성을 설정하는 데 사용됩니다 (예: 위의 매개변수를 사용하여 사용자 이름과 비밀번호를 설정할 수 있음). 문자열 형식은 'key1=value1;key2=value2;'여야 합니다.
|
|
fetch_size
|
int32
|
이 메서드는 데이터베이스 호출마다 가져와 메모리에 로드할 데이터의 크기를 재정의하는 데 사용됩니다. 기본값이 메모리 오류를 발생시키는 경우에만 사용해야 합니다.
|
|
위치
|
str
|
읽을 테이블의 이름입니다.
|
|
num_partitions
|
int32
|
파티션 수
|
|
output_parallelization
|
boolean
|
결과가 모든 작업자에게 분산되도록 결과 PCollection을 재셔플할지 여부입니다.
|
|
partition_column
|
str
|
파티셔닝에 사용될 숫자 유형 열의 이름입니다.
|
|
비밀번호
|
str
|
JDBC 소스의 비밀번호입니다.
|
|
read_query
|
str
|
JDBC 소스를 쿼리하는 데 사용되는 SQL 쿼리입니다.
|
|
사용자 이름
|
str
|
JDBC 소스의 사용자 이름입니다.
|
POSTGRES 쓰기
| 구성 |
유형 |
설명 |
|
jdbc_url
|
str
|
JDBC 싱크의 연결 URL입니다.
|
|
자동 샤딩
|
boolean
|
참인 경우 동적으로 결정된 샤드 수를 쓰기에 사용하도록 설정합니다.
|
|
batch_size
|
int64
|
해당 사항 없음
|
|
connection_properties
|
str
|
이미 독립형 매개변수로 정의되지 않은 JDBC 드라이버에 전달되는 연결 속성을 설정하는 데 사용됩니다 (예: 위의 매개변수를 사용하여 사용자 이름과 비밀번호를 설정할 수 있음). 문자열 형식은 'key1=value1;key2=value2;'여야 합니다.
|
|
위치
|
str
|
쓰기 대상 테이블의 이름입니다.
|
|
비밀번호
|
str
|
JDBC 소스의 비밀번호입니다.
|
|
사용자 이름
|
str
|
JDBC 소스의 사용자 이름입니다.
|
|
write_statement
|
str
|
JDBC 싱크에 레코드를 삽입하는 데 사용되는 SQL 쿼리입니다.
|
MYSQL 읽기
| 구성 |
유형 |
설명 |
|
jdbc_url
|
str
|
JDBC 소스의 연결 URL입니다.
|
|
connection_init_sql
|
list[str]
|
드라이버에서 사용하는 연결 초기화 SQL 문을 설정합니다. MySQL 및 MariaDB만 이를 지원합니다.
|
|
connection_properties
|
str
|
이미 독립형 매개변수로 정의되지 않은 JDBC 드라이버에 전달되는 연결 속성을 설정하는 데 사용됩니다 (예: 위의 매개변수를 사용하여 사용자 이름과 비밀번호를 설정할 수 있음). 문자열 형식은 'key1=value1;key2=value2;'여야 합니다.
|
|
disable_auto_commit
|
boolean
|
읽기 시 자동 커밋을 사용 중지할지 여부입니다. 제공되지 않으면 기본값은 true입니다. 이 구성의 필요성은 데이터베이스 플랫폼에 따라 다릅니다. Informix는 false로 설정해야 하고 Postgres는 true로 설정해야 합니다.
|
|
fetch_size
|
int32
|
이 메서드는 데이터베이스 호출마다 가져와 메모리에 로드할 데이터의 크기를 재정의하는 데 사용됩니다. 기본값이 메모리 오류를 발생시키는 경우에만 사용해야 합니다.
|
|
위치
|
str
|
읽을 테이블의 이름입니다.
|
|
num_partitions
|
int32
|
파티션 수
|
|
output_parallelization
|
boolean
|
결과가 모든 작업자에게 분산되도록 결과 PCollection을 재셔플할지 여부입니다.
|
|
partition_column
|
str
|
파티셔닝에 사용될 숫자 유형 열의 이름입니다.
|
|
비밀번호
|
str
|
JDBC 소스의 비밀번호입니다.
|
|
read_query
|
str
|
JDBC 소스를 쿼리하는 데 사용되는 SQL 쿼리입니다.
|
|
사용자 이름
|
str
|
JDBC 소스의 사용자 이름입니다.
|
MYSQL 쓰기
| 구성 |
유형 |
설명 |
|
jdbc_url
|
str
|
JDBC 싱크의 연결 URL입니다.
|
|
자동 샤딩
|
boolean
|
참인 경우 동적으로 결정된 샤드 수를 쓰기에 사용하도록 설정합니다.
|
|
batch_size
|
int64
|
해당 사항 없음
|
|
connection_init_sql
|
list[str]
|
드라이버에서 사용하는 연결 초기화 SQL 문을 설정합니다. MySQL 및 MariaDB만 이를 지원합니다.
|
|
connection_properties
|
str
|
이미 독립형 매개변수로 정의되지 않은 JDBC 드라이버에 전달되는 연결 속성을 설정하는 데 사용됩니다 (예: 위의 매개변수를 사용하여 사용자 이름과 비밀번호를 설정할 수 있음). 문자열 형식은 'key1=value1;key2=value2;'여야 합니다.
|
|
위치
|
str
|
쓰기 대상 테이블의 이름입니다.
|
|
비밀번호
|
str
|
JDBC 소스의 비밀번호입니다.
|
|
사용자 이름
|
str
|
JDBC 소스의 사용자 이름입니다.
|
|
write_statement
|
str
|
JDBC 싱크에 레코드를 삽입하는 데 사용되는 SQL 쿼리입니다.
|
SQLSERVER 읽기
| 구성 |
유형 |
설명 |
|
jdbc_url
|
str
|
JDBC 소스의 연결 URL입니다.
|
|
connection_properties
|
str
|
이미 독립형 매개변수로 정의되지 않은 JDBC 드라이버에 전달되는 연결 속성을 설정하는 데 사용됩니다 (예: 위의 매개변수를 사용하여 사용자 이름과 비밀번호를 설정할 수 있음). 문자열 형식은 'key1=value1;key2=value2;'여야 합니다.
|
|
disable_auto_commit
|
boolean
|
읽기 시 자동 커밋을 사용 중지할지 여부입니다. 제공되지 않으면 기본값은 true입니다. 이 구성의 필요성은 데이터베이스 플랫폼에 따라 다릅니다. Informix는 false로 설정해야 하고 Postgres는 true로 설정해야 합니다.
|
|
fetch_size
|
int32
|
이 메서드는 데이터베이스 호출마다 가져와 메모리에 로드할 데이터의 크기를 재정의하는 데 사용됩니다. 기본값이 메모리 오류를 발생시키는 경우에만 사용해야 합니다.
|
|
위치
|
str
|
읽을 테이블의 이름입니다.
|
|
num_partitions
|
int32
|
파티션 수
|
|
output_parallelization
|
boolean
|
결과가 모든 작업자에게 분산되도록 결과 PCollection을 재셔플할지 여부입니다.
|
|
partition_column
|
str
|
파티셔닝에 사용될 숫자 유형 열의 이름입니다.
|
|
비밀번호
|
str
|
JDBC 소스의 비밀번호입니다.
|
|
read_query
|
str
|
JDBC 소스를 쿼리하는 데 사용되는 SQL 쿼리입니다.
|
|
사용자 이름
|
str
|
JDBC 소스의 사용자 이름입니다.
|
SQLSERVER 쓰기
| 구성 |
유형 |
설명 |
|
jdbc_url
|
str
|
JDBC 싱크의 연결 URL입니다.
|
|
자동 샤딩
|
boolean
|
참인 경우 동적으로 결정된 샤드 수를 쓰기에 사용하도록 설정합니다.
|
|
batch_size
|
int64
|
해당 사항 없음
|
|
connection_properties
|
str
|
이미 독립형 매개변수로 정의되지 않은 JDBC 드라이버에 전달되는 연결 속성을 설정하는 데 사용됩니다 (예: 위의 매개변수를 사용하여 사용자 이름과 비밀번호를 설정할 수 있음). 문자열 형식은 'key1=value1;key2=value2;'여야 합니다.
|
|
위치
|
str
|
쓰기 대상 테이블의 이름입니다.
|
|
비밀번호
|
str
|
JDBC 소스의 비밀번호입니다.
|
|
사용자 이름
|
str
|
JDBC 소스의 사용자 이름입니다.
|
|
write_statement
|
str
|
JDBC 싱크에 레코드를 삽입하는 데 사용되는 SQL 쿼리입니다.
|
다음 단계
자세한 내용과 코드 예시는 다음 문서를 참고하세요.
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2026-07-12(UTC)
[null,null,["최종 업데이트: 2026-07-12(UTC)"],[],[]]