다음을 통해 공유


Azure Data Lake Storage Gen2에서 알려진 문제

이 문서에서는 계층적 네임스페이스 기능이 활성화된 계정의 제한 사항 및 알려진 문제를 설명합니다.

참고 항목

이 문서에 설명된 기능 중 일부는 NFS(네트워크 파일 시스템) 3.0 지원을 사용하도록 설정된 계정에서 지원되지 않을 수 있습니다. 다양한 기능을 사용하도록 설정한 경우 기능 지원의 영향을 표시하는 표를 보려면 Azure Storage 계정의 Blob Storage 기능 지원을 참조하세요.

지원되는 Blob 스토리지 기능

점점 더 많은 수의 Blob Storage 기능이 계층 구조 네임스페이스가 있는 계정에서 작동합니다. 전체 목록은 Azure Data Lake Storage Gen2에서 사용할 수 있는 Blob Storage 기능을 참조하세요.

지원되는 Azure 서비스 통합

Azure Data Lake Storage Gen2는 데이터를 수집하고, 분석을 수행하고, 시각적 표현을 만드는 데 사용할 수 있는 여러 Azure 서비스를 지원합니다. 지원되는 Azure 서비스 목록은 Azure Data Lake Storage Gen2를 지원하는 Azure 서비스를 참조하세요.

자세한 내용은 Azure Data Lake Storage Gen2를 지원하는 Azure 서비스를 참조하세요.

지원되는 오픈 소스 플랫폼

Data Lake Storage Gen2는 몇 가지 오픈 소스 플랫폼에서 지원합니다. 전체 목록은 Azure Data Lake Storage Gen2를 지원하는 오픈 소스 플랫폼을 참조하세요.

자세한 내용은 Azure Data Lake Storage Gen2를 지원하는 오픈 소스 플랫폼을 참조하세요.

Blob Storage API

Data Lake Storage Gen2 API, NFS 3.0 및 Blob API는 동일한 데이터에서 작업할 수 있습니다.

이 섹션에서는 Blob API, NFS 3.0 및 Data Lake Storage Gen2 API를 사용하여 동일한 데이터에서 작업하는 경우의 문제점과 제한 사항에 대해 설명합니다.

  • Blob API, NFS 3.0 및 Data Lake Storage API를 사용하여 한 파일의 동일한 인스턴스에 작성할 수는 없습니다. Data Lake Storage Gen2 API 또는 NFS 3.0을 사용하여 파일에 쓰면 해당 파일의 블록은 블록 목록 가져오기 Blob API에 대한 호출에 표시되지 않습니다. 오직 덮어쓰기를 사용할 때만 허용됩니다. 0 자르기 옵션을 통해 API 또는 NFS 3.0을 사용하여 파일/Blob을 덮어쓸 수 있습니다.

    경로 - 만들기 작업과 같은 Data Lake Storage Gen2 작업을 사용하여 만든 Blob은 PutBlock 또는 PutBlockList 작업을 사용하여 덮어쓸 수 없지만 PutBlob에서 사용하는 해당 api-version에서 적용되는 최대 허용 Blob 크기에 따라 PutBlob 작업을 사용하여 덮어쓸 수 있습니다.

  • 구분 기호를 지정하지 않고 Blob 나열 작업을 사용하면 결과에 디렉터리와 Blob이 모두 포함됩니다. 구분 기호를 사용하려면 슬래시(/)만 사용합니다. 이것이 유일하게 지원되는 구분 기호입니다.

  • Blob 삭제 API를 사용하여 디렉터리를 삭제하면 디렉터리가 비어있는 경우에만 삭제됩니다. 따라서, Blob API 디렉터리 삭제는 재귀적으로 사용할 수 없습니다.

다음과 같은 Blob REST API는 지원되지 않습니다.

비관리형 VM 디스크는 계층 구조 네임스페이스가 있는 계정에서 지원되지 않습니다. 스토리지 계정에서 계층 구조 네임스페이스를 활성화하려면, 계층 구조 네임스페이스 기능을 활성화하지 않은 스토리지 계정에 비관리형 VM 디스크를 배치합니다.

ACL(액세스 제어 목록)을 재귀적으로 설정하기 위한 지원

