Хранилище таблиц Azure Инкрементное резервное копирование в BLOB-объект хранилища Azure
Есть ли способ сделать резервное копирование Azure Table Storage в Azure Blob инкрементным способом. У AZcopy есть решение для полного резервного копирования таблицы, но не инкрементное.
Можно ли как-нибудь восстановить таблицу хранения Azure, если я удалю ее из проводника хранения Azure?
1 ответ
Мы написали.NET, которая выполняет резервное копирование таблиц и больших двоичных объектов. Вы можете легко реализовать это в триггере таймера лазурной функции.
В этом блоге я объясняю, как реализовать это с помощью функции Azure.
[FunctionName("Function1")]
public static async Task Run([TimerTrigger("0 */5 * * * *")]TimerInfo myTimer, ILogger log, ExecutionContext context)
{
var sourceAccountName = Environment.GetEnvironmentVariable("BackupSourceAccountName");
var sourceKey = Environment.GetEnvironmentVariable("BackupSourceAccountKey");
var backupAzureStorage = new Luminis.AzureStorageBackup.BackupAzureStorage(sourceAccountName, sourceKey, log, context.FunctionAppDirectory);
var destinationAccountName = Environment.GetEnvironmentVariable("BackupDestinationAccountName");
var destinationKey = Environment.GetEnvironmentVariable("BackupDestinationAccountKey");
var destinationContainerName = Environment.GetEnvironmentVariable("BackupDestinationContainer");
// Backup Tables
await backupAzureStorage.BackupAzureTablesToBlobStorage("table1,table2", destinationAccountName, destinationKey, destinationContainerName, "tables");
// Backup Blobs
await backupAzureStorage.BackupBlobStorage("container1,container2", destinationAccountName, destinationKey, destinationContainerName, "blobs");
}
Насколько я знаю, в настоящее время Azure не поддерживает автоматическое резервное копирование данных таблицы в BLOB-объекты.
Нам нужно написать коды для достижения этого требования.
Я предлагаю вам использовать Azure Webjobs/ Function или Azcopy(как вы говорите) для достижения этой цели.
Если вы хотите добиться автоматического резервного копирования данных.
Я предлагаю вам попробовать использовать функцию запуска по таймеру для запуска кодов, которые могут создавать резервные копии данных каждый день или каждую минуту.
Подробнее о том, как использовать таймер, вы можете обратиться к этой статье(функция Azure) или этой(веб-задания).