SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
MongoDB Sunum
Tarık YILMAZ
MongoDB Sunum

MongoDB Nedir?
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]
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, ...
MongoDB Sunum

SQL ve NoSQL arasındaki
farklar nelerdir ?
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
MongoDB Sunum

Hangi Durumlarda MongoDB
Kullanılmalı?
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)
MongoDB Sunum

Kimler Kullanıyor?
Kimler Kullanıyor?
MySQL vs MongoDB

MySQL

MongoDB

Database
Table
Row
Column

DB
Collection
Document
Field

Column Name => Value

Key => Value
MongoDB Sunum

PHP ve MongoDB
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]
PHP MongoDB
User collection :
{
}

“username” : “tarik54”,
“comment” : [1,13,34,76,122]

Comment collection:
{
}

relation
“id” : 34
“content” : “Hello World!”
PHP MongoDB

PHP Classes & Objects
•
•
•
•
•
•

MongoClient
MongoDB
MongoCollection
MongoCursor
MongoGridFS
MongoGridFSCursor
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”);
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);
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);
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));
MongoDB vs MySQL

MongoDB ve MySQL
Benchmark
MySQL vs MongoDB

MySQL
v5.5.35
Mysqli

vs.

MongoDB
v2.4.9
PHPMongo

PHP Client
100000 adet veri
Insert + Get + Increment
Sync requests
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
MongoDB Sunum

Sorular?

Contenu connexe

Tendances

Berkeley Data Analytics Stack Genel Bakış
Berkeley Data Analytics Stack Genel Bakış Berkeley Data Analytics Stack Genel Bakış
Berkeley Data Analytics Stack Genel Bakış Veysel Taşcıoğlu
 
Spring Data MongoDB Webiner
Spring Data MongoDB WebinerSpring Data MongoDB Webiner
Spring Data MongoDB WebinerHakan Özler
 
Hadoop & Cloudera Workshop
Hadoop & Cloudera WorkshopHadoop & Cloudera Workshop
Hadoop & Cloudera WorkshopSerkan Sakınmaz
 
Hadoop,Pig,Hive ve Oozie ile Büyük Veri Analizi
Hadoop,Pig,Hive ve Oozie ile Büyük Veri AnaliziHadoop,Pig,Hive ve Oozie ile Büyük Veri Analizi
Hadoop,Pig,Hive ve Oozie ile Büyük Veri AnaliziSerkan Sakınmaz
 
Apache Spark : Genel Bir Bakış
Apache Spark : Genel Bir BakışApache Spark : Genel Bir Bakış
Apache Spark : Genel Bir BakışBurak KÖSE
 
Ankara Spark Meetup - Big Data & Apache Spark Mimarisi Sunumu
Ankara Spark Meetup - Big Data & Apache Spark Mimarisi SunumuAnkara Spark Meetup - Big Data & Apache Spark Mimarisi Sunumu
Ankara Spark Meetup - Big Data & Apache Spark Mimarisi SunumuSerkan Sakınmaz
 
Hbase Kullanım Senaryoları
Hbase Kullanım SenaryolarıHbase Kullanım Senaryoları
Hbase Kullanım SenaryolarıTalat UYARER
 

Tendances (9)

Berkeley Data Analytics Stack Genel Bakış
Berkeley Data Analytics Stack Genel Bakış Berkeley Data Analytics Stack Genel Bakış
Berkeley Data Analytics Stack Genel Bakış
 
Spring Data MongoDB Webiner
Spring Data MongoDB WebinerSpring Data MongoDB Webiner
Spring Data MongoDB Webiner
 
Hadoop & Cloudera Workshop
Hadoop & Cloudera WorkshopHadoop & Cloudera Workshop
Hadoop & Cloudera Workshop
 
Hadoop,Pig,Hive ve Oozie ile Büyük Veri Analizi
Hadoop,Pig,Hive ve Oozie ile Büyük Veri AnaliziHadoop,Pig,Hive ve Oozie ile Büyük Veri Analizi
Hadoop,Pig,Hive ve Oozie ile Büyük Veri Analizi
 
Apache Spark : Genel Bir Bakış
Apache Spark : Genel Bir BakışApache Spark : Genel Bir Bakış
Apache Spark : Genel Bir Bakış
 
Ankara Spark Meetup - Big Data & Apache Spark Mimarisi Sunumu
Ankara Spark Meetup - Big Data & Apache Spark Mimarisi SunumuAnkara Spark Meetup - Big Data & Apache Spark Mimarisi Sunumu
Ankara Spark Meetup - Big Data & Apache Spark Mimarisi Sunumu
 
Big Data Sunum
Big Data SunumBig Data Sunum
Big Data Sunum
 
Hbase Kullanım Senaryoları
Hbase Kullanım SenaryolarıHbase Kullanım Senaryoları
Hbase Kullanım Senaryoları
 
Linkle mimari
Linkle mimariLinkle mimari
Linkle mimari
 

Similaire à Mongo sunum

React.js Web Programlama
React.js Web ProgramlamaReact.js Web Programlama
React.js Web ProgramlamaCihan Özhan
 
Serverless ile istegelsin
Serverless ile istegelsin Serverless ile istegelsin
Serverless ile istegelsin Ceri Tandogan
 
Berkeley Data Analytics Stack Genel Bakış
Berkeley Data Analytics Stack Genel BakışBerkeley Data Analytics Stack Genel Bakış
Berkeley Data Analytics Stack Genel Bakıştechbase
 
Hadoop @ devveri.com
Hadoop @ devveri.comHadoop @ devveri.com
Hadoop @ devveri.comHakan Ilter
 
