MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Najszybsza baza danych MongoDB na platformie Azure!

Wszyscy twierdzą, że są szybcy – ale nasz post jest szybszy! W ciągu ostatnich kilku tygodni nasz zespół był zajęty testowaniem naszych systemów na platformie Azure, a wyniki były fantastyczne.

Na początku tego roku, zanim przenieśliśmy naszą istniejącą infrastrukturę z AWS na Azure, poświęciliśmy dużo czasu na zrozumienie struktury chmury Azure i optymalizację pod kątem najlepszej wydajności. W rzeczywistości Azure dość różni się od AWS, a strategia wydajności działająca w jednej chmurze prawdopodobnie nie zadziała w drugiej. Nasz zespół programistów wykonał wiele niestandardowych prac nad architekturą dysków, której używamy w naszych klastrach — celem było zapewnienie najlepszej wydajności dysków na platformie Azure. Aby uzyskać więcej informacji na temat naszej oferty, zapoznaj się z naszym hostingiem MongoDB na stronie Azure.

TL;DR

1. Wydajność płytek ScaleGrid jest o co najmniej 30% lepsza niż w przypadku innych dostawców mongo.
2. ScaleGrid konsekwentnie zapewnia około 25% lepszą przepustowość zarówno dla zrównoważonych (50% odczyt, 50% zapis), jak i ciężkich zadań związanych z zapisem (95% zapis, 5% odczyt).

Test porównawczy przeprowadzono za pomocą narzędzia do testów porównawczych serwerów Yahoo w chmurze (YCSB). YCSB to dość popularne narzędzie do pomiaru wydajności MongoDB. Zespół MongoDB korzysta również z YCSB, aby zademonstrować poprawę wydajności MongoDB 3.0 w porównaniu z MongoDB 2.x. Poniżej znajdują się wyniki dla naszej „dużej” konfiguracji na Azure – „Standardowa pamięć A3 – 7 GB pamięci, 4 rdzenie, 8-dyskowy RAID, do 4000 IOPS”. Jest to dość powszechna konfiguracja używana przez klastry produkcyjne na platformie Azure. Wszystkie testy zostały przeprowadzone w centrum danych Azure US-East.

1. Wstaw wydajność

Test wydajności wstawiania mierzy nieprzetworzoną pojemność wstawiania klastrów MongoDB. Jest to szczególnie ważne w przypadku klastrów, które obsługują duże obciążenie związane z zapisem lub wstawianiem. Test został uruchomiony z 16 wątkami YCSB, a średni czas działania testu wyniósł 2 godziny:

Podsumowanie:MongoDirector zapewnia o 30-40% większą przepustowość wstawiania niż inni dostawcy mongo na platformie Azure.

2. Przepustowość i opóźnienia

Pomiary przepustowości i opóźnień zostały wykonane zarówno dla zrównoważonych (50% odczyt, 50% zapis), jak i dużych obciążeń związanych z zapisem (95% zapis, 5% odczyt):

Podsumowanie:ScaleGrid zapewnia o 20-25% większą przepustowość zarówno w przypadku dużych obciążeń odczytu, jak i zapisu, jednocześnie zapewniając mniejsze opóźnienia.

Mimo że nasze wyniki wyglądają całkiem nieźle, w rzeczywistości dopiero zaczynamy korzystać z MongoDB na platformie Azure. Opcje magazynu Premium i lokalnego dysku SSD na platformie Azure jeszcze bardziej poprawią ten test porównawczy. Bądź na bieżąco, gdy wprowadzamy te funkcje do produkcji. Więcej szczegółów na temat metodologii i konkretnych parametrów zostanie dostarczonych przez nasz zespół programistów w kolejnych postach.

Jeśli masz konkretne pytania dotyczące wydajności określonego rozmiaru lub konfiguracji klastra MongoDB, skontaktuj się z nami pod adresem [email protected].


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDb:znajdź głęboko zagnieżdżony obiekt za pomocą $lookup

  2. Uwierzytelnianie użytkownika w kolbie

  3. Jak dołączyć do dwóch dodatkowych kolekcji z warunkami

  4. mongoexport bez pola _id

  5. Jak ponownie wykorzystać połączenie mongodb za pośrednictwem Promise