| Diğer adları | Membase |
|---|---|
| Geliştirici | Couchbase, Inc. |
| Kod deposu | GitHub |
| İşletim sistemi | Linux, Windows Server Geliştirme ve test için ayrıca macOS ve Windows |
| Tür | NoSQL Belge tabanlı veritabanı Dağıtık anahtar-değer deposu |
| Resmî sitesi | couchbase.com |

Couchbase Server, Couchbase tarafından geliştirilen, NoSQL tabanlı, dağıtık bir veritabanı yönetim sistemidir. Verileri JSON belgeleri biçiminde saklar ve anahtar-değer yöntemiyle veri erişimini destekler. Birden fazla sunucudan oluşan kümeler üzerinde çalışabilen yazılım; veri sorgulama, tam metin araması ve veri merkezleri arasında çoğaltma özellikleri sunar.
Yazılımın gelişimi, Membase ve CouchOne şirketlerinin 2011 yılında birleşerek Couchbase'i oluşturmasına dayanır. Başlangıçta anahtar-değer depolama altyapısına odaklanan ürüne, 2012 yılında JSON belgelerini saklama, 2015 yılında SQL benzeri sorgulama ve 2017 yılında tam metin araması özellikleri eklenmiştir. Couchbase Server, kurumların kendi sunucularında, bulut ortamlarında veya bu iki yaklaşımı birleştiren yapılarda kullanılabilir.
Couchbase, memcached ile alışıldık olduğu gibi kablo üzerinde bütünlük sağlar ama disk kalıcılığı, veri kopyalaması, canlı küme yeniden yapılandırması, verileri yeniden dengeleme (rebalancing) gibi özellikler için tasarlanmıştır.
AOL, Cisco, Concur, LinkedIn, Orbitz, Salesforce.com, Shuffle Master, Zynga, NHN Corporation gibi şirketler ve diğer yüzlercesi etkileşimli web uygulamaları ve mobil uygulamalar için CouchBase'i kullanırlar.
Eric Brewer'in deyimiyle CAP teorem, Couchbase bir CP tipi sistemdir.
Ürün Tarihi
Membase memcached projesinin birkaç lideri tarafından geliştirildi. Bu liderlerler NorthScale adında bir şirket kurmuşlardı, anahtar-değer depolamanın basitliği, hız, memcahed ölçeklenebilirliği gibi özellikleri geliştirdiler, ama aynı zamanda depolama, kalıcılık ve veritabanın sorgu yetenekleri gibi özellikleri de sağladılar. Orijinal membase kaynak kodu NorthScale'den katkı aldı ve proje ortak sponsorları 2010 yılında Zynga ve NHN oldu.
8 şubat 2011'de Membase proje kurucuları ve Membase, Anonim şirket CouchOne (CouchDB arkasındaki birçok temel oyuncusuyla bir şirket) olarak birleştirilip projelerin ilişkilendirilmesiyle duyuruldu. Bu birleştirilmiş şirkete ise CouchBase denildi. Aralık 2012'de CouchBase Sunucusunun 1.8 sürümü çıkarıldı. CouchBase 2.0 sürümü Json dokümanları depolama, indeksleme ve sorgulama, artırılmış Map Reduce özelliği ve çapraz veri merkezi kopyalama gibi yeni özellikleriyle çıkarıldı.
Yüksek Seviyeli Mimari
Her CouchBase düğümü veri yönetimi ve küme yönetimi bileşenlerinin mimarisi olarak birbirinin aynısıdır.
Küme Yöneticisi
Küme yöneticisi bir CouchBasedeki tüm sunucuları yapılandırır ve davranışlarını denetler. Düğümlerin davranışlarını kopyalama akış yönetimi ve yeniden dengelendirme (rebalancing) gibi işlemleri de yapılandırır ve denetler. Küme yöneticisi aynı zamanda toplama ölçümü ve kümeler için olan fonksiyonlarda fikir birliği sağlar ve bir RESTful küme yönetici API'sidir. Küme yöneticisi Erlang/OTP üstünde inşa edilmiştir.
Kopyalama ve Yerine Çalışma
- Çoklu model kopyalama desteği: master-slave kopyalamayı destekleyen mimari altında makineden(peer-to-peer) makineye kopyalama sağlanır.
- Yapılandırılabilir kopyalama sayacı: Mevcut gereksinimlerle kaynak kullanımını dengeler.
- Yüksek hızlı yerine çalışma: Hızlı yerine çalışma madde tabanlı istekler üzerinden çoğaltılır.
Veri Yöneticisi
Veri yöneticisi depolama ve doküman alma gibi çeşitli veri işlemleriden sorumludur.
- İstemci yazmayı onayladıktan sonra veriler diske eşzamanlı olmayarak yazılırlar. 1.7 sürümü ve sonrasında, uygulamalar verileri birden fazla sunucuda eşzamanlı olarak sağlayabilirler, ancak 1.7 sürümünde veriler disklere hala eşzamanlı olmayarak yazılır.
Veri Biçimi
Couchbase'de bir doküman veri işlemenin çok temel bir birimidir. Dokümanlar Json doküman biçiminde önceden tanımlı şemalar olmadan depolanır.
Nesne Yönetilen Önbellek
Couchbase sunucusu inşa edilmiş çoklu iş parçacıklı nesne yönetilen önbellek içerir. Bu memcached uyumlu API'lerde veri ayarlama, veri çekme, silme, ekleme, gibi işlemleri yapar. Nesne Yönetilen Önbellek Couchbase sunucusu inşa edilmiş çoklu iş parçacıklı nesne yönetilen önbellek içerir. Bu memcached uyumlu API'lerde veri ayarlama, veri çekme, silme, ekleme, gibi işlemleri yapar
Depolama Motoru Tasarımı
Couchbase veri bozulmasına bağışıklık olarak kuyruk ekleme tasarımına sahiptir. Veriler dosyalarda tutulur, Couchbase veri güncellemesi için pek çok sıralı yazma işlemini yapar ve I/O diskleri için iyileştirilmiş bir erişim tasarımı sağlar.
Performans
Cisco Couchbase'in verimliliğini ve gecikme zamanını ölçen bir referans yayınladı. Diğer performans referansı ise Altoros tarafından verildi, bu referansta diğer NoSQL veritabanları ve Couchbase'in veritabanı çözümlemeleri karşılaştırıldı.
Lisans ve Destekleme
Couchbase sunucusu bir açık kaynak projedir ve iki çeşidi mevcuttur: Topluluk Sürümü hatalardan olmadan önceki hatalar Açık Kaynak olarak son hataları kapatılmamış ve Kurumsal Sürümü ticari işlemler için mevcuttur.
Kaynakça
- ^ Heller, Martin (12 Ağustos 2019). "Couchbase review: A smart NoSQL database" (PDF). InfoWorld (İngilizce). Erişim tarihi: 27 Eylül 2026. Arşivlenmesi gereken bağlantıya sahip kaynak şablonu içeren maddeler (link)
- ^ Heller, Martin (12 Ağustos 2019). "Couchbase review: A smart NoSQL database" (PDF). InfoWorld (İngilizce). Erişim tarihi: 27 Eylül 2026. Arşivlenmesi gereken bağlantıya sahip kaynak şablonu içeren maddeler (link)
- ^ "Couchbase". 24 Ağustos 2013 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Eylül 2013.