Jstanbul, Node.js based Socket.IO, Express and HTML5 based Bingo Game
Jstanbul, Node.js based Socket.IO, Express and HTML5 based Bingo GameJstanbul, Node.js based Socket.IO, Express and HTML5 based Bingo Game
Jstanbul, Node.js based Socket.IO, Express and HTML5 based Bingo GameEmrah Ayanoglu
 
TBD Bilişim 2014 Veri Analitiği
TBD Bilişim 2014 Veri AnalitiğiTBD Bilişim 2014 Veri Analitiği
TBD Bilişim 2014 Veri Analitiğiisa ölmez
 
MongoDB - JSON'a Genel Bakış
MongoDB - JSON'a Genel BakışMongoDB - JSON'a Genel Bakış
MongoDB - JSON'a Genel BakışCihan Özhan
 
Veri işleme üzerine, Hakan Sarıbıyık
Veri işleme üzerine, Hakan SarıbıyıkVeri işleme üzerine, Hakan Sarıbıyık
Veri işleme üzerine, Hakan SarıbıyıkHakan Sarıbıyık
 
Vhdl dokumani
Vhdl dokumaniVhdl dokumani
Vhdl dokumanisersld80
 
Pig ve Hive ile Hadoop üzerinde Veri Analizi
Pig ve Hive ile Hadoop üzerinde Veri AnaliziPig ve Hive ile Hadoop üzerinde Veri Analizi
Pig ve Hive ile Hadoop üzerinde Veri AnaliziHakan Ilter
 
Yazılım Yetekenleri İle Teknik SEO Dünyasında Harikalar Yaratın
Yazılım Yetekenleri İle Teknik SEO Dünyasında Harikalar YaratınYazılım Yetekenleri İle Teknik SEO Dünyasında Harikalar Yaratın
Yazılım Yetekenleri İle Teknik SEO Dünyasında Harikalar YaratınYusuf Ozbay
 
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari OluşturmaSymfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari OluşturmaHüseyin Mert
 
Sunucularımızı Gözleyelim
Sunucularımızı GözleyelimSunucularımızı Gözleyelim
Sunucularımızı GözleyelimOguz Yarimtepe
 
WordPress ile buyuk olcekli siteler
WordPress ile buyuk olcekli sitelerWordPress ile buyuk olcekli siteler
WordPress ile buyuk olcekli sitelerMustafa UYSAL
 
Seo dokumani
Seo dokumaniSeo dokumani
Seo dokumanisersld29
 

Similaire à Mongo sunum (20)

MongoDB Overview
MongoDB OverviewMongoDB Overview
MongoDB Overview
 
Modern Frontend
Modern FrontendModern Frontend
Modern Frontend
 
Riak ve RiakCS
Riak ve RiakCSRiak ve RiakCS
Riak ve RiakCS
 
React.js Web Programlama
React.js Web ProgramlamaReact.js Web Programlama
React.js Web Programlama
 
Serverless ile istegelsin
Serverless ile istegelsin Serverless ile istegelsin
Serverless ile istegelsin
 
Berkeley Data Analytics Stack Genel Bakış
Berkeley Data Analytics Stack Genel BakışBerkeley Data Analytics Stack Genel Bakış
Berkeley Data Analytics Stack Genel Bakış
 
Hadoop @ devveri.com
Hadoop @ devveri.comHadoop @ devveri.com
Hadoop @ devveri.com
 
Jstanbul, Node.js based Socket.IO, Express and HTML5 based Bingo Game
Jstanbul, Node.js based Socket.IO, Express and HTML5 based Bingo GameJstanbul, Node.js based Socket.IO, Express and HTML5 based Bingo Game
Jstanbul, Node.js based Socket.IO, Express and HTML5 based Bingo Game
 
TBD Bilişim 2014 Veri Analitiği
TBD Bilişim 2014 Veri AnalitiğiTBD Bilişim 2014 Veri Analitiği
TBD Bilişim 2014 Veri Analitiği
 
MongoDB - JSON'a Genel Bakış
MongoDB - JSON'a Genel BakışMongoDB - JSON'a Genel Bakış
MongoDB - JSON'a Genel Bakış
 
Veri işleme üzerine, Hakan Sarıbıyık
Veri işleme üzerine, Hakan SarıbıyıkVeri işleme üzerine, Hakan Sarıbıyık
Veri işleme üzerine, Hakan Sarıbıyık
 
Vhdl dokumani
Vhdl dokumaniVhdl dokumani
Vhdl dokumani
 
Pig ve Hive ile Hadoop üzerinde Veri Analizi
Pig ve Hive ile Hadoop üzerinde Veri AnaliziPig ve Hive ile Hadoop üzerinde Veri Analizi
Pig ve Hive ile Hadoop üzerinde Veri Analizi
 
Yazılım Yetekenleri İle Teknik SEO Dünyasında Harikalar Yaratın
Yazılım Yetekenleri İle Teknik SEO Dünyasında Harikalar YaratınYazılım Yetekenleri İle Teknik SEO Dünyasında Harikalar Yaratın
Yazılım Yetekenleri İle Teknik SEO Dünyasında Harikalar Yaratın
 
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari OluşturmaSymfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
 
Sunucularımızı Gözleyelim
Sunucularımızı GözleyelimSunucularımızı Gözleyelim
Sunucularımızı Gözleyelim
 
No SQL & MongoDB Nedir?
No SQL & MongoDB Nedir?No SQL & MongoDB Nedir?
No SQL & MongoDB Nedir?
 
Web development
Web developmentWeb development
Web development
 
WordPress ile buyuk olcekli siteler
WordPress ile buyuk olcekli sitelerWordPress ile buyuk olcekli siteler
WordPress ile buyuk olcekli siteler
 
Seo dokumani
Seo dokumaniSeo dokumani
Seo dokumani
 

Mongo sunum