< /p>
Amazon Web Services, der allerede tilbyder en portefølje med 15 databaser, frigiver nu en mere. Amazon MemoryDB for Redis er en real-time databaseimplementering, der delvis er baseret på open source Redis-platformen, men tilføjer holdbarhed og vedholdenhed. AWS placerer dette som målrettet kunder, der har brug for en fuldstændig databasetjeneste frem for en cache for Redis baseret på antagelsen om, at brugssagerne vil være ganske forskellige.
Vi betragter det som et kontinuum, hvor Amazon MemoryDB er en service, der samler op, hvor Amazon ElastiCache slutter, og som en direkte konkurrence med Redis Enterprise Cloud, der tilbydes af Redis, virksomheden. Forskellen mellem Amazon ElastiCache og MemoryDB er, at førstnævnte er tænkt som en in-memory cache, der fungerer sammen med en primær database, hvorimod MemoryDB er en fuld databasetjeneste i sig selv, der er designet til at fungere alene.
Indtil nu tilbød AWS ElastiCache -service et valg af Redis -caching eller Memcached. Den nye service er AWS svar på Redis Enterprise. Overvej Amazon MemoryDB er i det væsentlige et premium -niveau af ElastiCache til Redis; funktionelt er det en database frem for cache, og teknisk set er det en modificeret implementering af Redis -motoren, der er kompatibel med den.
Baggrunden for alt dette er, at open source Redis er en utrolig populær platform. Rangeret blandt de 10 bedste databaser efter db-motorer, ifølge Sumologic er det også den mest populære database, der er implementeret på AWS. Stacking Overflow -undersøgelser af sit samfund angav Redis som den “mest elskede” database af udviklere i de sidste fem år i træk. Hver af de store cloud-udbydere tilbyder deres egne Redis-baserede cachetjenester baseret på open source-versionen.
Udviklere elsker Redis, fordi de møder udviklere, hvor de bor. Det understøtter de datatyper, som udviklere ofte arbejder med, såsom hash, lister, sæt, strenge og sorterede sæt. Og for det andet understøtter Redis de sprog, der er populære hos udviklere, såsom C, C ++, C#, JavaScript, Java, Go, Objective-C, Python og PHP.
Alsidighed har længe været nøglen til Redis 'succes. Det bruges mest som en hukommelsescache, der sidder sammen med en transaktionsdatabase, såsom SQL Server, MySQL eller Oracle. Det aflaster realtidsbehandling fra back-end databaser. Det er en opgave, der er lige så gammel som transaktionsmonitorerne i 1990'erne og objektlagrene i hukommelsen (som var primitive nøgle-/værdi-datalagre) i begyndelsen af 2000'erne.
Udfordringen er imidlertid, når udviklere bruger Redis -cache til formål, som det ikke var tiltænkt, idet tidsseriedatabaser til IoT -data er et godt eksempel – og populær brugstilfælde. Redis cache indtager data hurtigt, men problemet er, at det mangler holdbarhed og vedholdenhed; når noden går ned, går dataene tabt. Open source Redis kan skrive data til en fil, der kun kan tilføjes på disken, men det mål er ligeledes sårbart, hvis noden går ned.
Indtil nu, da det kom til Redis som en fuldgyldig NoSQL- eller multimodel-database i hukommelsen, var Redis Enterprise det eneste spil i byen. Redis Labs har satset sin forretning på at tilbyde svar til udviklere, der kræver mere end cache. Sammenlignet med open source Redis understøtter Redis Enterprise mere detaljerede metoder til høj tilgængelighed; lagring af data til SSD Flash -lagring; fuldt geodistribueret (multimaster) databasedrift gennem aktiv-aktiv replikation; multi-cloud support; og understøttelse af Redis -moduler, som tilføjer udvidelse til databasen (f.eks. understøttelse af søgning, grafdata, integreret SQLite, JSON og andre muligheder). Redis Enterprise Cloud kører på alle tre store offentlige skyer – gennem markedspladserne på AWS og Azure; og som et fælles understøttet tilbud på Google Cloud.
Og behovet for en Redis -database er det, der fik AWS til at introducere MemoryDB – selvom MemoryDB og Redis Enterprise på dette tidspunkt er markant forskellige. For eksempel tilbyder Redis Enterprise lagdelt lagring til Flash, en funktion, der ikke findes i den første udgivelse. En stor differentiator med MemoryDB er imidlertid dens tilgang til datapersistens. Det anvender en multi-AZ transaktionslog for at holde data holdbare og muliggøre udskiftning og gendannelse uden tab af data. Det er vigtigt, at logfilen ikke kører på MemoryDBs databaseknudepunkter. Når MemoryDB foretager en skrivning til den underliggende transaktionslog, spredes den til replikknudepunkter med garanteret eventuel konsistens.
Kunder kan starte MemoryDB -klynger ved hjælp af AWS Graviton2 -forekomster. Det vil udføre mikrosekundlæsninger og enkeltcifrede millisekundskrivninger takket være ikke kun at stole på hukommelsen, men også med den lette transaktionslog-tilgang. Som nævnt, mens lagring af køligere data til Flash i øjeblikket ikke understøttes, ville vi ikke blive overrasket, hvis de bliver understøttet i en fremtidig udgivelse.
Amazon MemoryDB, der kommer ud af porten, understøtter alle kernedata -API'er for open source Redis, herunder strenge, lister, sæt, sorterede sæt, hash, streams, geospatial, bitmaps og hyperloglogs. Det understøtter op til 128 TBytes hukommelse pr. Klynge med en replika for hvert skår. Udover lagdelt flashlager understøttes andre Redis Enterprise-funktioner, f.eks. Understøttelse af Redis-moduler, nogle af de udvidede datatyper og aktiv-aktiv geo-replikation i øjeblikket ikke af MemoryDB; mange af disse funktioner er kun tilgængelige via Redis Source Available License, som forbyder tredjeparter at sælge dem, hvis de tilbydes som en database eller andre verboten anvendelser. På den anden side har Redis Enterprise, der i øjeblikket arbejder på Redis Raft for holdbarhed, ikke bragt det endnu til generel tilgængelighed (vi forventer, at det ændrer sig snart).
Ved at tilbyde en service, som AWS betegner Redis-kompatibel, der understøtter open source Redis API'er, er der paralleller med AWS's tilgange til Amazon Aurora (til MySQL og PostgreSQL) og Amazon KeySpaces (til Apache Cassandra): de understøtter de samme API'er som den populære open kildedatabutik med forbedringer under hætten for at understøtte en fuldt administreret oplevelse. For MemoryDB vil brugerne kunne bygge applikationer ved hjælp af de samme Redis -datastrukturer og API'er, som de allerede bruger, men med de ekstra fordele ved en fuldt administreret database.
Amazon MemoryDB for Redis begynder at udfylde hullet for kunder, der søger en holdbar pendant til ElastiCache. På dette tidspunkt har den ikke den samme bredde af funktionalitet som Redis Enterprise eller Redis Enterprise Cloud, i hvert fald hvor det kommer til at understøtte Redis -moduler eller geodistribueret læsning og skrivning. Og selvom dette ikke er det første angreb for AWS med tilføjelse af hukommelseskapacitet til sine databaser, givet Redis popularitet, udfylder det et betydeligt hul i sit sortiment. I modsætning til de fleste AWS -databasepræsentationer, der typisk begynder med en forhåndsvisning, der kommer ud af porten, er MemoryDB nu generelt tilgængelig.
Big Data
Hvor er IBMs hybrid cloud -startplade? Syv måder at gøre realtidsteknologi til virkelighed for din organisation Maskinlæring på kanten: TinyML bliver stor Hvad sker der for Cloudera? McDonald's ønsker at 'demokratisere' maskinlæring for alle brugere på tværs af sine aktiviteter
Relaterede emner:
Amazon Digital Transformation Robotics Internet of Things Innovation Enterprise Software