Hive 쿼리로 내보내기

중요

Machine Learning Studio(클래식)에 대한 지원은 2024년 8월 31일에 종료됩니다. 해당 날짜까지 Azure Machine Learning으로 전환하는 것이 좋습니다.

2021년 12월 1일부터 새로운 Machine Learning Studio(클래식) 리소스를 만들 수 없습니다. 2024년 8월 31일까지는 기존 Machine Learning Studio(클래식) 리소스를 계속 사용할 수 있습니다.

ML Studio(클래식) 설명서는 사용 중지되며 나중에 업데이트되지 않을 수 있습니다.

참고

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

유사한 끌어서 놓기 모듈은 Azure Machine Learning 디자이너에서 사용할 수 있습니다.

이 문서에서는 Machine Learning Studio(클래식)의 데이터 내보내기 모듈에서 Hive로 데이터 내보내기 옵션을 사용하는 방법을 설명합니다. 이 옵션은 매우 큰 데이터 세트를 사용하고 기계 학습 실험 데이터를 Hadoop 클러스터 또는 HDInsight 분산 스토리지에 저장하려는 경우에 유용합니다. MapReduce 작업을 사용하여 처리할 수 있도록 중간 결과 또는 기타 데이터를 Hadoop으로 내보낼 수도 있습니다.

Hive로 데이터를 내보내는 방법

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

    내보낼 데이터 세트에 모듈을 커넥트.

  2. 데이터 원본의 경우 Hive 쿼리를 선택합니다.

  3. Hive 테이블 이름의 경우 데이터 세트를 저장할 Hive 테이블의 이름을 입력합니다.

  4. HCatalog 서버 URI 텍스트 상자에 클러스터의 정규화된 이름을 입력합니다.

    예를 들어 이름을 mycluster001가진 클러스터를 만든 경우 다음 형식을 사용합니다.

    https://mycluster001.azurehdinsight.net

  5. Hadoop 사용자 계정 이름 텍스트 상자에 클러스터를 프로비전할 때 사용한 Hadoop 사용자 계정을 붙여넣습니다.

  6. Hadoop 사용자 계정 암호 텍스트 상자에 클러스터를 프로비전할 때 사용한 자격 증명을 입력합니다.

  7. 출력 데이터의 위치에 대해 데이터를 저장해야 하는 위치를 나타내는 옵션(HDFS 또는 Azure)을 선택합니다.

    데이터가 HDFS(Hadoop 분산 파일 시스템)에 있는 경우 방금 입력한 것과 동일한 계정 및 암호를 통해 액세스할 수 있어야 합니다.

    데이터가 Azure에 있는 경우 스토리지 계정의 위치와 자격 증명을 제공합니다.

  8. HDFS 옵션을 선택한 경우 HDFS 서버 URI의 경우 접두사 없이 https:// HDInsight 클러스터 이름을 지정합니다.

  9. Azure 옵션을 선택한 경우 스토리지 계정 이름과 모듈이 스토리지에 연결하는 데 사용할 수 있는 자격 증명을 제공합니다.

    • Azure Storage 계정 이름: Azure 계정의 이름을 입력합니다. 예를 들어 스토리지 계정의 전체 URL이 https://myshared.blob.core.windows.net면 입력 myshared합니다.

    • Azure Storage 키: 스토리지 계정에 액세스하기 위해 제공되는 키를 복사하여 붙여넣습니다.

    • Azure 컨테이너 이름: 클러스터의 기본 컨테이너 를 지정합니다. 기본 컨테이너를 파악하는 방법에 대한 팁은 기술 정보 섹션을 참조하세요.

  10. 캐시된 결과 사용: 실험을 실행할 때마다 Hive 테이블을 다시 작성하지 않으려면 이 옵션을 선택합니다. 모듈 매개 변수에 대한 다른 변경 내용이 없는 경우 실험은 모듈이 처음 실행되거나 데이터가 변경된 경우에만 Hive 테이블을 씁니다.

    실험을 실행할 때마다 Hive 테이블을 작성하려면 캐시된 결과 사용 옵션을 선택 취소합니다.

  11. 실험을 실행합니다.

