Azure SQL Database로 내보내기
중요
Machine Learning Studio(클래식)에 대한 지원은 2024년 8월 31일에 종료됩니다. 해당 날짜까지 Azure Machine Learning으로 전환하는 것이 좋습니다.
2021년 12월 1일부터 새로운 Machine Learning Studio(클래식) 리소스를 만들 수 없습니다. 2024년 8월 31일까지는 기존 Machine Learning Studio(클래식) 리소스를 계속 사용할 수 있습니다.
- ML Studio(클래식)에서 Azure Machine Learning으로 기계 학습 프로젝트 이동에 대한 정보를 참조하세요.
- Azure Machine Learning에 대한 자세한 정보.
ML Studio(클래식) 설명서는 사용 중지되며 나중에 업데이트되지 않을 수 있습니다.
이 문서에서는 Machine Learning Studio(클래식)의 데이터 내보내기 모듈에서 Azure SQL Database 내보내기 옵션을 사용하는 방법을 설명합니다. 이 옵션은 기계 학습 실험에서 Azure SQL Database 또는 Azure SQL Data Warehouse 데이터를 내보내려는 경우에 유용합니다.
SQL 데이터베이스로 내보내는 것은 많은 기계 학습 시나리오에서 유용합니다. 예를 들어 중간 결과를 저장하거나 점수를 저장하거나 엔지니어링된 기능 테이블을 유지할 수 있습니다. azure에서 테이블 또는 Blob을 사용하는 것보다 Azure SQL Database 또는 Azure SQL Data Warehouse 데이터를 저장하는 것이 더 비쌀 수 있지만 SQL 데이터베이스에 대한 트랜잭션 요금은 없습니다. 또한 데이터베이스 스토리지는 더 적은 양의 자주 사용되는 정보를 빠르게 작성하거나, 실험 간에 데이터를 공유하거나, 결과, 예측 및 메트릭을 보고하는 데 적합합니다.
반면에 구독 유형에 따라 데이터베이스에 저장할 수 있는 데이터 양에 제한이 있을 수 있습니다. 또한 기계 학습 작업 영역과 동일한 지역에 있는 데이터베이스 및 계정을 사용하는 것도 고려해야 합니다.
데이터를 내보내려면 데이터가 저장되는 인스턴스 이름 및 데이터베이스 이름을 제공하고 쓰기 권한이 있는 계정을 사용하여 모듈을 실행합니다. 또한 테이블 이름을 지정하고 실험의 열을 테이블의 열에 매핑해야 합니다.
데이터를 Azure SQL Database 내보내는 방법
Studio(클래식)에서 실험에 데이터 내보내기 모듈을 추가합니다. 이 모듈은 데이터 입력 및 출력 범주에서 찾을 수 있습니다.
커넥트 내보낼 데이터를 생성하는 모듈로 데이터를 내보냅니다.
데이터 대상에 대해 Azure SQL Database 선택합니다. 이 옵션은 Azure SQL Data Warehouse 지원합니다.
Azure SQL Database 또는 Azure SQL Data Warehouse 서버 및 데이터베이스의 이름을 나타냅니다.
데이터베이스 서버 이름: Azure에서 생성된 서버 이름을 입력합니다. 일반적으로
<generated_identifier>.database.windows.net
형식을 사용합니다.데이터베이스 이름: 방금 지정한 서버에 있는 기존 데이터베이스의 이름을 입력합니다. 데이터 내보내기 모듈에서 데이터베이스를 만들 수 없습니다.
서버 사용자 계정 이름: 데이터베이스에 대한 액세스 권한이 있는 계정의 사용자 이름을 입력합니다.
서버 사용자 계정 암호: 지정된 사용자 계정에 대한 암호를 제공합니다.
내보낼 열을 지정하고 열 이름을 바꾸려면 지정합니다.
저장할 열의 쉼표로 구분된 목록: 데이터베이스에 쓰려는 실험의 열 이름을 입력합니다.
데이터 테이블 이름: 데이터를 저장할 테이블의 이름을 입력합니다.
Azure SQL Database 경우 테이블이 없으면 새 테이블이 만들어집니다.
Azure SQL Data Warehouse 경우 테이블이 이미 있고 올바른 스키마가 있어야 하므로 미리 만들어야 합니다.
쉼표로 구분된 데이터 가능 열 목록: 대상 테이블에 표시할 열의 이름을 입력합니다.
Azure SQL Database 경우 열 이름을 변경할 수 있지만 쉼표로 구분된 열 목록에서 내보낼 열을 나열한 순서대로 유지해야 합니다.
Azure SQL Data Warehouse 경우 열 이름은 대상 테이블 스키마에 이미 있는 이름과 일치해야 합니다.
SQL Azure 작업당 기록된 행 수: 이 옵션은 각 일괄 처리의 대상 테이블에 기록해야 하는 행 수를 지정합니다.
기본적으로 이 값은 Azure SQL Database 기본 일괄 처리 크기인 50으로 설정됩니다. 그러나 쓸 행이 많은 경우 이 값을 늘려야 합니다.
Azure SQL Data Warehouse 경우 이 값을 1로 설정하는 것이 좋습니다. 더 큰 일괄 처리 크기를 사용하는 경우 Azure SQL Data Warehouse 전송되는 명령 문자열의 크기가 허용된 문자열 길이를 초과하여 오류가 발생할 수 있습니다.
캐시된 결과 사용: 실험이 실행될 때마다 새 결과를 작성하지 않도록 하려면 이 옵션을 선택합니다. 모듈 매개 변수에 대한 다른 변경 내용이 없는 경우 실험은 모듈을 처음 실행할 때만 데이터를 씁니다. 그러나 결과를 변경하는 데이터 내보내기 에서 매개 변수가 변경된 경우 항상 새 쓰기가 수행됩니다.
실험을 실행합니다.
예
데이터 내보내기 모듈을 사용하는 방법의 예는 Azure AI 갤러리를 참조하세요.
소매 예측 6단계 중 1단계 - 데이터 전처리: 소매 예측 템플릿은 Azure SQLDB에 저장된 데이터를 기반으로 하는 기계 학습 작업을 보여 줍니다. Azure SQL 데이터베이스를 사용하여 서로 다른 계정의 실험 간에 데이터 세트를 전달하고, 예측을 저장 및 결합하고, 기계 학습을 위한 Azure SQL 데이터베이스를 만드는 방법과 같은 유용한 기술을 보여 줍니다.
Azure VM에서 SQL Server 사용하여 기계 학습 모델 빌드 및 배포: 이 문서에서는 학습 데이터 및 예측을 저장하기 위한 원본으로 Azure VM에서 호스트되는 SQL Server 데이터베이스를 사용하는 방법에 대해 설명합니다. 또한 기능 엔지니어링 및 기능 선택에 관계형 데이터베이스를 사용하는 방법을 보여 줍니다.
Azure SQL Data Warehouse Azure ML 사용하는 방법: Azure SQL Data Warehouse 데이터를 사용하여 클러스터링 모델을 빌드하는 방법을 보여 줍니다.
SQL Data Warehouse Machine Learning 사용: Azure SQL Data Warehouse 데이터를 사용하여 가격 책정을 예측하는 회귀 모델을 만드는 방법을 보여 줍니다.
기술 정보
이 섹션에는 구현 세부 정보, 팁, 자주 묻는 질문에 대한 답변이 포함되어 있습니다.
일반적인 질문
다른 지역에서 데이터베이스 사용
Azure SQL Database 또는 SQL Data Warehouse 기계 학습 계정과 다른 지역에 있는 경우 쓰기 속도가 느려질 수 있습니다.
또한 컴퓨팅 노드가 스토리지 계정과 다른 지역에 있는 경우 구독의 데이터 수신 및 송신에 대한 요금이 청구됩니다.
출력 데이터의 일부 문자가 올바르게 표시되지 않는 이유
Machine Learning UTF-8 인코딩을 지원합니다. 데이터베이스의 문자열 열에서 다른 인코딩을 사용하는 경우 문자가 올바르게 저장되지 않을 수 있습니다.
또한 Machine Learning 같은 데이터 형식money
을 출력할 수 없습니다.
모듈 매개 변수
Name | 범위 | Type | 기본값 | 설명 |
---|---|---|---|---|
데이터 원본 | 목록 | 데이터 원본 또는 싱크 | Azure Blob Storage | 데이터 원본은 HTTP, FTP, 익명 HTTPS 또는 FTPS, Azure BLOB Storage의 파일, Azure 테이블, Azure SQL Database 또는 Azure SQL Data Warehouse, Hive 테이블 또는 OData 엔드포인트일 수 있습니다. |
데이터베이스 서버 이름 | any | String | 없음 | |
데이터베이스 이름 | any | String | 없음 | |
서버 사용자 계정 이름 | any | String | 없음 | |
서버 사용자 계정 암호 | 없음 | |||
저장할 열의 쉼표로 구분된 목록 | 없음 | |||
데이터 테이블 이름 | any | String | 없음 | |
쉼표로 구분된 데이터 테이블 열 목록 | String | String | 없음 | String |
SQL Azure 작업당 작성된 행의 수 | String | 정수 | 50 | String |
캐시된 결과 사용 | TRUE/FALSE | 부울 | FALSE | 모듈은 유효한 캐시가 없는 경우에만 실행됩니다. 그렇지 않으면 이전 실행에서 캐시된 데이터를 사용합니다. |
예외
예외 | 설명 |
---|---|
오류 0027 | 두 개체의 크기가 같아야 하지만 다른 경우 예외가 발생합니다. |
오류 0003 | 입력 중 하나 이상이 null이거나 비어 있으면 예외가 발생합니다. |
오류 0029 | 잘못된 URI가 전달되면 예외가 발생합니다. |
오류 0030 | 파일을 다운로드할 수 없으면 예외가 발생합니다. |
오류 0002 | 하나 이상의 매개 변수를 구문 분석할 수 없거나 지정된 형식을 대상 방법에 필요한 형식으로 변환할 수 없으면 예외가 발생합니다. |
오류 0009 | Azure 저장소 계정 이름 또는 컨테이너 이름을 잘못 지정하는 경우 예외가 발생합니다. |
오류 0048 | 파일을 열 수 없으면 예외가 발생합니다. |
오류 0015 | 데이터베이스 연결에 실패하면 예외가 발생합니다. |
오류 0046 | 지정한 경로에 디렉터리를 만들 수 없으면 예외가 발생합니다. |
오류 0049 | 파일을 구문 분석할 수 없으면 예외가 발생합니다. |
Studio(클래식) 모듈과 관련된 오류 목록은 Machine Learning 오류 코드를 참조하세요.
API 예외 목록은 MACHINE LEARNING REST API 오류 코드를 참조하세요.
참고 항목
데이터 가져오기
데이터 내보내기
Azure Blob Storage에 내보내기
Hive 쿼리로 내보내기
Azure Table로 내보내기