NewSQL - NewSQL

NewSQL er en klasse af relationsdatabasestyringssystemer , der søger at levere skalerbarhed af NoSQL -systemer til onlinetransaktionsbehandling (OLTP) -belastninger, samtidig med at ACID -garantierne for et traditionelt databasesystem opretholdes .

Mange virksomhedssystemer, der håndterer profilerede data (f.eks. Finans- og ordrebehandlingssystemer) er for store til konventionelle relationsdatabaser, men har transaktions- og konsistenskrav, der ikke er praktiske for NoSQL-systemer. De eneste muligheder, der tidligere var tilgængelige for disse organisationer, var enten at købe mere kraftfulde computere eller at udvikle brugerdefineret middleware, der distribuerer anmodninger over konventionel DBMS . Begge tilgange har høje infrastrukturomkostninger og/eller udviklingsomkostninger. NewSQL -systemer forsøger at forene konflikterne.

Historie

Begrebet blev først brugt af 451 koncernanalytiker Matthew Aslett i et forskningsartikel fra 2011, der diskuterede fremkomsten af ​​en ny generation af databasesystemer. Et af de første NewSQL-systemer var H-Store parallelle databasesystem .

Ansøgninger

Typiske applikationer er kendetegnet ved store OLTP -transaktionsmængder. OLTP -transaktioner;

  • er kortvarige (dvs. ingen brugerboder)
  • røre ved små mængder data pr. transaktion
  • brug indekserede opslag (ingen bordscanninger)
  • har et lille antal former (et lille antal forespørgsler med forskellige argumenter).

Nogle understøtter imidlertid hybrid -transaktions-/analytisk behandling (HTAP) -applikationer. Sådanne systemer forbedre ydeevnen og skalerbarhed ved at udelade heavyweight genvinding eller samtidighed kontrol .

Liste over NewSQL-databaser

Funktioner

De to fælles kendetegn ved NewSQL -databaseløsninger er, at de understøtter online skalerbarhed af NoSQL -databaser og den relationelle datamodel (herunder ACID -konsistens) ved hjælp af SQL som deres primære interface.

NewSQL -systemer kan løst grupperes i tre kategorier:

Nye arkitekturer

NewSQL -systemer anvender forskellige interne arkitekturer. Nogle systemer anvender en klynge af delte-ingenting- noder, hvor hver node administrerer et delsæt af dataene. De inkluderer komponenter såsom distribueret samtidighedskontrol , flowkontrol og distribueret forespørgselsbehandling.

SQL -motorer

Den anden kategori er optimerede lagermotorer til SQL . Disse systemer giver den samme programmeringsgrænseflade som SQL, men skalerer bedre end indbyggede motorer.

Gennemsigtig skæring

Disse systemer deler automatisk databaser på tværs af flere noder ved hjælp af Raft- eller Paxos -konsensusalgoritme.

Se også

Referencer