데이터 내보내기 모듈을 사용하는 방법에 대한 예제는 Azure AI 갤러리를 참조하세요.

기술 정보

이 섹션에는 구현 세부 정보, 팁, 자주 묻는 질문에 대한 답변이 포함되어 있습니다.

일반적인 질문

큰 데이터 세트를 작성할 때 메모리 부족 문제를 방지하는 방법

Hadoop 클러스터의 기본 구성이 너무 제한되어 MapReduce 작업 실행을 지원하지 않는 경우가 있습니다. 예를 들어 HDInsight에 대한 이러한 릴리스 정보 에서 기본 설정은 4노드 클러스터로 정의됩니다.

MapReduce 작업의 요구 사항이 사용 가능한 용량을 초과하는 경우 Hive 쿼리는 메모리 부족 오류 메시지를 반환하여 데이터 내보내기 작업이 실패할 수 있습니다. 이 경우 Hive 쿼리에 대한 기본 메모리 할당을 변경할 수 있습니다.

동일한 데이터를 불필요하게 다시 로드하지 않는 방법

실험을 실행할 때마다 Hive 테이블을 다시 만들지 않으려면 캐시된 결과 사용 옵션을 TRUE로 선택합니다. 이 옵션을 TRUE로 설정하면 모듈은 실험이 이전에 실행되었는지 여부를 확인하고 이전 실행이 발견되면 쓰기 작업이 수행되지 않습니다.

사용 팁

클러스터의 기본 컨테이너를 파악하기 어려울 수 있습니다. 다음은 몇 가지 팁입니다.

  • 기본 설정을 사용하여 클러스터를 만든 경우 클러스터를 만든 것과 동시에 이름이 같은 컨테이너가 만들어졌습니다. 해당 컨테이너는 클러스터의 기본 컨테이너입니다.

  • CUSTOM CREATE 옵션을 사용하여 클러스터를 만든 경우 기본 컨테이너를 선택하는 두 가지 옵션이 제공됩니다.

    기존 컨테이너: 기존 컨테이너를 선택한 경우 해당 컨테이너는 클러스터의 기본 스토리지 컨테이너입니다.

    기본 컨테이너 만들기: 이 옵션을 선택한 경우 클러스터와 이름이 같은 컨테이너가 만들어졌으며 해당 컨테이너 이름을 클러스터의 기본 컨테이너로 지정해야 합니다.

모듈 매개 변수

Name 범위 Type 기본값 설명
데이터 원본 목록 데이터 원본 또는 싱크 Azure Blob Storage 데이터 원본은 HTTP/FTP/익명 HTTP 또는 FTPS, Azure Blob 저장소의 파일, Azure 테이블, Azure SQL 데이터베이스, 하이브 테이블 또는 OData 엔드포인트일 수 있습니다.
Hive 테이블 이름 any String 없음 Hive의 테이블 이름
HCatalog 서버 URI any String 없음 Templeton 엔드포인트
Hadoop 사용자 계정 이름 any String 없음 Hadoop HDFS/HDInsight 사용자 이름
Hadoop 사용자 계정 암호 any SecureString 없음 Hadoop HDFS/HDInsight 암호
출력 데이터의 위치 any DataLocation HDFS outputDir에 HDFS 또는 Azure 지정
HDFS 서버 URI any String 없음 HDFS rest 엔드포인트
Azure Storage 계정 이름 any String 없음 Azure Storage 계정 이름
Azure Storage 키 any SecureString 없음 Azure Storage 키
Azure 컨테이너 이름 any String 없음 Azure 컨테이너 이름
캐시된 결과 사용 TRUE/FALSE 부울 FALSE 모듈은 유효한 캐시가 없는 경우에만 실행됩니다. 그렇지 않으면 이전 실행에서 캐시된 데이터를 사용합니다.

예외

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

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

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

참고 항목

데이터 가져오기
데이터 내보내기
Azure SQL Database로 내보내기
Azure Blob Storage에 내보내기
Azure Table로 내보내기