Azure Table로 내보내기

이 문서에서는 Azure Machine Learning Studio (클래식)의 데이터 내보내기 모듈에서 Azure로 내보내기 옵션을 사용 하는 방법을 설명 합니다.

참고

적용 대상: Machine Learning Studio (클래식)

이 콘텐츠는 Studio (클래식)에만 해당 됩니다. Azure Machine Learning 디자이너에는 비슷한 끌어서 놓기 모듈이 추가 되었습니다. 이 문서에서는 두 가지 버전을 비교 하는방법에 대해 자세히 알아보세요.

이 옵션은 기계 학습 실험에서 Azure 테이블로 결과 또는 중간 데이터를 내보내려는 경우에 유용 합니다. Azure 테이블 서비스는 대량의 구조화 된 비관계형 데이터를 저장할 수 있는 Azure의 데이터 관리 서비스입니다. Azure 내부 및 외부에서 인증 된 호출을 수락 하는 NoSQL 데이터 저장소입니다.

Azure 테이블로 데이터를 내보내는 방법

  1. 데이터 내보내기 모듈을 실험에 추가 합니다. 이 모듈은 Studio (클래식)의 데이터 입력 및 출력 범주에서 찾을 수 있습니다.

  2. Azure 테이블 저장소로 내보내려는 데이터를 생성 하는 모듈에 연결 합니다.

  3. 인증 유형 옵션을 설정 하 여 공용 공유 리소스 또는 로그인 자격 증명이 필요한 개인 저장소 계정에 데이터를 내보낼지 여부를 지정 합니다.

    • 공용 (SAS url): 계정이 SAS url 을 통해 액세스를 지 원하는 경우이 옵션을 선택 합니다. 테이블 SAS uri 필드에 계정 및 공용 blob을 정의 하는 전체 URI를 입력 하거나 붙여 넣습니다.

      SAS URL은 Azure storage 유틸리티를 사용 하 여 생성할 수 있는 시간 범위 액세스 URL입니다. SAS URL을 통해 액세스할 수 있는 페이지에서 데이터는 CSV, TSV 및 ARFF 형식만 사용 하 여 저장할 수 있습니다.

    • 계정: 데이터가 개인 계정에 있는 경우이 옵션을 선택 합니다. 또한 계정 이름 및 키를 포함 한 자격 증명을 제공 해야 합니다.

  4. 보안 된 개인 저장소로 데이터를 내보내려면 계정에 액세스 하는 데 필요한 자격 증명을 제공 합니다.

    • 테이블 계정 이름: 액세스 하려는 blob이 포함 된 계정의 이름을 입력 하거나 붙여 넣습니다. 예를 들어 저장소 계정의 전체 URL이 인 경우 https://myshared.table.core.windows.net 을 입력 myshared 합니다.

    • 테이블 계정 키: 저장소 계정에 연결 된 액세스 키를 붙여넣습니다.

    • 테이블 이름: 읽으려는 특정 테이블의 이름을 입력 합니다.

  5. 열 속성을 사용 하 여 테이블 저장소에 저장할 열과 테이블 스키마를 정의 하는 데 사용할 열을 지정 합니다.

    • 파티션 키: Azure Storage의 테이블에 대해 저장 된 데이터 집합을 분할 하는 데 사용 해야 하는 열을 선택 합니다. Azure의 테이블은 저장소 노드에서 부하 분산을 지원하기 위해 분할됩니다. 모든 테이블 엔터티는 파티션으로 구성 됩니다. 따라서 PartitionKey 속성은 모든 테이블 작업에 필요 합니다.

    • Azure 테이블 행 키: rowkey 속성에 사용할 열을 선택 합니다. RowKey 속성은 테이블의 모든 엔터티에 필요한 시스템 속성입니다. PartitionKey 속성과 함께 테이블의 모든 행에 대 한 고유 인덱스를 형성 합니다.

    참고

    RowkeyPartitionKey 에 대해 다른 열을 사용 해야 합니다. RowKey 또는 PartitionKey에 대해 선택한 열이 대상 열 목록에도 포함 되어 있는지 확인 합니다. 그렇지 않으면 오류가 발생 합니다.

    • Azure 테이블 원본 열: azure 테이블에 저장 하려는 데이터 집합에서 추가 열을 선택 합니다. PartitionKeyrowkey 에 대해 선택한 열도 포함 해야 합니다.

    Azure Storage 테이블에 대 한 자세한 내용은 테이블 서비스 데이터 모델 이해를 참조 하세요.

  6. 테이블에 쓸 열의 이름을 지정 합니다.

    중요

    Rowkey, PartitionKey 및 all 원본 열을 포함 하 여 테이블에 출력 하는 모든 열에 대해 열 이름을 제공 해야 합니다.

    제공한 열 이름 수가 출력 열 수와 일치 하지 않으면 오류가 발생 합니다.

    새 열 이름을 입력 하는 경우 원본 열의 열 인덱스 순서 대로 해당 이름을 제공 해야 합니다.

  7. Azure 테이블 쓰기 모드: 데이터가 Azure 테이블에 이미 있는 경우 내보내는 데이터 의 동작을 지정 합니다.

    • 삽입: Insert Entity 작업은 PartitionKeyrowkey 속성의 조합에서 형성 된 고유 기본 키를 사용 하 여 새 엔터티를 삽입 합니다.

    • Merge: Merge Entity 작업은 엔터티의 속성을 업데이트 하 여 기존 엔터티를 업데이트 합니다. 이 작업에서는 기존 엔터티를 바꾸지 않습니다.

    • Replace: Update Entity 작업은 테이블에서 지정 된 엔터티의 내용을 바꿉니다.

    • InsertOrReplace: InsertOrReplace Entity 엔터티가 없는 경우 작업에서 엔터티를 삽입 합니다. 엔터티가 있는 경우 기존 엔터티를 바꿉니다.

    • InsertOrMerge: InsertOrMerge Entity 엔터티가 없는 경우 작업에서 엔터티를 삽입 합니다. 엔터티가 있으면 제공된 엔터티 속성을 이미 있는 속성과 병합합니다.

  8. 캐시 된 결과 사용: 실험을 실행할 때마다 데이터를 새로 고칠지 여부를 나타냅니다.

    이 옵션을 선택 하면 데이터 내보내기 모듈은 처음으로 실험을 실행할 때 지정 된 테이블에 데이터를 저장 하 고, 업스트림 변경 내용이 없으면 쓰기를 수행 하지 않습니다.

    이 옵션의 선택을 취소 하면 데이터가 동일한 지 여부에 관계 없이 실험을 실행할 때마다 데이터가 대상에 기록 됩니다.

  9. 실험을 실행합니다.

