ETİKETLER
web-programlama
Agregasyon (Aggregation)
MongoDB - AGREGASYON (AGGREGATION)
MongoDB’de agregasyon işlemleri denilince dökümanların belli alanlara göre gruplandırılması ve bu gruplar yardımı ile bazı filtreleme ya da hesaplama işlemlerinin yapılmasını anlıyoruz. Bu işlemler SQL’de count() ve group by komutları ile gerçekleştirilir.
Şimdi bu konuyu daha iyi anlayabilmek için özel bir veri seçelim. Bu veri aşağıdaki tabloda verilmiştir:
Veritabanındaki Dökümanların Sıralanması
VERİTABANINDAKİ DÖKÜMANLARIN SIRALANMASI - SORT() METODU
Sıralama işlemi bilgisayar ortamlarında belki de en çok kullanılan işlemdir. Sıralama (sorting) denilince verilerin belli alanlara göre küçükten büyüğe ya da a’dan z’ye (Artan Sıralama - Ascending) ya da büyükten küçüğe veya z’den a’ya (Azalan sıralama - Descending) düzene sokulmasını anlıyoruz.
MongoDB’de sort() metodu her iki türde sıralamayı da gerçekleştirebilir. sort() metodunun yazılış biçimi,
sort({Anahtar:SıralamaTürü})
şeklindedir. Sıralama türü parametresi,
MongoDB Kurulumu
VERİTABANI (DATABASE)
Veritabanı, koleksiyonlardan oluşan bir veri grubudur. Tek bir MongoDB örneği (instance) çok sayıda bağımsız veri tabanlarından oluşabilir.
Her belge “_id” şeklinde özel bir anahtara sahiptir; bu anahtar bir koleksiyon içinde tektir (unique). MongoDB, basit fakat çok güçlü JavaScript kabuğu (shell) kullanır ve bunun yardımı ile veri tabanlarının işlenmesi çok daha etkin hale gelir.
İstemci Oluşturma
MongoDB İLE İSTEMCİ OLUŞTURMA
MongoDB’yi başlattığınızda, shell otomatik olarak MongoDB sunucusundaki test veritabanına bağlanır ve bu veritabanı bağlantısı db adlı global değişkende saklanır. Bu değişken, MongoDB sunucusuna shell ile erişim için birincil noktadır. Şimdi, komut satırında db girerek enter’a basınız:
> db
test
>
SHELL İLE TEMEL İŞLEMLER
Bu bölümde shell ile 4 temel işlemi gözden geçireceğiz:
I. Create (veri oluşturma)
Tablo ve Veri Tipleri
Doküman, MongoDB’de veri depolama birimidir. Döküman, veriyi depolamak için JSON stilinde bir yapı kullanır. (JavaScript Object Notation).
JSON dokümanları için basit bir örnek
site : http://gelecegiyazanlar.turkcell.com.tr
MongoDB Temel Yapısı
MongoDB Temel Yapısı
Veri tabanı sistemleri ile ilgili temel kavramlar hakkında biraz fikir sahibi olan kullanıcılar için MongoDB’nin en önemli özelliği, ilişkisel modeli (relational model) kullanmamasıdır. Oysa şu ana kadar popüler veritabanlarının neredeyse tamamı bu modeli kullanıyordu.
İlişkisel model bilindiği gibi temel veri yapısı olarak tabloyu kullanmaktaydı..
MongoDB, ilişkisel (relational) model yerine belgeye dayalı modeli (document oriented model) kullanmaktadır.
2DSPHERE Index Oluşturma
2DSPHERE İNDEKS OLUŞTURMA
GeoSON formatında geospatial (coğrafi mekansal) bir indeks oluşturmak için db.collection.ensureIndex() metodunu kullanmalısınız. Oluşturulacak indeksin 2dsphere türünde olması için bu anahtar sözcüğü komuta eklemelisiniz.
ÖRNEK:
db.collection.ensureIndex( { <İndeks Alanı> : "2dsphere" } )
Aşağıdaki prosedür, GeoJSON veri alanı içeren bir grup belge için 2dsphere indeksleri oluşturulmasını gösteriyor:
PROSEDÜR
Bir Dizin (Index) Oluşturma
BİR DİZİN (INDEX) OLUŞTURMA
MongoDB’de, dizin ya da indeks yapıları sayesinde, bir koleksiyon (collection) içindeki belgelere (document) çok daha hızlı olarak erişmek mümkündür. Bu metinde dizin ve indeks sözcükleri eş anlamlı olarak kullanılacaktır. İndeks yapıları nispeten az yer kaplayan ancak etkin veri yapılarıdır. Kullanıcılar herhangi bir koleksiyon için, herhangi bir belge üzerindeki herhangi bir alan (field) için indeksler oluşturabilirler. Default olarak, MongoDB, her koleksiyon için, _id alanı üzerinde bir indeks oluşturur.
Veri Tabanı Oluşturma - Use Komutu
VERİ TABANI OLUŞTURMA - USE KOMUTU
Sistemde mevcut olmayan bir veritabanını, ilk kez oluşturmak ya da mevcut bir veritabanını kullanmaya başlamak için, use komutu aşağıdaki biçimde kullanılmalıdır;
> use kitabevi
switched to db kitabevi
>
Daha sonra db komutunu girerseniz “kitabevi” veri tabanının adı görüntülenecektir:
MongoDB'ye Giriş
MongoDB
MongoDB, genel maksatlı (general purpose) bir veritabanı sistemidir. En önemli özellikleri, esnek yapıda, ölçeklenebilir ve güvenilir bir veri tabanı yönetim sistemi oluşudur. İkincil indeksler, aralık sorgulamaları, sıralama işlemleri ve mekan indekslerini bir arada kullanarak etkin uygulamalar geliştirmek imkanını sağlar.