NoSQL Nedir MongoDB ile .NET Kardeşliği

Post on 20-Jan-2015

3.267 views 0 download

description

NoSQL Nedir ? MongoDB ile .NET Kardeşliği Semineri Notları http://www.ibrahimatay.org/post/2012/5/1/NoSQL-Nedir-MongoDB-ile-NET-Kardesligi-Semineri-Notlari.aspx Cloud Computing http://www.ibrahimatay.org/category/Cloud-Computing.aspx Geçtiğimiz tarihlerde “Nedirtv.com Webinerleri Yeniden Başlıyor !” isimli yazı ile dizi olarak sürecek olan internet seminerlerinde bahsetmiştim. Bu yazımda ise, internet seminerleri dizisinde, sizlere anlatmaya çalışmış olduğum “NoSQL Nedir ? MongoDB ile .NET Kardeşliği” konulu internet semineri ile ilgili metaryelleri paylaşmak istemekteyim.

Transcript of NoSQL Nedir MongoDB ile .NET Kardeşliği

NoSQL Nedir? - MongoDB ile .NET Kardeşliği

İbrahim ATAY Yazılım ve Veritabanı Danışmanı

@ibrahim_atay www.ibrahimatay.org info@ibrahimatay.org

NoSQL Nedir ?

1998’un sonlarına doğru ortaya çıkan bir kavramdır. Klasik ilişkisel veritabanı yapısnıda bulunmayan ve sorgulama için SQL dili kullanmayan veritabanı türüdür. Genel olarak xml ya da json formatında veri depolama yapmaktadır.

eğlenceyi seç, ilişkisel=yanlış; olan gerçek Dünyâ'dan faydalan

2009'da Atlanta'daki "no:sql(east)" konferansının NoSQL tartışması üzerinde derin etkileri oldu.

Var Olma Sebebi ?

Sürekli artan verileri ölçekleyebilmek

Karmaşa yaratan çok-çok ilişkiler(many to many)

Veri karmaşık “Join” kullanılmadan sadece primary key’e dayalı olarak tekrar tekrar çağırılıyorsa.

Uygulamaların sürekli genişlemesi

Sistemler sürekli olarak genişleyebilmektedir.

NoSQL Çeşitleri

Wide Column Store / Column Families (BigTable, Hbase, Cassandra)

Document Store (MongoDB, CouchDB, RavenDB)

Key Value / Tuple Store (Azure Table Storage, MemcacheDB)

Eventually Consistent Key Value Store(Amazon Dynamo, Dynomite)

Graph Databases(BigData, Neo4J)

http://nosql-database.org/

NoSQL Farkları

http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis

NoSQL Avantajları ve Dezavantajları

Klasik ilişkisel veritabanlarından farklı olarak schema yapısı bulundurmamaktadır.

“No only SQL” sıloganın kullanrak SQL dilini kullanmamaktadır.

Dağatık, ölçeklenebilir ve perfomas açısından daha avantajlıdır.

Fire And Forget Prensibi ile çalışmaktadır.

Birden fazla çekirdekli sistemlere uygu olarak çalışabilmektedir(Yatay ölçeklenebilirlik)

Saklamış olduğu verileri json ya da xml formatlarında saklamaktadır.

Oluşturulan veri yapısı, uygulamanın model katmanına bağılmı olarak çalışmaktadır.

MongoDB

MongoDB, bir Document store NoSQL veritabanıdır.

Indeksleme özelliğine sahiptir.

GirdFS özelliğine sahip olarak çalışmakta

Verilerimi bellekte tutulabiliryor.

Verilerini BSON formatında saklamaktadır.

C++ ile geliştirilmiştir.

%100 uptime çalışmak

MongoDB Sorgulama Yapısı

"nedirtv":{ "konu":"NoSQL Nedir? MongoDB ile .NET Kardesligi", "konusmaci":"Ibrahim ATAY", "Zaman":"14.11.20011 21:00"

}

Kolleksiyonlar üzerinde çalışılmaktadır.

JSON veri sorgulama işlemi yapmaktadır.

MongoDB sorgulama yapısı ve SQL karşılımı

http://www.mongodb.org/display/DOCS/SQL+to+Mongo+Mapping+Chart

MongoDB Gereksimleri ve kurulumu

MongoDB kurulum ve Uygulama Geliştirmek

Soru / Cevap

?

Kaynaklar

http://www.mongodb.org

http://www.10gen.com

Kristina Chodorow, Michael Dirolf