Azure Data Factory 또는 Synapse Analytics를 사용하여 MariaDB에서 데이터 복사
이 문서의 내용
지원되는 기능
필수 조건
시작하기
UI를 사용하여 MariaDB에 연결된 서비스 만들기
커넥터 구성 세부 정보
연결된 서비스 속성
데이터 세트 속성
복사 작업 속성
MariaDB에 대한 데이터 형식 매핑
조회 작업 속성
MariaDB 커넥터 업그레이드
MariaDB 버전 2.0과 버전 1.0의 차이점
관련 콘텐츠
9개 더 표시
적용 대상: Azure Data Factory Azure Synapse Analytics
이 문서에서는 Azure Data Factory 또는 Synapse Analytics 파이프라인에서 복사 작업을 사용하여 MariaDB에서 데이터를 복사하는 방법을 간략하게 설명합니다. 이 문서는 복사 작업에 대한 일반적인 개요를 제공하는 복사 작업 개요 문서를 기반으로 합니다.
중요
MariaDB 커넥터 버전 2.0은 향상된 네이티브 MariaDB 지원을 제공합니다. 솔루션에서 MariaDB 커넥터 버전 1.0을 사용하는 경우 버전 1.0이 지원 종료 단계에 있으므로 MariaDB 커넥터를 업그레이드하세요 . 버전 2.0과 버전 1.0의 차이점에 대한 자세한 내용은 이 섹션 을 참조하세요.
이 MariaDB 커넥터는 다음과 같은 기능에 지원됩니다.
테이블 확장
① Azure 통합 런타임 ② 자체 호스팅 통합 런타임
복사 작업의 원본/싱크로 지원되는 데이터 저장소 목록은 지원되는 데이터 저장소 표를 참조하세요.
이 서비스는 연결을 사용하는 기본 제공 드라이버를 제공합니다. 따라서 이 커넥터를 사용하여 드라이버를 수동으로 설치하지 않아도 됩니다.
이 커넥터는 현재 MariaDB 커넥터 버전 2.0에서 버전 10.x, 11.x의 MariaDB를 지원하고 버전 1.0의 경우 10.0~10.5를 지원합니다.
데이터 저장소가 온-프레미스 네트워크, Azure 가상 네트워크 또는 Amazon Virtual Private Cloud 내에 있는 경우 자체 호스팅된 통합 런타임 을 구성하여 연결해야 합니다.
데이터 저장소가 관리형 클라우드 데이터 서비스인 경우 Azure Integration Runtime을 사용할 수 있습니다. 액세스가 방화벽 규칙에서 승인된 IP로 제한되는 경우 허용 목록에 Azure Integration Runtime IP 를 추가할 수 있습니다.
또한 Azure Data Factory의 관리형 가상 네트워크 통합 런타임 기능을 사용하면 자체 호스팅 통합 런타임을 설치하고 구성하지 않고도 온-프레미스 네트워크에 액세스할 수 있습니다.
Data Factory에서 지원하는 네트워크 보안 메커니즘 및 옵션에 대한 자세한 내용은 데이터 액세스 전략 을 참조하세요.
파이프라인에 복사 작업을 수행하려면 다음 도구 또는 SDK 중 하나를 사용하면 됩니다.
UI를 사용하여 MariaDB에 연결된 서비스 만들기
다음 단계를 사용하여 Azure Portal UI에서 MariaDB에 연결된 서비스를 만듭니다.
Azure Data Factory 또는 Synapse 작업 영역에서 관리 탭으로 이동하여 연결된 서비스를 선택하고 새로 만들기를 클릭합니다.
Maria를 검색하고 MariaDB 커넥터를 선택합니다.
서비스 세부 정보를 구성하고, 연결을 테스트하고, 새로운 연결된 서비스를 만듭니다.
다음 섹션에서는 MariaDB 커넥터에 한정된 Data Factory 엔터티를 정의하는 데 사용되는 속성에 대해 자세히 설명합니다.
버전 2.0을 사용하는 경우 MariaDB 연결된 서비스에 대해 다음 속성이 지원됩니다.
테이블 확장
속성
설명
필수
type
type 속성은 MariaDB 로 설정해야 합니다.
예
driverVersion
버전 2.0을 선택할 때 드라이버 버전입니다. 값은 v2입니다.
예
server
MariaDB 서버의 이름입니다.
예
port
MariaDB 서버에 연결하기 위한 포트 번호입니다.
아니요
database
MariaDB 데이터베이스 이름입니다.
예
사용자 이름
사용자 이름입니다.
예
password
사용자 이름의 암호입니다. 이 필드를 SecureString으로 표시하여 안전하게 저장합니다. 또는 Azure Key Vault에 저장된 비밀을 참조 할 수 있습니다.
예
sslMode
이 옵션은 MariaDB에 연결할 때 드라이버가 TLS 암호화 및 확인을 사용하는지 여부를 지정합니다. 예: SSLMode=<0/1/2/3/4>
. 옵션: DISABLED (0) / PREFERRED (1) / REQUIRED (2) / VERIFY_CA (3) / VERIFY_IDENTITY (4) (기본값)
예
useSystemTrustStore
이 옵션은 시스템 신뢰 저장소 또는 지정된 PEM 파일의 CA 인증서를 사용할지 여부를 지정합니다. 예 UseSystemTrustStore=<0/1>
; 옵션: 사용(1) / 사용 안 함(0)(기본값)
아니요
connectVia
데이터 저장소에 연결하는 데 사용할 Integration Runtime 입니다.
필수 구성 요소 섹션에서 자세히 알아보세요. 지정하지 않으면 기본 Azure Integration Runtime을 사용합니다.
아니요
예제 :
{
"name": "MariaDBLinkedService",
"properties": {
"type": "MariaDB",
"typeProperties": {
"server": "<server>",
"port": "<port>",
"database": "<database>",
"username": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
},
"driverVersion": "v2",
"sslMode": <sslmode>,
"useSystemTrustStore": <UseSystemTrustStore>
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
예제: Azure Key Vault에 암호 저장
{
"name": "MariaDBLinkedService",
"properties": {
"type": "MariaDB",
"typeProperties": {
"server": "<server>",
"port": "<port>",
"database": "<database>",
"username": "<username>",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
},
"driverVersion": "v2",
"sslMode": <sslmode>,
"useSystemTrustStore": <UseSystemTrustStore>
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
버전 1.0을 사용하는 경우 다음 속성이 지원됩니다.
테이블 확장
속성
설명
필수
type
type 속성은 MariaDB 로 설정해야 합니다.
예
connectionString
MariaDB에 연결할 ODBC 연결 문자열입니다. Azure Key Vault에 암호를 넣고, 연결 문자열에서 pwd
구성을 끌어올 수도 있습니다. 자세한 내용은 다음 샘플 및 Azure Key Vault에 자격 증명 저장 문서를 참조하세요.
예
connectVia
데이터 저장소에 연결하는 데 사용할 Integration Runtime 입니다.
필수 구성 요소 섹션에서 자세히 알아보세요. 지정하지 않으면 기본 Azure Integration Runtime을 사용합니다.
아니요
예제 :
{
"name": "MariaDBLinkedService",
"properties": {
"type": "MariaDB",
"typeProperties": {
"connectionString": "Server=<host>;Port=<port>;Database=<database>;UID=<user name>;PWD=<password>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
데이터 세트 정의에 사용할 수 있는 섹션 및 속성의 전체 목록은 데이터 세트 문서를 참조하세요. 이 섹션에서는 MariaDB 데이터 세트에서 지원하는 속성의 목록을 제공합니다.
MariaDB에서 데이터를 복사하려면 데이터 세트의 type 속성을 MariaDBTable 로 설정합니다. 이 형식의 데이터 세트에는 추가적인 형식별 속성이 없습니다.
예제
{
"name": "MariaDBDataset",
"properties": {
"type": "MariaDBTable",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<MariaDB linked service name>",
"type": "LinkedServiceReference"
}
}
}
작업 정의에 사용할 수 있는 섹션 및 속성의 전체 목록은 파이프라인 문서를 참조하세요. 이 섹션에서는 MariaDB 원본에서 지원하는 속성의 목록을 제공합니다.
MariaDB에서 데이터를 복사하려면 복사 작업의 원본 형식을 MariaDBSource 로 설정합니다. 복사 작업 source 섹션에서 다음 속성이 지원됩니다.
테이블 확장
속성
설명
필수
type
복사 작업 원본의 type 속성은 MariaDBSource 로 설정해야 합니다.
예
query
사용자 지정 SQL 쿼리를 사용하여 데이터를 읽습니다. 예: "SELECT * FROM MyTable"
아니요(데이터 세트의 "tableName"이 지정된 경우)
예제 :
"activities":[
{
"name": "CopyFromMariaDB",
"type": "Copy",
"inputs": [
{
"referenceName": "<MariaDB input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "MariaDBSource",
"query": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
MariaDB에서 데이터를 복사할 때 MariaDB 데이터 형식에서 서비스에서 내부적으로 사용하는 중간 데이터 형식으로 다음 매핑이 사용됩니다. 복사 작업에서 원본 스키마 및 데이터 형식을 싱크에 매핑하는 방법에 대한 자세한 내용은 스키마 및 데이터 형식 매핑 을 참조하세요.
테이블 확장
MariaDB 데이터 형식
중간 서비스 데이터 형식(버전 2.0의 경우)
중간 서비스 데이터 형식(버전 1.0의 경우)
bigint
Int64
Int64
bigint unsigned
Decimal
Decimal
bit(1)
UInt64
Boolean
bit(M), M>1
UInt64
Byte[]
blob
Byte[]
Byte[]
bool
Boolean
(TreatTinyAsBoolean=false인 경우 SByte
로 매핑됩니다. TreatTinyAsBoolean은 기본적으로 true입니다.)
Int16
char
String
String
date
Datetime
Datetime
datetime
Datetime
Datetime
decimal
Decimal
Decimal, String
double
Double
Double
double precision
Double
Double
enum
String
String
float
Single
Single
int
Int32
Int32
int unsigned
Int64
Int64
integer
Int32
Int32
integer unsigned
Int64
Int64
JSON
String
-
long varbinary
Byte[]
Byte[]
long varchar
String
String
longblob
Byte[]
Byte[]
longtext
String
String
mediumblob
Byte[]
Byte[]
mediumint
Int32
Int32
mediumint unsigned
Int64
Int64
mediumtext
String
String
numeric
Decimal
Decimal
real
Double
Double
set
String
String
smallint
Int16
Int16
smallint unsigned
Int32
Int32
text
String
String
time
TimeSpan
TimeSpan
timestamp
Datetime
Datetime
tinyblob
Byte[]
Byte[]
tinyint
SByte
Int16
tinyint unsigned
Int16
Int16
tinytext
String
String
varchar
String
String
year
Int
Int
속성에 대한 자세한 내용을 보려면 조회 작업 을 확인하세요.
MariaDB 커넥터를 업그레이드하는 데 도움이 되는 단계는 다음과 같습니다.
연결된 서비스 편집 페이지에서 버전 아래에서 2.0을 선택하고 연결된 서비스 속성을 참조하여 연결된 서비스를 구성합니다 .
버전 2.0의 데이터 형식 매핑은 버전 1.0의 데이터 형식 매핑과 다릅니다. 버전 2.0 데이터 형식 매핑을 알아보려면 MariaDB에 대한 데이터 형식 매핑을 참조 하세요.
최신 드라이버 버전 v2는 더 많은 MariaDB 버전을 지원합니다. 자세한 내용은 지원되는 기능 을 참조하세요.
MariaDB 버전 2.0과 버전 1.0의 차이점
아래 표에서는 MariaDB 버전 2.0과 버전 1.0 간의 데이터 형식 매핑 차이점을 보여 줍니다.
테이블 확장
MariaDB 데이터 형식
중간 서비스 데이터 형식(버전 2.0 사용)
중간 서비스 데이터 형식(버전 1.0 사용)
bit(1)
UInt64
Boolean
비트(M), M>1
UInt64
Byte[]
bool
Boolean
Int16
JSON
문자열
Byte[]
복사 작업에서 원본 및 싱크로 지원되는 데이터 저장소 목록은 지원되는 데이터 저장소 를 참조하세요.