У меня есть база данных с приростом более 100 Гб в неделю и 5 Тб в год.
Поскольку это финансовые данные, мы не можем их очистить. Если хранить эти данные не менее 10 лет, размер составит 50 ТБ.
Пожалуйста, предложите, как мы можем разместить этот объем данных на виртуальных машинах Azure с ограничением диска 1 ТБ в Azure.
Спасибо, Субхенду
На самом деле есть два подхода, которые вы можете использовать:
Хранилище данных SQL Azure использует подход, аналогичный тому, что вы делаете сейчас, используя виртуальную машину, на которой выполняется SQL, но сочетает его с хранилищем Azure и уровнем управления, чтобы помочь вам распределить данные по нескольким узлам и нескольким местам хранения. Это также позволяет вам масштабировать ваши вычисления в соответствии с нагрузкой вашего запроса.
Вместо этого эластичная база данных Azure SQL использует службу Azure SQL PaaS, а не виртуальные машины, и работает с сегментированием данных по нескольким экземплярам. Он предоставляет клиентские библиотеки и механизм заданий, которые помогут вам выполнять запросы по нескольким шардам.
Ответ Сэма Когана точный. Но несколько других моих предложений:
Используйте кластерные хранилища столбцов. Эти 50 ТБ могут быстро превратиться в 2-10 ТБ на диске после сжатия.
Виртуальная машина GS5 (самая большая на данный момент) может иметь 64 диска по 1 ТБ каждая, подключенная и распределенная в гигантский пул хранения.
Если вы выберете самую большую виртуальную машину и смонтируете максимальное количество дисков, вы можете рассмотреть возможность использования Файлы данных SQL в хранилище BLOB-объектов в дополнение к файлам данных SQL на диске. Таким образом можно легко получить 50 ТБ.