기술 정보

이 섹션에는 구현 세부 정보, 팁 및 질문과 대답 (faq)이 포함 되어 있습니다.

일반적인 질문

기존 테이블에 쓸 때 오류가 발생 하는 이유는 무엇 인가요?

테이블의 스키마를 검사 하 여 열 이름과 데이터 형식이 동일한 지 확인 합니다. 예를 들어 Azure 테이블 저장소에서 ID 열은 문자열 이어야 합니다.

오류가 발생 하는 경우 오류 0027: 전달 된 개체의 크기가 일치 하지 않습니다. 테이블이 지정 된 컨테이너에 있는지 확인 하십시오. 현재 Azure ML은 기존 테이블에만 쓸 수 있습니다.

기존 열을 찾을 수 없다는 오류 메시지가 표시 되는 이유는 무엇 인가요?

실험을 실행 하지 않은 경우에는 데이터 내보내기에서 업스트림 열이 검색 되지 않을 수 있습니다. 실험에서 업스트림 변경을 수행 하는 경우 데이터 내보내기 모듈을 제거한 다음 추가 하 고 다시 구성 해야 할 수 있습니다.

동일한 데이터를 불필요 하 게 다시 작성 하는 것을 방지 하려면 어떻게 해야 하나요?

어떤 이유로 든 실험의 데이터가 변경 되 면 데이터 내보내기 모듈은 항상 새 데이터를 기록 합니다.

