NoSQL Nedir MongoDB ile .NET Kardeşliği

13
NoSQL Nedir? - MongoDB ile .NET Kardeşliği İbrahim ATAY Yazılım ve Veritabanı Danışmanı @ibrahim_atay www.ibrahimatay.org [email protected]

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

Page 1: 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 [email protected]

Page 2: NoSQL Nedir MongoDB ile .NET Kardeşliği

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.

Page 3: NoSQL Nedir MongoDB ile .NET Kardeşliği

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.

Page 4: NoSQL Nedir MongoDB ile .NET Kardeşliği

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/

Page 5: NoSQL Nedir MongoDB ile .NET Kardeşliği

NoSQL Farkları

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

Page 6: NoSQL Nedir MongoDB ile .NET Kardeşliği

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.

Page 7: NoSQL Nedir MongoDB ile .NET Kardeşliği

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

Page 8: NoSQL Nedir MongoDB ile .NET Kardeşliği

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.

Page 9: NoSQL Nedir MongoDB ile .NET Kardeşliği

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

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

Page 10: NoSQL Nedir MongoDB ile .NET Kardeşliği

MongoDB Gereksimleri ve kurulumu

Page 11: NoSQL Nedir MongoDB ile .NET Kardeşliği

MongoDB kurulum ve Uygulama Geliştirmek

Page 12: NoSQL Nedir MongoDB ile .NET Kardeşliği

Soru / Cevap

?

Page 13: NoSQL Nedir MongoDB ile .NET Kardeşliği

Kaynaklar

http://www.mongodb.org

http://www.10gen.com

Kristina Chodorow, Michael Dirolf