MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Най-бързият MongoDB на Azure!

Всички твърдят, че са бързи – но нашият пост е по-бърз! През последните няколко седмици екипът ни е зает да извършва сравнителен анализ на системите ни в Azure и резултатите са фантастични.

По-рано тази година, преди да пренесем съществуващата си инфраструктура от AWS към Azure, прекарахме много време в разбиране на структурата на облака на Azure и оптимизиране за най-добра производителност. Реалността е, че Azure е доста различен от AWS и стратегията за производителност, която работи в единия облак, вероятно няма да работи в другия. Нашият екип за разработчици свърши много персонализирана работа върху дисковата архитектура, която използваме в нашите клъстери – целта беше да осигурим най-добрата производителност на диска в Azure. За повече подробности относно нашите предложения вижте нашия MongoDB хостинг на страницата Azure.

TL;DR

1. Производителността на вмъкване в ScaleGrid е поне с 30% по-добра от другите доставчици на монго.
2. ScaleGrid постоянно осигурява около 25% по-добра пропускателна способност както за балансирани (50% четене, 50% запис), така и за тежки (95% запис, 5% четене) работни натоварвания.

Сравнителният анализ беше извършен с помощта на инструмента за сравнителен анализ на облачния сървър на Yahoo (YCSB). YCSB е доста популярен инструмент за измерване на производителността на MongoDB. Екипът на MongoDB също използва YCSB, за да демонстрира подобренията в производителността на MongoDB 3.0 спрямо MongoDB 2.x. По-долу са резултатите за нашата „Голяма“ конфигурация на Azure – „Стандартен A3 – 7GB памет, 4 ядра, 8 дисков RAID, до 4000 IOPS“. Това е доста често срещана конфигурация, използвана от производствените клъстери в Azure. Всички тестове бяха извършени в центъра за данни на Azure US-East.

1. Вмъкване на изпълнение

Тестът за производителност на вмъкване измерва необработения капацитет за вмъкване на вашите MongoDB клъстери. Това е особено важно за клъстери, които хостват тежко натоварване при запис или вмъкване. Тестът беше проведен с 16 YCSB нишки и средното време на изпълнение на теста беше 2 часа:

Резюме:MongoDirector осигурява 30-40% повече пропускателна способност за вмъкване в сравнение с други доставчици на mongo в Azure.

2. Пропускателна способност и латентност

Измерванията на пропускателната способност и латентността бяха направени както за балансирани (50% четене, 50% запис) работни натоварвания, така и за тежки натоварвания при запис (95% запис, 5% четене):

Резюме:ScaleGrid осигурява 20-25% повече пропускателна способност за тежки натоварвания както за четене, така и за запис, като същевременно осигурява по-ниска латентност.

Въпреки че резултатите ни изглеждат доста добри, реалността е, че тепърва започваме с MongoDB на Azure. Опциите за премиум съхранение и локални SSD на Azure ще подобрят този показател още повече. Останете на линия докато пускаме тези функции в производството. Повече подробности за методологията и специфичните параметри ще бъдат предоставени от нашия екип за разработка в следващите публикации.

Ако имате конкретни въпроси относно производителността на конкретен размер или конфигурация на клъстер MongoDB, моля, свържете се с нас на [email protected].


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Свързване с MongoDB през SSL с Node.js

  2. как да предадем променлива към регулярен израз

  3. Вмъкнете стойност на конкретна позиция в масив в MongoDB

  4. MongoDB индекс за различни типове

  5. Как лесно да управлявате актуализации на база данни и корекции за сигурност