Udostępnij za pośrednictwem


Klasyfikowanie obciążenia aplikacji w usłudze Azure Cosmos DB for PostgreSQL

DOTYCZY: Usługa Azure Cosmos DB for PostgreSQL (obsługiwana przez rozszerzenie bazy danych Citus do bazy danych PostgreSQL)

Poniżej przedstawiono typowe cechy obciążeń, które najlepiej pasują do usługi Azure Cosmos DB for PostgreSQL.

Wymagania wstępne

W tym artykule założono, że znasz podstawowe pojęcia dotyczące skalowania. Jeśli nie przeczytasz o nich, pośmiń chwilę, aby to zrobić.

Charakterystyka wielodostępnej usługi SaaS

  • Dzierżawcy widzą własne dane; nie widzą danych innych dzierżaw.
  • Większość aplikacji SaaS B2B to wiele dzierżaw. Przykłady obejmują usługę Salesforce lub Firmy.
  • W większości aplikacji SaaS B2B istnieje setki do dziesiątek tysięcy dzierżaw, a więcej dzierżaw nadal dołącza.
  • Wielodostępne aplikacje SaaS są przede wszystkim operacyjne/transakcyjne, z wymaganiami dotyczącymi opóźnienia w milisekundach pojedynczej cyfry dla zapytań bazy danych.
  • Te aplikacje mają klasyczny model danych relacyjnych i są tworzone przy użyciu maszyn ORM , takich jak RoR, Hibernate, Django itp.

Charakterystyka analizy operacyjnej w czasie rzeczywistym

  • Te aplikacje mają pulpit nawigacyjny interaktywnej analizy dla klienta/użytkownika z wymaganiami opóźnienia zapytania podrzędnego.
  • Wymagana wysoka współbieżność — co najmniej 20 użytkowników.
  • Analizuje dane, które są świeże w ciągu ostatnich sekund do kilku minut.
  • Większość ma dane szeregów czasowych, takie jak zdarzenia, dzienniki itp.
  • Typowe modele danych w tych aplikacjach obejmują:
    • Schemat gwiazdy — kilka tabel dużych/faktów, pozostałe są tabelami małych/wymiarów
    • Głównie mniej niż 20 głównych tabel

Cechy transakcyjne o wysokiej przepływności

  • Uruchamianie obciążeń typu NoSQL/document, ale wymagają funkcji PostgreSQL, takich jak transakcje, klucze obce/podstawowe, wyzwalacze, rozszerzenie, takie jak PostGIS itp.
  • Obciążenie jest oparte na jednym kluczu. Ma on elementy CRUD i wyszukiwania oparte na tym kluczu.
  • Te aplikacje mają wymagania dotyczące wysokiej przepływności: tysiące do setek tysięcy TPS.
  • Opóźnienie zapytań w milisekundach jednocyfrowych z wysokim wymaganiem współbieżności.
  • Dane szeregów czasowych, takie jak Internet rzeczy.

Następne kroki

Wybierz niezależnie od tego, co najlepiej pasuje do aplikacji: