Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure DocumentDB, bir açık kaynak belge veritabanı platformu olan DocumentDB'de oluşturulur. Bu makalede DocumentDB'ye, özelliklerine, mimarisine ve bu teknolojiye nasıl katkıda bulunabileceğinize veya bu teknolojiyi nasıl kullanabileceğinize yönelik bir genel bakış sunulmaktadır.
DocumentDB nedir?
DocumentDB, PostgreSQL altyapısı üzerinde oluşturulan belge veri depoları için tamamen izinli, açık kaynak bir platformdur. Azure DocumentDB'nin temelini oluşturarak NoSQL veritabanı ihtiyaçları için güçlü ve esnek bir çözüm sunar.
DocumentDB, Gerçekten Open-Source Bir MongoDB Uygulamasıdır
SSPL gibi kısıtlayıcı lisanslara sahip diğer MongoDB altyapılarından farklı olarak DocumentDB izinli MIT lisansını kullanır. Bu, geliştiricilerin herhangi bir ticari lisanslama ücreti veya kullanım kısıtlaması olmadan yazılımı kullanma, değiştirme ve dağıtma özgürlüğüne sahip olduğu anlamına gelir. Belirli kullanımları sınırlayan MongoDB'nin Sunucu Tarafı Genel Lisansı'nın (SSPL) aksine, DocumentDB'nin MIT lisansı gerçek açık kaynak özgürlüğünü garanti eder.
DocumentDB çok bulutlu ve satıcıdan bağımsız
DocumentDB, belge veri depoları için taşınabilir, birlikte çalışabilir bir çözüm sağlar. PostgreSQL üzerine inşa edilmiştir ve geliştiricilerin uygulamalarını çeşitli bulut sağlayıcılarına veya yerinde dağıtarak satıcı bağımlılığından kaçınmalarına olanak tanır. Bu esneklik, kuruluşların veritabanı özelliklerinden ödün vermeden ihtiyaçlarına en uygun altyapıyı seçmelerini sağlar.
DocumentDB, NoSQL Veritabanları için bir Game-Changer olan PostgreSQL üzerine kurulmuştur
NoSQL ile ilişkisel veritabanları arasındaki ayrım daha bulanık hale geldikçe DocumentDB, çoğu ölçeklenebilir iş yükü için üstün bir belge veritabanı deneyimi sağlamak üzere bu boşluğu kapatır. Her iki tarafın güçlü yanlarını bir araya getirerek genellikle NoSQL veritabanlarıyla ilişkili esneklik ve ölçeklenebilirlik sunarken, günümüzde en çok benimsenen ve saygıdeğer açık kaynak veritabanlarından biri olan PostgreSQL'in gücünden ve kapsamlı özellik kümesinden yararlanıyor. Bu temel, PostgreSQL'in araç ve uzantı ekosistemine sağlamlık, güvenilirlik ve erişim sağlar. Geliştiriciler PostgreSQL'in sürekli gelişiminden ve kapsamlı topluluk desteğinden yararlanırken belge veritabanının esnekliğinden yararlanabilir.
Önemli Özellikler
DocumentDB, belge veritabanı işlemleri için güçlü bir seçim olmasını sağlayan çeşitli temel özellikler sunar:
- BSON belge ayrıştırma ve işleme: İkili JSON (BSON) belgelerini tüm iç içe yerleştirme düzeylerinde verimli bir şekilde işleyebilir.
- Gelişmiş dizin oluşturma özellikleri: Tek alan, çok anahtarlı, bileşik, metin ve jeo-uzamsal dizinler için destek.
- Vektör arama sorguları: pg_vector PostgreSQL uzantısıyla desteklenen bu uzantı, çeşitli yapay zeka ve makine öğrenmesi uygulamalarına olanak tanır.
- Kimlik doğrulama mekanizması: SCRAM (Salted Challenge Response Authentication Mechanism) kimlik doğrulamayı içerir.
- Jeo-uzamsal sorgular: PostGIS uzantısının özelliklerini kullanma.
- Tam Ondalık 128 desteği: Intel Kayan Nokta Matematik Kütüphanesi tarafından desteklenir.
- Regex desteği: PCRE2 Projesini Kullanma
Architecture
DocumentDB iki birincil bileşenden oluşur:
- pg_documentdb_core: PostgreSQL'de BSON veri türü desteğini iyileştirici özel bir PostgreSQL uzantısı.
- pg_documentdb_api: CRUD işlemlerini, sorgu işlevselliğini ve dizin yönetimini uygulayan veri düzlemi.
Bu mimari, PostgreSQL altyapısının üzerinde uçtan uca bir NoSQL veritabanı kullanıcı deneyimi oluşturmaya olanak tanır.
DocumentDB'ye katkıda bulunma
DocumentDB, açık kaynak bir proje olarak topluluğun katkılarını memnuniyetle karşılar. Şu şekilde katkıda bulunabilirsiniz:
- GitHub'da projeleri yıldızlama, çatallama ve çekme istekleri gönderme
- Sorunları bildirme veya iyileştirme önerme
- Microsoft OSS Discord sunucusundaki #documentdb kanalında tartışmalara katılma
DocumentDB ile Çalışmaya Başlama
DocumentDB'yi yerel olarak kullanmaya başlamak için:
2. DocumentDB deposunu kopyalayın.
git clone https://github.com/documentdb/documentdb.git
3. Docker görüntüsünü oluşturun. Kopyalanan depoya gidin.
docker build . -f .devcontainer/Dockerfile -t documentdb
4. Docker görüntüsünü kapsayıcı olarak çalıştırın.
docker run -v $(pwd):/home/documentdb/code -it documentdb /bin/bash
5. Derlemeleri oluşturun ve dağıtın.
cd code
make
sudo make install
6. DocumentDB sunucusunu başlatın ve bağımlılıkları yönetin.
./scripts/start_oss_server.sh -t documentdb
7. psql komut satırına bağlanın.
psql -p 9712 -h localhost -d postgres
Bu adımları takip ettikten sonra artık DocumentDB'yi yerel olarak kullanmaya hazırsınız.
FAQs
DocumentDB nedir ve Azure DocumentDB ile ilişkisi nedir?
DocumentDB, PostgreSQL altyapısı üzerinde oluşturulan belge veri depoları için tamamen izinli, açık kaynak bir platformdur. Azure DocumentDB'nin temelini oluşturarak NoSQL veritabanı ihtiyaçları için güçlü ve esnek bir çözüm sunar.
DocumentDB'nin lisanslaması diğer MongoDB uygulamalarıyla karşılaştırıldığında nasıldır?
DocumentDB, geliştiricilerin herhangi bir ticari lisans ücreti veya kullanım kısıtlaması olmadan yazılımı kullanma, değiştirme ve dağıtma özgürlüğüne sahip olmasını sağlayan izin verilen MIT lisansını kullanır. Bu, bazı MongoDB sağlayıcılarının belirli kullanımları sınırlayan Sunucu Tarafı Genel Lisansı (SSPL) ile karşıttır.
DocumentDB farklı bulut sağlayıcıları arasında kullanılabilir mi?
Evet, DocumentDB çok bulutlu ve satıcıdan bağımsızdır. PostgreSQL'de yerleşik olarak, geliştiricilerin uygulamalarını çeşitli bulut sağlayıcıları veya şirket içinde dağıtarak satıcının kilitlenmesini önlemesine ve ihtiyaçlarına en uygun altyapıyı seçme esnekliği sağlamasına olanak tanır.
DocumentDB'nin temel özellikleri nelerdir?
DocumentDB, BSON belge ayrıştırma ve işleme, gelişmiş dizin oluşturma özellikleri (tek alan, çok anahtarlı, bileşik, metin ve jeo-uzamsal), pg_vector tarafından desteklenen vektör arama sorguları, SCRAM dahil kimlik doğrulama mekanizmaları, PostGIS kullanan jeo-uzamsal sorgular, tam Ondalık128 desteği ve PCRE2 kullanarak regex desteği gibi çeşitli temel özellikler sunar.
Geliştiriciler DocumentDB'ye nasıl katkıda bulunabilir?
Geliştiriciler, GitHub'da projeyi beğenerek, çatallayarak ve pull request göndererek, sorun bildirip iyileştirme önerilerinde bulunarak ve Microsoft OSS Discord sunucusundaki #documentdb kanalında tartışmalara katılarak DocumentDB'ye katkıda bulunabilirler.