В настоящее время я запускаю экземпляр MS SQL Server 2014 (12.1.4100.1) на выделенном компьютере, который я арендую за 270 долларов США в месяц, со следующими характеристиками:
- Процессор Intel Xeon E5-1660 (шесть физических ядер 3,3ghz + hyperthreading + turbo- > 3.9ghz)
- 64 ГБ зарегистрированной памяти DDR3 ECC
- 240 ГБ Intel SSD
- Передача полосы пропускания 45000 ГБ.
Я уже немного работал с Azure SQL Database и развлекал идею перехода на свою платформу. Я запустил базу данных Azure SQL, используя их уровень цен P2 Premium на сервере V12 (просто чтобы проверить все) и загрузил копию моей существующей базы данных (с выделенной машины).
Я запускал несколько наборов запросов бок о бок, один против базы данных на выделенной машине, и один из базы данных P2 Azure SQL. Результаты были шокирующими: моя выделенная машина превосходила (с точки зрения времени выполнения) Azure db огромным запасом каждый раз. Как правило, выделенный экземпляр db заканчивается в пределах от 1/2 до 1/3 времени, которое потребовалось для выполнения Azure db.
Теперь я понимаю много преимуществ платформы Azure. Он управлялся по сравнению с моей не управляемой установкой на выделенном компьютере, у них есть восстановление в определенный момент времени лучше, чем у меня, брандмауэр легко настраивается, гео-репликация и т.д. И т.д. Но у меня есть база данных с сотни таблиц с десятками и сотнями миллионов записей в каждой таблице, а иногда приходится запрашивать несколько стыков и т.д., так что производительность с точки зрения времени выполнения действительно имеет значение. Я просто нахожу это шокирующим, что услуга в $930/month работает плохо, рядом с арендой выделенных машин стоимостью 270 долларов США в месяц. Я все еще довольно новичок в SQL в целом и очень новичок в серверах и т.д., Но разве это не похоже на кого-то еще? Кто-нибудь, возможно, имеет некоторое представление о том, чего я здесь не вижу, или другие "управляемые" функции базы данных Azure SQL, которые, как предполагается, составляют разницу в цене?
В нижней строке я начинаю перерастать даже мои выделенные возможности машины, и я действительно надеялся, что база данных Azure SQL станет хорошим, следующим шагом, но если я что-то не упустил, это не так. Я слишком мал из бизнеса, чтобы выходить на улицу и тратить сотни тысяч на какую-то другую платформу.
У кого-нибудь есть какие-либо советы, если я что-то упускаю, или производительность, которую я вижу в соответствии с тем, что вы ожидаете? Есть ли у меня какие-либо другие варианты, которые могут обеспечить лучшую производительность, чем выделенный компьютер, который я запускаю в настоящее время, но не стоит десятки тысяч в месяц? Есть ли что-то, что я могу сделать (настройка/настройка) для моей базы данных Azure SQL, которая увеличит время выполнения? Опять же, любая помощь приветствуется.
EDIT: Позвольте мне пересмотреть мой вопрос, чтобы, возможно, сделать его более понятным: это то, что я вижу с точки зрения максимальной производительности исполнения, ожидаемой, когда выделенный сервер @$270/месяц хорошо превзошел Microsoft Azure SQL DB P2 уровень @$930/месяц? Игнорируйте другие "льготы", такие как управляемые или неуправляемые, игнорируйте намеренное использование, такое как Azure, предназначенные для производства и т.д. Мне просто нужно знать, не хватает ли я чего-то с Azure SQL DB или если я действительно должен получить МНОГО лучше производительность из одного выделенного компьютера.