Hvad er Redis?
Redis eller "REmote DIctionary Server" er defineret som et open source, "key-value" databaselagermedie, som desuden er kendt som en datastrukturserver. Redis arbejder med nøgleværdi-par og gemmer data på et sted, der let kan refereres til med to specifikke værdier. Disse nøgleværditilknytninger er normalt et sæt af to sammenkædede dataindtastninger, som består af en nøgle , som er en unik identifikator for en type data og værdien , som enten kan være de bestemte data, der er identificeret, eller en indikator for placeringen af disse data.
Redis har fem hoveddatatyper, den kan bruge:
- Strenge – Strenge er en grundlæggende værdi i Redis. De kan indeholde enhver form for datastørrelse op til 512 Mb, inklusive jpegs eller andre objekter som blobs.
- Lister – Lister er nøjagtigt som navnet antyder; blot lister over strenge, sorteret efter den rækkefølge, de anvendes i
- Sæt – Sæt er simpelthen en gruppe af uordnede strenge
- Sorteret Sæt – Sorterede sæt er beslægtet med almindelige sæt. Den største forskel er, at sorterede sæt elementer er knyttet til og sorteret efter et vægtet scorefelt. Dette giver mulighed for, at prioriterede elementer kan indstilles, når data indtastes i det sorterede sæt
- Hashes – Hashes kortlægger selve strengfelterne og værdierne. De er i stand til at definere flere elementer og kan lagre mere end 4 milliarder feltværdipar
Redis opbevarer databaseposterne fuldstændigt i hukommelsen og vil kun bruge harddisken til vedvarende lagring. Disse nøgleværdi-parværdier bruges ofte i hashtabeller, opslagstabeller og konfigurationsfiler. Redis kan acceptere nøgleværdier for en lang række formater, så operationer kan køres på serveren med en reduceret serverarbejdsbelastning. Redis kan også replikere data til et hvilket som helst antal slaveservere, hvilket gør det til en førsteklasses kandidat til store databasereplikeringsopsætninger.
Hvad er fordelene ved Redis?
- Redis er ekstremt hurtigt − Redis kan udføre hundredtusindvis af (sæt, hent) kommandoer i sekundet.
- Den understøtter velkendte datatyper − Som nævnt ovenfor understøtter Redis de fleste af de datatyper, der normalt bruges af udviklere, såsom strenge, lister, sæt, sorterede sæt og hashes.
- Operationer er beskyttede (eller atomare), hvilket betyder:
- Alle operationer i en transaktion er kronologiske og udføres i rækkefølge
- Alle operationer i en transaktion udføres som en enkelt arbejdsenhed, der begrænser interferens fra andre operationer
- .Multifunktionsdatabase − Redis er en multifunktionel noSQL-database, der kan bruges i en bred vifte af anvendelsestilfælde, herunder caching, stort datasæt, fuldtekstsøgninger, gnistdatabehandling eller enhver anden kort- levede datamanipulation.
Alle disse muligheder placerer Redis solidt i midten af NoSQL-økosystemet.
Hvad er NoSQL?
NoSQL er en type databasedesign, der tager højde for en bred gruppe af datamodeller, herunder nøgleværdi-, dokument-, søjle- og grafformater.
NoSQL står for "ikke kun SQL" og er et alternativ til de mere traditionelle relationsdatabaser som MySQL, hvor data er lagt i tabeller, og dataskemaet er nøje opbygget, før selve databasen oprettes. NoSQL-databaser er især nyttige til at arbejde med meget store distribuerede datasæt
En hurtig oversigt over, hvordan NoSQL står op mod andre databasesystemer:
Installer Redis på Ubuntu
For at installere Redis på Ubuntu, SSH på din server, skal du en gang ved kommandoprompten skrive følgende kommandoer. Dette vil installere Redis på din server.
apt-get update
apt-get install redis-server
Start Redis
redis-server
Lad os derefter sikre, at Redis starter ved opstart:
systemctl enable redis-server.service
Lad os også indstille en af hovedhukommelsesvariablerne i Redis-konfigurationen (denne værdi vil afhænge af din servers tilgængelige hukommelse)
vim /etc/redis/redis.conf
maxmemory 256mb
maxmemory-policy allkeys-lru
Lad os endelig genstarte Redis for at sikre, at værdierne bevares:
systemctl restart redis-server.service
Tjek, om Redis er aktiv
Kør følgende kommando ved serverens kommandoprompt:
redis-cli
Dette åbner en Redis-prompt.
redis 10.0.0.1:6379
Efter at have kørt ovenstående kommando, vises din servers IP-adresse (10.0.0.1) og den port Redis kører på (6379).
Indtast nu følgende kommando ved Redis-prompten:
redis 10.0.0.1:6379> ping
"PONG ” viser, at Redis er installeret på din maskine.
PONG
Installer Redis via kilde
For at installere Redis manuelt via kilden, skal du blot SSH ind i din server og køre følgende kommando:
wget http://download.redis.io/redis-stable.tar.gz && tar xvzf redis-stable.tar.gz && cd redis-stable && make && make install
Redis-konfigurationsfilen vil være i den aktuelle installationsmappe. Lad os kopiere det til en bedre placering:
mkdir /etc/redis
cp redis.conf /etc/redis/
Lad nu starte Redis:
redis-server /etc/redis/redis.conf &
redis-cli ping
PONG
Til sidst er her en sjov måde at teste Redis på. Prøv det! Alt i alt, hvis du har brug for en hurtig, robust og meget skalerbar NoSQL-løsning til brug med din applikation eller som et projekttilskud, kan Redis opfylde dine behov! Prøv det på et af vores Private Cloud-produkttilbud eller en af vores stabile, pålidelige dedikerede servere!
Møder og kontakter til Redis
Vi vil gerne sende et råb til folk på https://redislabs.com/, som har ydet noget af den bedste og mest fremragende støtte gennem årene, fantastisk arbejde!
For virksomhedssupport, kontakt:
Blake Lipps – Midwest Redis kontorepræsentant/konsulent
Drake Albee – vestkyst Redis konsulent
For individuel støtte, se Redis-fællesskabssiderne. De områder, hvor du kan finde aktiv støtte eller interagere med Redis-fællesskabet, er noteret her:
- Hovedkvarteret for Redis-fællesskabet er på Reddit i subreddit. Du kan bruge det fællesskab til at bede om hjælp, poste nye ideer til nye funktioner, linke til artikler af interesse for Redis-fællesskabet og/eller få besvaret andre spørgsmål
- Tilmeld dig mailinglisten ved at abonnere via e-mail
- Mød op i #redis-kanalen på Freenode (webadgangslink)
- Tjek Redis-tagget på Stack Overflow
- Følg Redis nyhedsfeed på Twitter
Hvis du tilfældigvis bor i en af de større byer, der er anført nedenfor, er der også lokale Redis-mødegrupper! Lokal Redis-mødeinformation:
- London Redis Meetup Group
- San Francisco Meetup Group
- New York Meetup Group
- #RedisTLV (Tel Aviv Redis) Mødegruppe
- Paris Redis Meetup