Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
В этой статье используется функция инвентаризации хранилища BLOB-объектов Azure и Azure Synapse для вычисления количества BLOB-объектов и их общего размера для каждого контейнера. Эти значения полезны при оптимизации использования BLOB в каждом контейнере.
Необходимые компоненты
Включение отчетов инвентаризации
Первым шагом в этом методе является включение отчетов инвентаризации в учетной записи хранения. Возможно, вам придется ждать до 24 часов после активации отчетов об инвентаризации, чтобы создать первый отчет.
Если у вас есть отчет об инвентаризации для анализа, назначьте себе роль Чтение данных хранилища Blob, чтобы предоставить себе доступ на чтение к контейнеру, где находится CSV-файл отчета. Обязательно используйте адрес электронной почты учетной записи, которую вы используете для запуска отчета. Чтобы узнать, как назначить роль Azure пользователю с помощью управления доступом на основе ролей Azure (Azure RBAC), следуйте инструкциям, приведенным в статье " Назначение ролей Azure" с помощью портала Azure.
Замечание
Чтобы вычислить размер блоба из инвентарного отчета, обязательно включите поле схемы Content-Length в ваше правило.
Создание рабочей области Azure Synapse
Затем создайте рабочую область Azure Synapse , в которой будет выполняться SQL-запрос, чтобы сообщить о результатах инвентаризации.
Создание SQL-запроса
После создания рабочей области Azure Synapse выполните следующие действия.
Перейдите по адресу https://web.azuresynapse.net.
Выберите вкладку "Разработка " в левом крае.
Выберите знак "Большой плюс" (+), чтобы добавить элемент.
Выберите скрипт SQL.
Запуск SQL-запроса
Выполните следующие действия.
Добавьте следующий SQL-запрос в рабочую область Azure Synapse для чтения CSV-файла инвентаризации.
bulkДля параметра используйте URL-адрес CSV-файла отчета инвентаризации, который требуется проанализировать.SELECT LEFT([Name], CHARINDEX('/', [Name]) - 1) AS Container, COUNT(*) As TotalBlobCount, SUM([Content-Length]) As TotalBlobSize FROM OPENROWSET( bulk '<URL to your inventory CSV file>', format='csv', parser_version='2.0', header_row=true ) AS Source GROUP BY LEFT([Name], CHARINDEX('/', [Name]) - 1)Назовите SQL-запрос в области свойств справа.
Опубликуйте SQL-запрос, нажав клавиши CTRL+S или нажав кнопку "Опубликовать все ".
Нажмите кнопку "Выполнить ", чтобы выполнить SQL-запрос. Количество BLOB-объектов и общий размер каждого контейнера отображаются на панели результатов .