tisdag 27 januari 2015

Multidatabaser blir nästa stora grej - Computer Sweden

Multidatabaser blir nästa stora grej - Computer Sweden



Moderna applikationer använder ofta flera olika databaser, för
olika typer av data. Det leder till komplexa lösningar och krånglig
drift. Lösningen är att använda en databas som klarar av olika typer av
data.




En modern applikation kan lätt
använda fyra olika databaser, till exempel Redis för cache, MongoDB för
att spara loggar, en relationsdatabas för metadata och till exempel
Elasticsearch för indexering och sökfunktioner. Det ger optimal
funktionalitet för applikationen, men leder till komplex utveckling och
drift, och sårbarhet eftersom samtliga databaser måste fungera för att
applikationen ska fungera. Dessutom finns det inga smidiga lösningar för
att hantera transaktioner som inbegriper flera typer av databaser.


Idealet vore att kunna använda en
enda databas för alla typer av data som en applikation behöver hantera.
Men eftersom ingen vanlig databastyp klarar av att hantera alla olika
typer av data blir lösningen att använda en enkel typ av
databashanterare och mappa de olika typerna av data mot den struktur som
används i den. Den enklaste typen av databas som är populär i dag är
nyckel-värde-databaser (key-value store) som hanterar data i form av par
av nycklar och värden. Värden kan vara tämligen komplexa
datastrukturer, till exempel Jsondokument.



En modern applikation kan lätt
använda fyra olika databaser, till exempel Redis för cache, MongoDB för
att spara loggar, en relationsdatabas för metadata och till exempel
Elasticsearch för indexering och sökfunktioner. Det ger optimal
funktionalitet för applikationen, men leder till komplex utveckling och
drift, och sårbarhet eftersom samtliga databaser måste fungera för att
applikationen ska fungera. Dessutom finns det inga smidiga lösningar för
att hantera transaktioner som inbegriper flera typer av databaser.


Idealet vore att kunna använda en
enda databas för alla typer av data som en applikation behöver hantera.
Men eftersom ingen vanlig databastyp klarar av att hantera alla olika
typer av data blir lösningen att använda en enkel typ av
databashanterare och mappa de olika typerna av data mot den struktur som
används i den. Den enklaste typen av databas som är populär i dag är
nyckel-värde-databaser (key-value store) som hanterar data i form av par
av nycklar och värden. Värden kan vara tämligen komplexa
datastrukturer, till exempel Jsondokument.


Den här lösningen förordas av
Stephen Pimentel i en krönika på Infoworld. Man ska vara medveten om att
han pratar i egen sak, eftersom han arbetar som utvecklarevangelist på
FoundationDB som är en leverantör av just en nyckel-värde-databas. Men
det finns många intressanta synpunkter i hans resonemang.



Bland fördelarna med att använda en
nyckel-värde-databas
för alla data märks att driften blir enklare och
mindre sårbar, samt att det i vissa nyckel-värde-databaser finns
möjligheter att hantera transaktioner. Pimentel hävdar att det går
utmärkt att hantera till exempel Jsondokument, relationsdata och data
som normalt finns i grafdatabaser med en nyckel-värde-databas.


Det som inte framgår av krönikan är
hur enkelt eller svårt det är att beskriva mappningen av till exempel
data i en relationsdatabas till nyckel-värde-formatet. Finns det till
exempel visuella verktyg som underlättar? Hur mycket funktionalitet från
olika datastrukturer går förlorad när de ska överföras till
nyckel-värde-formatet? Och så vidare.


Frågetecknen till trots så har
Pimentel en poäng med behovet av konsolidera databasanvändningen. Frågan
är om dagens databasprodukter är tillräckligt avancerade för att lösa
uppgiften.

Inga kommentarer:

Skicka en kommentar