Redis Nedir?
Key-Value yapılı, open source bir databasedir.
Hız konusunda iyi güvenlik konusunda iyi değildir, bunun sebebi veri şifrelemeyi desteklememektedir. Yapısı şu şekildedir; Not Only Structured Query Language'dir. Client'imiz ve Server'ımız vardır. Client'imize veri göndeririz bunu önbelleğine alır ve biz bunu dilersek bunu diske kaydeder. Bu da hız konusundaki performansıdır. Ufak çaplı değişkenler için kullanılması daha etiktir.
Desteklediği Veri Tipleri Nelerdir?
Strings - Lists - Hashes - Sets - Sorted Sets
Ubuntu Redis Kurulumu
Linux'u yeni kurmuş veya kuracak olanlar için TCL olarak kısalttığımız Transaction Control Language ihtiyacımız vardır. Bunu terminalimizden indirelim.
Belirlediğimiz yerde 'mkdir' komutu ile klasör oluşturduktan sonra bu klasörün içerisine sıkıştırılmış Redis dosyasını indiriyoruz, klasöre çıkartıyoruz bunu yapılandırıyoruz.
Serverımıza giriş yapıp kontrol ediyoruz.
Clientimize girip bir veri gönderip test edelim.
Redis Nedir? & Ubuntu Redis Kurulumu;
[ame]https://www.youtube.com/watch?v=P5BJ9UNVPLk[/ame]
Redis Konfigürasyon Ayaları & İşlemler
Clientimize bağlanacağız buradan gerekli konfigürasyonları yapacağız. Terminalimizi açıyoruz.
Bilmemiz Gereken KeyWordler
SET: Veri atamamız ve(ya) güncellememiz için kullanılır.
GET: Bu bir print fonksiyonu gibidir. Databaseden veriyi yazdırır.
EXIST: Böyle bir veri var mı yok mu diye kontrol eder.
EXPIRE: Verimize ömür biçer, bu ömürden sonra veri kendini imha eder.
DEL: Verimizi siler.
MOVE: Datamızı yönlendirmek istediğimiz databasee göderir.
KEYS: Kesişen verileri listeler.
RENAME: Yeniden adlandırır.
Stringler
SET Key-Value: Anahtarımıza yeni değer atarız.
GET Key: Belirtilen anahtarın değerini gösterir.
GETSET Key-NewValue: Daha önce oluşturduğumuz anahtara yeni bir değer ataması gerçekleştirir.
STRLEN: Uzunluğu belirtir.
APPEND Key-AddedValue: Ekleme metodudur, önceki değerin sonuna yeni değeri ekler.
MSET Key1 Key2 Key3: Multi işlemdir, toplu değer atamaları gerçekleştirir.
MGET: MSET'in çıktısını alan formattır.
Hashler
HMSET Key AltKey1 AltKey2: Ana anahtarın altında oluşturulmuş altanahtarlardır.
HGET AltKey: Belirtilen hash alt anahtar değerini getirir.
HGETALL Key: Tüm hash değerlerini yansıtır.
HDEL AltKey:Belirtilen alt anahtarı siler.
Listeler
LINDEX Key-Order: Listedeki belirlenen indexi sergiler.
LRANGE Key-Interspace: Belirlediğimiz aralığı sergiler.
LINSER KEY- BEFORE/AFTER: Belirlediğimiz yere (önüne veya arkasına) yeni eleman ekler.
LPUSH Key-Value: Yeni değeri elemana pushlar.
Setler
SADD Key-Value: Bir set oluştururuz ve bu set altındaki anahtara değer atarız.
SMEMBERS Set: Setimizi yazdırır, GET mantığı gibi.
SDIFF: Kıyaslama metodudur, ilk yazılan kümenin diğerinde olmayanını yazdır.
SMOVE Set1-Set2-Key: İlk setten diğer sete belirlediğimiz anahtarı transfer eder.
Sıralı Setler
ZADD Key-Score-Value: Keyin içinde sıralı bir set oluştuur. Kümeyeelemanı ekler ve skoru yükler.
ZRANGE Key-First-LastWITHSCORE: Key içerisindeki seti ilk ve son diye ayırarak anahtarları sergiler. WITHSCORE ile anahtarlar skoru alır.
ZSCORE Key-AltKey: Elemanın skorunu yazdırır.
Konfigürasyon ve Database İşlemleri;
[ame="https://www.youtube.com/watch?v=Cc5n1bV320g&feature=youtu.be"]https://www.youtube.com/watch?v=Cc5n1bV320g&feature=youtu.be[/ame]
Key-Value yapılı, open source bir databasedir.
Hız konusunda iyi güvenlik konusunda iyi değildir, bunun sebebi veri şifrelemeyi desteklememektedir. Yapısı şu şekildedir; Not Only Structured Query Language'dir. Client'imiz ve Server'ımız vardır. Client'imize veri göndeririz bunu önbelleğine alır ve biz bunu dilersek bunu diske kaydeder. Bu da hız konusundaki performansıdır. Ufak çaplı değişkenler için kullanılması daha etiktir.
Desteklediği Veri Tipleri Nelerdir?
Strings - Lists - Hashes - Sets - Sorted Sets
Ubuntu Redis Kurulumu
Linux'u yeni kurmuş veya kuracak olanlar için TCL olarak kısalttığımız Transaction Control Language ihtiyacımız vardır. Bunu terminalimizden indirelim.
Kod:
sudo apt-get install build-essential tcl
Kod:
wget http://download.redis.io./releases/redis-4.0.11.tar.gz
tar xzf redis-4.0.11.tar.gz
cd redis-4.0.11
make
Serverımıza giriş yapıp kontrol ediyoruz.
Kod:
src/redis-server
Kod:
src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"
Redis Nedir? & Ubuntu Redis Kurulumu;
[ame]https://www.youtube.com/watch?v=P5BJ9UNVPLk[/ame]
Redis Konfigürasyon Ayaları & İşlemler
Clientimize bağlanacağız buradan gerekli konfigürasyonları yapacağız. Terminalimizi açıyoruz.
Kod:
redis-cli
Bilmemiz Gereken KeyWordler
SET: Veri atamamız ve(ya) güncellememiz için kullanılır.
GET: Bu bir print fonksiyonu gibidir. Databaseden veriyi yazdırır.
EXIST: Böyle bir veri var mı yok mu diye kontrol eder.
EXPIRE: Verimize ömür biçer, bu ömürden sonra veri kendini imha eder.
DEL: Verimizi siler.
MOVE: Datamızı yönlendirmek istediğimiz databasee göderir.
KEYS: Kesişen verileri listeler.
RENAME: Yeniden adlandırır.
Kod:
CONFIG GET * \\Clientte konfigürasyon ayarlarını listeler.
CONFIG SET dbname "EmperorFederico" \\Database adını Emperor Federico olarak değiştirdik.
SET Emperor "Federico" \\ Emperor anahtarına Federico değerini atadık.
EXPIRE Emperor 2 \\ Emperor anahtarının ömrünü 2 dakika olarak ayarlardık. 2 dakika sonra Emperor anahtarı kendini imha ederek silinecektir. GET ile yazdırmak istediğiniz takdirde 0 çıktısını alırsınız.
MOVE Emperor database2
Stringler
SET Key-Value: Anahtarımıza yeni değer atarız.
GET Key: Belirtilen anahtarın değerini gösterir.
GETSET Key-NewValue: Daha önce oluşturduğumuz anahtara yeni bir değer ataması gerçekleştirir.
STRLEN: Uzunluğu belirtir.
APPEND Key-AddedValue: Ekleme metodudur, önceki değerin sonuna yeni değeri ekler.
MSET Key1 Key2 Key3: Multi işlemdir, toplu değer atamaları gerçekleştirir.
MGET: MSET'in çıktısını alan formattır.
Kod:
SET Emperor "Federico"
GETSET Emperor "Cesar"
STRLEN Emperor
APPEND Emperor "Julio"
Hashler
HMSET Key AltKey1 AltKey2: Ana anahtarın altında oluşturulmuş altanahtarlardır.
HGET AltKey: Belirtilen hash alt anahtar değerini getirir.
HGETALL Key: Tüm hash değerlerini yansıtır.
HDEL AltKey:Belirtilen alt anahtarı siler.
Kod:
HMSET Federico programminglanguage1 "Python" programminglanguage2 "Csharp" programminglanguage3 "Ruby"
HMGET Federico programminglanguage3
HDEL Federico programminglanguage3
Listeler
LINDEX Key-Order: Listedeki belirlenen indexi sergiler.
LRANGE Key-Interspace: Belirlediğimiz aralığı sergiler.
LINSER KEY- BEFORE/AFTER: Belirlediğimiz yere (önüne veya arkasına) yeni eleman ekler.
LPUSH Key-Value: Yeni değeri elemana pushlar.
Kod:
LPUSH Emperor Federico
LPUSH Emperor Cesar
LRANGE Emperor 0 1
LINSERT Emperor Cesar
Setler
SADD Key-Value: Bir set oluştururuz ve bu set altındaki anahtara değer atarız.
SMEMBERS Set: Setimizi yazdırır, GET mantığı gibi.
SDIFF: Kıyaslama metodudur, ilk yazılan kümenin diğerinde olmayanını yazdır.
SMOVE Set1-Set2-Key: İlk setten diğer sete belirlediğimiz anahtarı transfer eder.
Kod:
SADD webserver darkcomet
SADD webserver spynet
SMEMBERS webserver
SADD trojan wormwin32 darkcomet
SDIFF webserver trojan
SMOVE webserver trojan spynet
Sıralı Setler
ZADD Key-Score-Value: Keyin içinde sıralı bir set oluştuur. Kümeyeelemanı ekler ve skoru yükler.
ZRANGE Key-First-LastWITHSCORE: Key içerisindeki seti ilk ve son diye ayırarak anahtarları sergiler. WITHSCORE ile anahtarlar skoru alır.
ZSCORE Key-AltKey: Elemanın skorunu yazdırır.
Konfigürasyon ve Database İşlemleri;
[ame="https://www.youtube.com/watch?v=Cc5n1bV320g&feature=youtu.be"]https://www.youtube.com/watch?v=Cc5n1bV320g&feature=youtu.be[/ame]
Moderatör tarafında düzenlendi: