NoSQL Veritabanları
NoSQL veritabanları, geleneksel veri tabanlarının (relational database) sınırlarını aşan esnek veri yapıları sunan bir veritabanı modelidir. MongoDB ve Redis, en yaygın kullanılan NoSQL veritabanları arasında yer alır. MongoDB, belgeler halinde veri depolarken, Redis anahtar-değer çiftleri ile çalışır. PHP 7.4 ile bu veritabanlarının kullanımı için çeşitli yöntemler ve kütüphaneler mevcuttur.
MongoDB Kullanımı
MongoDB ile PHP arasında etkileşim sağlanabilmesi için MongoDB PHP sürücüsünün kurulması gereklidir. Bu sürücü, veritabanıyla etkileşimde bulunmak için gerekli fonksiyonları sağlar. Çalışma ortamında MongoDB’i kurmak ve yapılandırmak, ardından PHP sürücüsünü yüklemek gereklidir.
MongoDB Sürücüsünün Kurulumu
MongoDB PHP sürücüsü, PECL aracılığıyla yüklenebilir. Aşağıdaki komutlar, sürücünün yüklenmesi için kullanılır:
“`bash
sudo pecl install mongodb
“`
Yükleme tamamlandıktan sonra, `php.ini` dosyasına aşağıdaki satırın eklenmesi gerekir:
“`ini
extension=mongodb.so
“`
MongoDB ile Bağlantı Kurma
MongoDB ile bağlantı kurabilmek için `MongoDB\Driver\Manager` sınıfı kullanılabilir. Bağlantı kurmak için aşağıdaki örnek kod kullanılabilir:
“`php
require ‘vendor/autoload.php’; // Composer autoload
$manager = new MongoDB\Driver\Manager(“mongodb://localhost:27017”);
“`
Veri Ekleme ve Sorgulama
Veri eklemek için `MongoDB\Driver\BulkWrite` sınıfı kullanılabilir. Aşağıda basit bir belge ekleme işlemi örneği verilmiştir:
“`php
$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert([‘name’ => ‘John Doe’, ‘age’ => 30]);
$result = $manager->executeBulkWrite(‘testdb.users’, $bulk);
“`
Veri sorgulamak için `MongoDB\Driver\Query` sınıfı kullanılabilir:
“`php
$query = new MongoDB\Driver\Query([]);
$cursor = $manager->executeQuery(‘testdb.users’, $query);
foreach ($cursor as $document) {
print_r($document);
}
“`
Redis Kullanımı
Redis, yüksek performanslı bir anahtar-değer veritabanıdır. PHP ile Redis kullanımı için genellikle Redis PHP sürücüsü veya Predis kütüphanesi kullanılır. Redis PHP sürücüsü, PECL üzerinden kurulabilir.
Redis Sürücüsünün Kurulumu
Redis PHP sürücüsü yüklemek için aşağıdaki komut kullanılmalıdır:
“`bash
sudo pecl install redis
“`
Yükleme tamamlandıktan sonra, `php.ini` dosyasına aşağıdaki satırın eklenmesi gerekir:
“`ini
extension=redis.so
“`
Alternatif olarak, Predis kütüphanesi de kullanılabilir. Predis, composer ile kurulabilir:
“`bash
composer require predis/predis
“`
Redis ile Bağlantı Kurma
PHP Redis sürücüsünü kullanarak örnek bir bağlantı:
“`php
$redis = new Redis();
$redis->connect(‘127.0.0.1’, 6379);
“`
Predis kullanarak bağlantı kurmak için:
“`php
require ‘vendor/autoload.php’;
$client = new Predis\Client();
“`
Veri Ekleme ve Sorgulama
Redis’te veri eklemek için `set` ve almak için `get` yöntemleri kullanılabilir:
“`php
$redis->set(‘name’, ‘John Doe’);
$name = $redis->get(‘name’);
echo $name;
“`
Predis ile veri eklemek ve almak:
“`php
$client->set(‘name’, ‘John Doe’);
$name = $client->get(‘name’);
echo $name;
“`
Performans ve Kullanım Alanları
MongoDB, büyük ölçekli veri kümeleri için ideal bir çözüm sunar. Belgeler arasında karmaşık sorgular yapılmasına olanak tanır. Öte yandan, Redis hızlı veri erişimi ile önbellekleme, oturum yönetimi gibi senaryolar için sıklıkla tercih edilir.
MongoDB, veri yapılarının dinamik olarak değişmesine olanak tanırken, Redis yüksek performans ve düşük gecikme süreleri sunar. Bu nedenle, iki veritabanı da belirli durumlar için uygun hale gelir.
Sonuç
PHP 7.4 ile NoSQL veritabanları olan MongoDB ve Redis’in kullanımı, uygun sürücülerin veya kütüphanelerin yüklenmesi ve bağlantı yöntemlerinin doğru şekilde uygulanması ile mümkündür. MongoDB, belge tabanlı veri yönetimi sağlarken, Redis belirli durumlarda hızlı veri erişimi sunar. Her iki veritabanının da sağladığı özellikler, proje gereksinimlerine bağlı olarak çeşitli kullanım senaryolarında avantaj sağlar.