그러나 결과에 영향을 주지 않는 다른 변경 내용으로 실험을 실행 하는 경우 캐시 된 결과 사용 옵션을 TRUE로 설정 합니다. 이 모듈은 이전에 동일한 옵션을 사용 하 여 실험을 실행 했는지 확인 하 고, 이전 결과가 발견 되 면 데이터가 Azure 테이블에 기록 되지 않습니다.

다른 지역으로 데이터를 내보낼 수 있습니까?

예. 그러나 저장소 계정이 machine learning 실험에 사용 되는 계산 노드와 다른 지역에 있는 경우 데이터 액세스 속도가 느려질 수 있습니다. 또한 구독에 대 한 데이터 수신 및 송신에 대 한 요금이 청구 됩니다.

예제

이러한 기계 학습 모듈을 사용 하는 방법에 대 한 예제는 Azure AI Gallery를 참조 하세요.

모듈 매개 변수

공용 또는 SAS-공용 옵션

Name 범위 Type 기본값 설명
테이블 SAS URI any String

계정-개인 계정 옵션

Name 범위 Type 기본값 설명
테이블 계정 이름
테이블 계정 키 any SecureString

스토리지 옵션

Name 범위 Type 기본값 설명
테이블 이름 String 없음
파티션 키 any SecureString 없음 테이블을 분할할 때 키로 사용할 열을 선택 합니다. 열을 선택 하지 않은 경우 모든 항목에 대 한 파티션 키로 열 이름을 입력 합니다.
Azure 테이블 행 키 any ColumnPicker 없음 테이블 행에 대 한 고유 식별자가 포함 된 열을 선택 합니다. GUID 기반 행 키로 기본값 설정
Azure 테이블 원본 열 any ColumnPicker 없음 이름 또는 열 인덱스를 기준으로 테이블에 포함할 열을 지정 합니다.
Azure 테이블 대상 열 any String 없음 대상 테이블에 사용할 열의 이름을 입력 합니다.
Azure 테이블 쓰기 모드 List: Insert, Merge, Replace, InsertOrReplace, InsertOrMerge 열거형 없음
캐시 된 결과 사용 TRUE/FALSE 부울 FALSE 유효한 캐시가 없으면 모듈만 실행 됩니다. 그렇지 않으면 이전 실행의 캐시 된 데이터를 사용 합니다.

예외

예외 설명
오류 0027 두 개체의 크기가 같아야 하지만 다른 경우 예외가 발생합니다.
오류 0003 입력 중 하나 이상이 null이거나 비어 있으면 예외가 발생합니다.
오류 0029 잘못된 URI가 전달되면 예외가 발생합니다.
오류 0030 파일을 다운로드할 수 없으면 예외가 발생합니다.
오류 0002 하나 이상의 매개 변수를 구문 분석할 수 없거나 지정된 형식을 대상 방법에 필요한 형식으로 변환할 수 없으면 예외가 발생합니다.
오류 0009 Azure 저장소 계정 이름 또는 컨테이너 이름을 잘못 지정하는 경우 예외가 발생합니다.
오류 0048 파일을 열 수 없으면 예외가 발생합니다.
오류 0046 지정한 경로에 디렉터리를 만들 수 없으면 예외가 발생합니다.
오류 0049 파일을 구문 분석할 수 없으면 예외가 발생합니다.

스튜디오 (클래식) 모듈과 관련 된 오류 목록은 Machine Learning 오류 코드를 참조 하세요.

API 예외 목록은 Machine Learning REST API 오류 코드를 참조 하세요.

참고 항목

데이터 가져오기
데이터 내보내기
Azure SQL Database로 내보내기
Azure Blob Storage로 내보내기
Hive 쿼리로 내보내기