ACL 변경 내용을 상위 디렉터리에서 하위 항목으로 재귀적으로 적용하는 기능을 일반적으로 사용할 수 있습니다. 이 기능은 현재 릴리스에서는 Azure Storage 탐색기, PowerShell, Azure CLI 및 .NET, Java 및 Python SDK를 사용하여 ACL 변경 내용을 적용할 수 있습니다. Azure Portal에서는 아직 지원되지 않습니다.

ACL(액세스 제어 목록) 및 익명 읽기 액세스

컨테이너에 익명 읽기 액세스가 부여된 경우 ACL은 해당 컨테이너 또는 해당 컨테이너의 파일에 영향을 주지 않습니다. 읽기 요청에만 영향을 줍니다. 쓰기 요청은 여전히 ACL을 준수합니다. Blob 데이터에 대한 모든 요청에 대한 권한 부여를 요구하는 것이 좋습니다.

AZCopy

최신 버전의 AzCopy(AzCopy v10)만 사용하세요. AzCopy v8.1과 같은 이전 버전의 AzCopy는 지원되지 않습니다.

Azure Storage Explorer

버전 1.6.0 이상에서만 사용 가능합니다.

Azure Portal의 스토리지 브라우저

Azure Portal에 표시되는 스토리지 브라우저에서는 경로를 지정하여 파일 또는 폴더에 액세스할 수 없습니다. 대신 폴더를 탐색하여 파일에 연결해야 합니다. 따라서 ACL이 사용자에게 파일에 대한 읽기 권한을 부여하지만 파일로 이어지는 모든 폴더에 대한 읽기 권한이 없는 경우 해당 사용자는 스토리지 브라우저에서 파일을 볼 수 없습니다.

제3자 애플리케이션

REST API를 사용하는 제3자 애플리케이션은 Data Lake Storage Gen2를 사용하는 경우 계속 사용 가능합니다. BLOB API를 호출하는 애플리케이션은 일반적으로 작동합니다.

WASB(Windows Azure Storage Blob) 드라이버

현재 Blob API와만 작동하도록 설계된 WASB 드라이버는 몇 가지 일반적인 시나리오에서 문제가 발생합니다. 계층 구조 네임스페이스가 활성화된 스토리지 계정에 대한 클라이언트인 경우에는 특히 그렇습니다. Data Lake Storage에서 다중 프로토콜 액세스를 사용해도 이 문제는 완화되지 않습니다.

WASB 드라이버를 계층적 네임스페이스가 활성화된 스토리지 계정에 대한 클라이언트로 사용하는 것은 지원되지 않습니다. 대신 Hadoop 환경에서 ABFS(Azure Blob File System) 드라이버를 사용하는 것이 좋습니다. 온-프레미스 Hadoop 환경에서 Hadoop branch-3 이전 버전으로 마이그레이션하려는 경우에는 사용자와 사용자 회사에 올바른 경로를 사용하여 연락할 수 있도록 Azure 지원 티켓을 열어 주시기 바랍니다.

Blob 기능에 대한 일시 삭제

일시 삭제된 파일 또는 디렉터리의 부모 디렉터리 이름이 변경되면 일시 삭제된 항목이 Azure Portal에 올바르게 표시되지 않을 수 있습니다. 이러한 경우 PowerShell 또는 Azure CLI를 사용하여 일시 삭제된 항목을 나열하고 복원할 수 있습니다.

이벤트

계정에 이벤트 구독이 있는 경우 보조 엔드포인트에서 읽기 작업을 수행하면 오류가 발생합니다. 이 문제를 해결하려면 이벤트 구독을 제거합니다. 비계층 구조 네임스페이스 사용 계정에 Data Lake Storage 엔드포인트(abfss://URI)를 사용하면 이벤트가 생성되지 않지만 Blob 엔드포인트(wasb:// URI)는 이벤트를 생성합니다.

보조 엔드포인트에 대한 읽기 액세스는 RA-GRS(읽기 액세스 지역 중복 스토리지) 또는 RA-GZRS(읽기 액세스 지역 영역 중복 스토리지)를 사용하도록 설정한 경우에만 사용할 수 있습니다.