Известные проблемы с Azure Data Lake Storage 2-го поколения
В этой статье описываются ограничения и известные проблемы для учетных записей с включенной функцией иерархического пространства имен.
Примечание.
Некоторые функции, описанные в этой статье, могут не поддерживаться в учетных записях с поддержкой NFS 3.0. Таблицу, в которой представлено влияние поддержки функций при включении различных возможностей см. в статье Поддержка возможностей хранилища BLOB-объектов в учетных записях хранения Azure
Поддерживаемые функции хранилища BLOB-объектов
Все большее число возможностей хранилища BLOB-объектов поддерживают учетные записи с иерархическим пространством имен. Полный список таких возможностей см. в статье Функции хранилища BLOB-объектов, доступные в Azure Data Lake Storage 2-го поколения.
Интеграции поддерживаемых служб Azure
Azure Data Lake Storage 2-го поколения поддерживает несколько служб Azure, которые можно использовать для приема данных, выполнения аналитики и создания визуальных представлений. Список поддерживаемых служб Azure см. в статье Службы Azure, которые поддерживают Azure Data Lake Storage 2-го поколения.
Дополнительные сведения см. в статье Службы Azure, которые поддерживают Azure Data Lake Storage 2-го поколения.
Поддерживаемые платформы с открытым исходным кодом
Несколько платформ с открытым исходным кодом, которые поддерживают Data Lake Storage 2-го поколения. Полный список см. в статье Платформы с открытым кодом, поддерживающие Azure Data Lake Storage 2-го поколения.
Дополнительные сведения см. в статье Платформы с открытым кодом, поддерживающие Azure Data Lake Storage 2-го поколения.
API хранилища BLOB-объектов
NFS 3.0, API больших двоичных объектов и API Data Lake Storage 2-го поколения могут обрабатывать одни и те же данные.
В этом разделе описываются проблемы и ограничения, возникающие при использования API больших двоичных объектов, NFS 3.0 и API Data Lake Storage 2-го поколения для обработки одних и тех же данных.
Api больших двоичных объектов, NFS 3.0 и Data Lake служба хранилища нельзя использовать для записи в тот же экземпляр файла. Если вы записываете в файл с помощью api Data Lake Storage 2-го поколения или NFS 3.0, блоки этого файла не будут видны для вызовов API blOB-объектов get Block List. Единственным исключением является перезапись. Можно перезаписать файл/BLOB-объект с помощью API или NFS 3.0 с использованием варианта усечения до нуля.
Большие двоичные объекты, созданные с помощью операции Data Lake Storage 2-го поколения, такой как Путь — создание, нельзя перезаписать с помощью операций PutBlock или PutBlockList, но их можно перезаписать с помощью операции PutBlob с максимальным допустимым размером большого двоичного объекта, введенным соответствующей версией API, используемой PutBlob.
При использовании операции "Список БОЛЬШИХ двоичных объектов" без указания разделителя результаты включают как каталоги, так и большие двоичные объекты. Если вы хотите указать разделитель, используйте только прямую косую черту (
/
). Это единственный поддерживаемый разделитель.Если вы используете API удаления BLOB-объектов для удаления каталога, этот каталог удаляется только в том случае, если он пуст. Это означает, что API больших двоичных объектов невозможно использовать для рекурсивного удаления каталогов.
Следующие REST API больших двоичных объектов не поддерживаются:
- Put BLOB (вставка BLOB-объекта);
- Put Page
- Get Page Ranges (получение диапазона страницы);
- Incremental Copy Blob (инкрементная копия Blob);
- Put Page from URL (размещение страницы по URL-адресу);
Неуправляемые диски виртуальных машин не поддерживаются в учетных записях с иерархическим пространством имен. Если вы хотите использовать в учетной записи хранения иерархические пространства имен, разместите неуправляемые диски виртуальных машин в другой учетной записи хранения, для которой не включена функция иерархического пространства имен.
Поддержка рекурсивной настройки списков управления доступом (ACL)
Возможность рекурсивно применять изменения ACL из родительского каталога к дочерним элементам является общедоступной. В текущем выпуске этой возможности можно применять изменения списков ACL при помощи Обозревателя службы хранилища Azure, PowerShell, Azure CLI и пакетов SDK для .NET, Java и Python. Поддержка пока недоступна для портал Azure.
Списки управления доступом (ACL) и анонимный доступ на чтение
Если для контейнера предоставлен анонимный доступ на чтение, то списки управления доступом не влияют на этот контейнер и (или) файлы в нем. Это затрагивает только запросы на чтение. Запросы на запись будут по-прежнему учитывать списки управления доступом. Мы рекомендуем авторизации для всех запросов к данным BLOB-объектов.
AzCopy
Всегда используйте только последнюю версию AzCopy (AzCopy 10). Более ранние версии AzCopy, такие как AzCopy версии 8.1, не поддерживаются.
Обозреватель службы хранилища Azure
Используйте только версии 1.6.0
или более поздние.
браузер служба хранилища в портал Azure
В браузере хранилища, который отображается в портал Azure, невозможно получить доступ к файлу или папке, указав путь. Вместо этого необходимо просмотреть папки, чтобы получить доступ к файлу. Таким образом, если ACL предоставляет пользователю доступ на чтение к файлу, но не доступ на чтение ко всем папкам, ведущим к файлу, этот пользователь не сможет просмотреть файл в браузере хранилища.
Приложения третьих лиц
Сторонние приложения, использующие REST API, скорее всего, будут успешно работать в сочетании с приложениями Data Lake Storage 2-го поколения. Приложения, которые вызывают API BLOB-объектов, скорее всего, будут работать.
Драйвер Windows Azure Storage Blob (WASB)
В настоящее время драйвер WASB, который создавался только для работы с API больших двоичных объектов, вызывает ряд проблем в некоторых типовых сценариях, В частности, если клиент является клиентом для учетной записи хранения с поддержкой иерархического пространства имен. Доступ с использованием нескольких протоколов в Azure Data Lake Storage не позволяет решить эти проблемы.
Использование драйвера WASB в качестве клиента для учетной записи хранения с включенным иерархическим пространством имен не поддерживается. Вместо него мы рекомендуем использовать драйвер ABFS (Azure BLOB File System) в среде Hadoop. Если вы пытаетесь перенести локальную среду Hadoop с версией более ранней версии, чем Hadoop branch-3, откройте запрос в службу поддержки Azure, чтобы мы могли связаться с вами по правильному пути вперед для вас и вашей организации.
Возможность обратимого удаления для больших двоичных объектов
Если родительские каталоги для файлов или каталогов с включенным обратимым удалением будут переименованы, такие элементы могут отображаться неправильно на портале Azure. В таких случаях можно использовать PowerShell или Azure CLI для отображения и восстановления элементов с включенным обратимым удалением.
События
Если учетная запись имеет подписку на событие, операции чтения на дополнительной конечной точке будут завершаться ошибкой. Чтобы устранить эту проблему, удалите подписки на события. Использование конечной точки Data Lake служба хранилища (abfss://URI) для учетных записей, не включенных в иерархическое пространство имен, не создает события, но конечная точка BLOB-объектов (wasb:// URI) создаст события.
Совет
Чтобы получить доступ на чтение в дополнительном регионе, необходимо включить геоизбыточное хранилище с доступом на чтение (RA-GRS) или хранилище, геоизбыточное между зонами, с доступом на чтение (RA-GZRS).