Mongo sunum

833 views
663 views

Published on

MongoDB Sunum - SOCIAPlus

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

No Downloads
Views
Total views
833
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
14
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Mongo sunum

  1. 1. MongoDB Sunum Tarık YILMAZ
  2. 2. MongoDB Sunum MongoDB Nedir?
  3. 3. MongoDB Nedir? MongoDB, Doküman tabanlı, C++ ile geliştirilen bir NoSQL veri tabanıdır. Bilinen en yaygın NoSQL veri tabanıdır. Veriler BSON (Binary JSON) türünde dokümanlarda tutulur. Tablo yoktur, tasarım yoktur, ilişki yoktur. [Schema-less]
  4. 4. MongoDB Nedir? Yayılmasında etken olan durumlar; • hızlı R/W kapasitesi • dinamik veri yapısı • yatay ölçeklenebilme • aggregation ve map-reduce desteği • GridFS ile dosya ve metadata saklama • C++, PHP, Java, Python, JS, C#, Perl, ...
  5. 5. MongoDB Sunum SQL ve NoSQL arasındaki farklar nelerdir ?
  6. 6. SQL vs NoSQL SQL • • • • Sabit tablo yapısı vardır Kalıp veriler için uygundur Genelde küçük ve orta çaplı veriler için tasarlanmıştır Dağıtık yapı için pek uygun değildir NoSQL • • • • Şemasız dinamik tasarım vardır Esnek veriler için uygundur Orta ve büyük veriler için tasarlanmıştır Dağıtık yapıya önem verilir
  7. 7. MongoDB Sunum Hangi Durumlarda MongoDB Kullanılmalı?
  8. 8. MongoDB Kullanım Durumu • • • • • • Yüksek R/W trafiği Karmaşık sorgu & analiz ihtiyacı Kullanıcı IO, haber, duyuru verileri Log verileri Ürün, katalog verileri saklanması Resim, video saklanması (GridFS)
  9. 9. MongoDB Sunum Kimler Kullanıyor?
  10. 10. Kimler Kullanıyor?
  11. 11. MySQL vs MongoDB MySQL MongoDB Database Table Row Column DB Collection Document Field Column Name => Value Key => Value
  12. 12. MongoDB Sunum PHP ve MongoDB
  13. 13. PHP MongoDB Örnek veri : { } “username” : “trK.54.Ylmz”, “password” : “a123ay346ADQ2asd”, “logged” : false, “activated” : true, “regdate” : new MongoDate(), “age” : 22, “sales” : {“electronic”: [“ipod”, “iphone”]}, “comment” : [1,13,34,76,122]
  14. 14. PHP MongoDB User collection : { } “username” : “tarik54”, “comment” : [1,13,34,76,122] Comment collection: { } relation “id” : 34 “content” : “Hello World!”
  15. 15. PHP MongoDB PHP Classes & Objects • • • • • • MongoClient MongoDB MongoCollection MongoCursor MongoGridFS MongoGridFSCursor
  16. 16. PHP MongoDB • • • • • • $con $con $con $con = = = = new MongoClient(); new MongoClient(“mongodb://localhost:27017”); new MongoClient(“mongodb://user:pass@67.169.147/test”) new MongoClient( “mongodb://localhost:12345,serv1.example.com/dbtest”); $coll = $con->selectCollection(“test”, “testColl”); $coll = $con->selectDB(“test”)->selectCollection(“testColl”);
  17. 17. PHP MongoDB • • • • $data = $coll->findOne(array(“username” => “tarik54”)); $datas = $coll->find( array(“logged” => true), array(“username” => true)); $datas = $coll->find(array(“logged” => true, '$or' => [“age” => 22, “activated” => true])); $datas = $coll->find(array(“logged“ => true)) ->sort(array(“username” => -1)) ->skip(10) ->limit(10);
  18. 18. PHP MongoDB • • • • • • • $object = array(“username” => “tarik54”, “password” => “2312aa”, “logged” => false); $result = $coll->insert($object); $object2 = new UserObject(); $object2->setUsername(“tarik54”); $object2->setPassword(“2312aa”); $object2->setLogStatus(false); $result = $coll->insert($object);
  19. 19. PHP MongoDB • • • • $coll->update(array(“username” => “tarik54”), array('$set' => array('logged' => true))); $coll->update(array(“uid” => 12561211), array('$inc' => array(“age” => 1))); $coll->update(array(“uid” => 12561211), array(“$push” => array(“comment” => 152))); $coll->remove(array(“activated” => false));
  20. 20. MongoDB vs MySQL MongoDB ve MySQL Benchmark
  21. 21. MySQL vs MongoDB MySQL v5.5.35 Mysqli vs. MongoDB v2.4.9 PHPMongo PHP Client 100000 adet veri Insert + Get + Increment Sync requests
  22. 22. MySQL vs MongoDB MySQL vs. Get : 23.7655899525352 Insert : 607.1592478752136 Increm. : 439.2179238796234 sonuçlar sn türündedir. MongoDB 8.2969670295715 11.084399938583 19.202459096909
  23. 23. MongoDB Sunum Sorular?

×