Your SlideShare is downloading. ×
0
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
MongoDB ve C# Driver'ı
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

MongoDB ve C# Driver'ı

1,198

Published on

Temel seviyede No-Sql ve MongoDB'nin C# driver'ının kullanımının anlatıldığı bir sunumdur.

Temel seviyede No-Sql ve MongoDB'nin C# driver'ının kullanımının anlatıldığı bir sunumdur.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,198
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. MongoDB And C# Serdar Büyüktemiz@hserdarb / serdarb.com altdotnetturkiyeWeb Application Developer
  • 2. Program• No-Sql• MongoDB• C# Driver• Demo
  • 3. NO-SQL
  • 4. Dünyada Sadece OLTP Databaseler Yok• Her problemin kendine has başka bir çözümü de olabilir. (NO – Not Only SQL) – Karşımıza çıkan işlerin %90’dan fazlası ilişkisel veri tabanlarıyla rahatlıkla çözülebilir… – Ama bunlar da var • Key-Value • Column Oriented • Document (MongoDB, CouchDB) • Graph • OLAP (No-Sql ler arasında anılmıyo…)
  • 5. http://jeeconf.com/archive/jeeconf-2011/materials/graph-db/
  • 6. Veri tabanı Boyut/Karmaşa Grafiği http://jeeconf.com/archive/jeeconf-2011/materials/graph-db/
  • 7. NoSQL Problem Çözüm Örnekleri• Key-Value • Uygulama State’ini Saklamak (Session)• Column Oriented • Google :) • Data warehouse• Document • Blog (Yazı Yorumları), • Eticaret (Ürün Özellikleri) • Hızlı insert• Graph • Arkadaşımın, arkadaşlarının, arkadaşları…• OLAP • Pek değişmeyen verilerde hızlı rapor gösterimi
  • 8. Genel Olarak Nasıl Bir DB Lazım?• Kolayca kullanmaya başlayabileceğimiz (şemasız)• İşler büyüdüğünde de bizi kaldırabilecek ama küçükken de yük olmayacak• Bize veri kaybettirmeyecek• Daima up olacak• No-Sql veri tabanları genel olarak bu düşünce ile farklı iş sorunlarını çözmek üzere geliştirilmişlerdir.
  • 9. İdeal MongoDB Başlangıç Setup’ı• Yazılımcı olarak kurmakla uğraşmayın bir bilen size kursun (spp42.com/mongodb/danismanlik)
  • 10. MONGODB
  • 11. RDBMS => MongoDBRDBMS MongoDBTable, View CollectionRow JSON DocumentIndex IndexJoin Embeded DocumentPartition ShardPartition Key Shard Key
  • 12. Neden MongoDB?• Popüler • Kolay• Şemasız• Web projeleri için ideal• High performance (İlişkili bir yapı kurmazsak ve makul oranda «embeded döküman» kullanırsak)• High availability (Replicated servers with automatic master failover)• Easy scalability (Automatic sharding)
  • 13. İş Büyüdükçe Aradaki Fark Ortaya Çıkıyor http://blog.michaelckennedy.net/2010/04/29/mongodb-vs-sql-server-2008-performance-showdown/
  • 14. Güzel bir web tutorialhttp://tutorial.mongly.com/tutorialBy Karl Seguin
  • 15. C# DRIVER
  • 16. Official C# Driver
  • 17. BSON Nedir?• BSON, MongoDB’nin «dökümanlar» için kullandığı veri saklama ve network transfer formatı.• Binary JSON• http://bsonspec.org/• http://www.mongodb.org/display/DOCS/BSON
  • 18. POCO’larla Çalışmak• İşleri kolaylaştıran kurallar… – Parametresiz public constructor – Serialize olmasını istediğiniz her Property için Public get ve set
  • 19. MongoDB’ye Bağlanmak• GetDatabase methodu db yoksa sizin için oluşturuyor.• http://www.mongodb.org/display/DOCS/CSharp+Driver+Tutorial#CSharpDriverTut orial-Connectionstrings• mongodb://[username:password@]hostname[:port][/[database][?options]]
  • 20. MongoCollection• GetCollection<MyType>
  • 21. Insert
  • 22. Find
  • 23. Map Reduce• Mümkün olduğunca çabuk çok miktarda data üzerinde paralel olarak işlem yapmak için bir çözüm…• CouchDB incremental Map Reduce Yapıyor…
  • 24. Map Reduce
  • 25. Demo• https://bitbucket.org/serdarb/mongo-c-driver-poc• https://github.com/serdarb/Mongo-C--Driver-POC
  • 26. Transaction• Transaction desteği yok – Çözümümümüz transaction gerektiriyorsa başka bir DB kullanmayı düşünebilirsiniz.• Kendiniz geliştirmek isterseniz şu linkleri inceleyebilirsiniz – http://docs.mongodb.org/manual/tutorial/perfor m-two-phase-commits/ – https://github.com/rystsov/mongodb-transaction- example
  • 27. Indexing
  • 28. İpucu• Mongodb’yi notablescan parameteresiyle çalıştırarak sorgularımızın «full table scan» yapmamasına emin olabiliriz... – Eğer bir sorgu fulltable scan yapıyorsa hata verecektir. Buda geliştirme anında index belirlememizde bize kılavuzluk edecektir
  • 29. Sources• http://www.mongodb.org/display/DOCS/Introduction• http://mongly.com/Multiple-Collections-Versus-Embedded-Documents/• http://openmymind.net/mongodb.pdf• http://www.mongodb.org/display/DOCS/Padding+Factor• https://github.com/mongodb/mongo• http://www.codeproject.com/Articles/273145/Using-MongoDB-with-the-Official-Csharp-Driver• http://stackoverflow.com/questions/4067197/mongodb-and-joins• http://www.mongodb.org/display/DOCS/Schema+Design#SchemaDesign-EmbeddingandLinking• http://docs.mongodb.org/manual/applications/database-references/• http://www.10gen.com/presentations?programming_lang=46• https://speakerdeck.com/mongodb/whats-new-in-the-net-driver• http://learnmongo.com/• http://www.mongovue.com/2010/11/03/yet-another-mongodb-map-reduce-tutorial/• http://spp42.com/mongodbde-dogru-index-kullanimi-nasil-kontrol-edilir-i/

×