IBM developerWorks'ten: NoSQL veritabanlarıyla bulut düzeyinde veri ölçeklenebilirliği sağlayın
Ölçeklenebilirlik , çok düşük gecikmeyle çok yüksek talep oranlarına sahip çok büyük veritabanlarını destekleyebilecek sistemdir.
NoSQL sistemleri ortak olarak birçok tasarım özelliğine sahiptir:
- Birçok sunucu üzerinden verimi yatay olarak ölçeklendirme yeteneği.
- Basit bir arama seviyesi arayüzü veya protokolü (SQL bağlamanın aksine).
- Çoğu geleneksel RDBMS'deki ACID işlemlerinden daha zayıf tutarlılık modelleri için destek.
- Veri depolama için dağıtılmış dizinlerin ve RAM'in verimli kullanımı.
- Yeni özellikleri veya veri şemasını dinamik olarak tanımlama yeteneği.
İlişkisel veritabanları, Ölçeklendirme için neden uygun olmayabilir?
Genel olarak, ilişkisel veri tabanı yönetim sistemleri, on yıllardır "veri kalıcılığı ve alımı için tek boyutlu bir çözüm" olarak değerlendirilmiştir. Kapsamlı araştırma ve geliştirme çabalarının ardından olgunlaştı ve farklı iş alanlarında büyük bir pazar ve çözümler yarattı.
Her geçen gün artan ölçeklenebilirlik ve yeni uygulama gereksinimleri, bazı web ölçekli uygulamalarda bu tek bedene uyan her yaklaşımdan memnuniyetsizliği de içeren geleneksel RDBMS için yeni zorluklar yarattı. Bunun cevabı, ilişkisel veritabanı yönetim sistemlerinin hakimiyetini zorlamak için tasarlanmış yeni nesil bir düşük maliyetli, yüksek performanslı veritabanı yazılımı olmuştur. NoSQL hareketinin büyük bir nedeni, web, kurumsal ve bulut bilgi işlem uygulamalarının farklı uygulamalarının veritabanlarının farklı gereksinimlerine sahip olmasıdır - örneğin her uygulama katı veri tutarlılığı gerektirmez.
Başka bir örnek: eBay, Amazon, Twitter veya Facebook gibi yüksek hacimli web siteleri için ölçeklenebilirlik ve yüksek kullanılabilirlik ödün vermeyen önemli gereksinimlerdir. Bu uygulamalar için, en ufak bir kesinti bile önemli finansal sonuçlar doğurabilir ve müşteri güvenini etkileyebilir.
Üzerinde DBA.SE: Yatay ölçeklendirme ne anlama geliyor?
Yatay Ölçekleme, esasen yukarı yerine oluşturuluyor. Daha büyük bir beefier sunucusu satın almazsınız ve tüm yükünüzü onun üzerine taşırsınız, bunun yerine 1+ ek sunucu satın alır ve yükünüzü kendilerine dağıtırsınız.
Yatay ölçekleme, sunucularda aynı anda birden fazla örnek çalıştırma yeteneğiniz olduğunda kullanılır. Genellikle 1 sunucudan 2 sunucuya gitmek daha zordur, sonra 2'den 5'e, 10, 50'den vb.
Paralel örneklerin çalıştırılması sorununu çözdükten sonra, talep üzerine talep ederek örnekleri yukarı ve aşağıya çekebileceğiniz gibi, sunucu gücü için ödeme yapma gereksinimini azaltan Amazon EC2, Rackspace Bulut Hizmeti, GoGrid vb. Gibi ortamlardan büyük ölçüde yararlanabilirsiniz. Sadece bu pik yükleri karşılamak için kullanmıyorsun.
İlişkisel Veritabanları paralel olarak tam okuma / yazma yapmak için en zor maddelerden biridir.