SlideShare a Scribd company logo
1 of 36
Introducing
   Vagmi Mudumbai
(vagmi@artha42.com)
Who am I?
Who am I?
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”]};
db.people.save(person);
A bit about NoSQL
Indexing       Ad-ho
                                            c   Quer
       tor age                                         ies
 SO NS
B
              M ap/Reduce            -place U pdates
                                  In
    Auto
           Shard                    Repli
                 ing                      catio
                                                n
                         GridFS



           What is it about
It makes us a super hero
BSON Storage
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”]};
db.people.save(person);


               http://bsonspec.org/
Binary
Supports datatypes like
• Date
• Bindata
• Regexs
Querying
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);
Querying
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);

db.people.find({type:
“hacker”});
Querying
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);

db.people.find({type:
“hacker”});

db.people.find({uses:
“rails”});
//
can
search
within
tags
Querying
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);

db.people.find({type:
“hacker”});

db.people.find({uses:
“rails”});
//
can
search
within
tags

db.people.find({age:
{$gt:
25}});
//
can
do
mathematics
Querying
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);

db.people.find({type:
“hacker”});

db.people.find({uses:
“rails”});
//
can
search
within
tags

db.people.find({age:
{$gt:
25}});
//
can
do
mathematics

db.people.find({“location.city”:”chennai”});
//can
search














































//
within
docs
Querying
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);

db.people.find({type:
“hacker”});

db.people.find({uses:
“rails”});
//
can
search
within
tags

db.people.find({age:
{$gt:
25}});
//
can
do
mathematics

db.people.find({“location.city”:”chennai”});
//can
search














































//
within
docs

db.people.find().sort({age:1}).skip(10).limit(10)
//pagination
Indexing
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”]};
db.people.save(person);
db.people.ensureIndex({“type”:1});
db.people.ensureIndex({“uses”:1});
db.people.getIndexes();
//
returns
a
list
of
indexes



No different from a standard database
Can index on multiple fields
Can index into sub documents and arrays
_id is automatically indexed
Updates
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);
Updates
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);

var
p
=
db.people.findOne({type:
“hacker”});
p.age
=
29;

db.people.save(p);
//updates
the
above
record
Updates
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);

var
p
=
db.people.findOne({type:
“hacker”});
p.age
=
29;

db.people.save(p);
//updates
the
above
record

var
p
=
db.people.findOne({type:
“hacker”});
db.people.update({_id:
p._id},{$inc:{age:1}});
Updates
var
person
=
{name:
“Vagmi
Mudumbai”,
type:
”hacker”














hacks_on:
[“artha42”,”chennaigeeks”],














uses:
[“mongodb”,”rails”,”sinatra”],














age:
30,














location:
{city:
“chennai”}};
db.people.save(person);

var
p
=
db.people.findOne({type:
“hacker”});
p.age
=
29;

db.people.save(p);
//updates
the
above
record

var
p
=
db.people.findOne({type:
“hacker”});
db.people.update({_id:
p._id},{$inc:{age:1}});

var
p
=
db.people.findOne({type:
“hacker”});
db.people.update({_id:
p._id},

















{$inc:{age:1},$push:{uses:
“vim”}});
Map/Reduce
{
url:
“/blog/something”,


user_id:
ObjectID(‘xxxxxx’),


date:
“Sat
Oct
16
2010
06:30:00
GMT+0530
(IST)”
}




                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
Map/Reduce
{
url:
“/blog/something”,


user_id:
ObjectID(‘xxxxxx’),


date:
“Sat
Oct
16
2010
06:30:00
GMT+0530
(IST)”
}

map
=
function()
{
  day
=
Date.UTC(this.date.getFullYear(),
  














this.date.getMonth(),this.date.getDate);
  emit({day:
day,
user_id:
this.user_id},{count:
1});
}




                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
Map/Reduce
{
url:
“/blog/something”,


user_id:
ObjectID(‘xxxxxx’),


date:
“Sat
Oct
16
2010
06:30:00
GMT+0530
(IST)”
}

map
=
function()
{
  day
=
Date.UTC(this.date.getFullYear(),
  














this.date.getMonth(),this.date.getDate);
  emit({day:
day,
user_id:
this.user_id},{count:
1});
}

reduce
=
function(key,values){
  var
count=0;
  values.forEach(function(v){
    count+=v;
  }
  return
{count:
count}
}



                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
Map/Reduce
{
url:
“/blog/something”,


user_id:
ObjectID(‘xxxxxx’),


date:
“Sat
Oct
16
2010
06:30:00
GMT+0530
(IST)”
}

map
=
function()
{
  day
=
Date.UTC(this.date.getFullYear(),
  














this.date.getMonth(),this.date.getDate);
  emit({day:
day,
user_id:
this.user_id},{count:
1});
}

reduce
=
function(key,values){
  var
count=0;
  values.forEach(function(v){
    count+=v;
  }
  return
{count:
count}
}

db.pageviews.mapReduce(map,reduce,{out:
pageview_results});
                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
Map/Reduce (contd)
{
_id:
{day:
“Sat
Oct
16
2010
00:00:00Z”,









user_id:
ObjectId(xxx)},


count:
20}




                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
Map/Reduce (contd)
{
_id:
{day:
“Sat
Oct
16
2010
00:00:00Z”,









user_id:
ObjectId(xxx)},


count:
20}

map
=
function()
{
  emit(this,{count:
1});
}




                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
Map/Reduce (contd)
{
_id:
{day:
“Sat
Oct
16
2010
00:00:00Z”,









user_id:
ObjectId(xxx)},


count:
20}

map
=
function()
{
  emit(this,{count:
1});
}

reduce
=
function(key,values){
  var
count=0;
  values.forEach(function(v){
    count+=v;
  }
  return
{count:
count}
}




                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
Map/Reduce (contd)
{
_id:
{day:
“Sat
Oct
16
2010
00:00:00Z”,









user_id:
ObjectId(xxx)},


count:
20}

map
=
function()
{
  emit(this,{count:
1});
}

reduce
=
function(key,values){
  var
count=0;
  values.forEach(function(v){
    count+=v;
  }
  return
{count:
count}
}

db.pageview_results.mapReduce(map,reduce,






























{out:
pageview_results_unique});
                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
GridFS (in Ruby)




    Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
GridFS (in Ruby)
@db
=
Mongo::Connection.new.db(“chennaigeeks”)
@fs
=
GridFileSystem.new(@db)




                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
GridFS (in Ruby)
@db
=
Mongo::Connection.new.db(“chennaigeeks”)
@fs
=
GridFileSystem.new(@db)

image
=
File.open(“me.png”)
@fs.open(“me.png”,’w’)
do
|f|
  f.write
image
end




                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
GridFS (in Ruby)
@db
=
Mongo::Connection.new.db(“chennaigeeks”)
@fs
=
GridFileSystem.new(@db)

image
=
File.open(“me.png”)
@fs.open(“me.png”,’w’)
do
|f|
  f.write
image
end

img
=
@fs.open(“me.png”,”r”)
{
|f|
f.read
}



                     Source: http://cookbook.mongodb.org/patterns/unique_items_map_reduce/
Replication (Master/Slave)
db@master
/opt/mongo/bin$
./mongod
‐‐master



db@slave
/opt/mongo/bin$
./mongod
‐‐slave
‐‐source
master
Replication (Replica Sets)
db@node1
/opt/mongo/bin$
./mongod
‐‐replSet
myRS

db@node2
/opt/mongo/bin$
./mongod
‐‐replSet
myRS

db@node3
/opt/mongo/bin$
./mongod
‐‐replSet
myRS

db@dev
/opt/mongo/bin$
./mongo
node1
MongoDB
shell
version:
1.6.0
connecting
to:
node1/test
>
config
=
{_id:
“myRS”,
members
:
[
                {_id:
0,
host:
“node1”},
                {_id:
0,
host:
“node2”},
                {_id:
0,
host:
“node3”}]}
>
rs.initiate(config);

>
rs.status()
Auto Sharding

db@node1
/opt/mongo/bin$
./mongod
‐‐shardsvr

db@node2
/opt/mongo/bin$
./mongod
‐‐shardsvr

db@node3
/opt/mongo/bin$
./mongod
‐‐configsvr

db@appserver
/opt/mongo/bin$
./mongos
‐‐configdb
node3
Auto Sharding (contd)
db@appserver
/opt/mongo/bin$
./mongo
MongoDB
shell
version:
1.6.0
connecting
to:
test
>
use
admin
switched
to
db
admin
>
db.runCommand({addShard
:
“node1”});
{
“shardadded”:
“shard0000”,
”ok”:
1}
>
db.runCommand({addShard
:
“node2”});
{
“shardadded”:
“shard0001”,
”ok”:
1}
>
db.runCommand(enableSharding
:
“mydb”)
{“ok”
:
1}
>
db.runCommand({
shardCollection
:
“mydb.people”,



















key
:
{name
:
1}
});
{“ok”
:
1
}
Any Questions?
vagmi@artha42.com
http://blog.chennaigeeks.com/

More Related Content

What's hot

Running Production MongoDB Lightning Talk
Running Production MongoDB Lightning TalkRunning Production MongoDB Lightning Talk
Running Production MongoDB Lightning Talkchrisckchang
 
20121023 mongodb schema-design
20121023 mongodb schema-design20121023 mongodb schema-design
20121023 mongodb schema-designMongoDB
 
Code Tops Comments
Code Tops CommentsCode Tops Comments
Code Tops CommentsMr Giap
 
Back to Basics: My First MongoDB Application
Back to Basics: My First MongoDB ApplicationBack to Basics: My First MongoDB Application
Back to Basics: My First MongoDB ApplicationMongoDB
 
MongoDB .local Munich 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pip...
MongoDB .local Munich 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pip...MongoDB .local Munich 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pip...
MongoDB .local Munich 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pip...MongoDB
 
Kevin milla arbieto informatica piktochart backup data
Kevin milla arbieto informatica   piktochart backup dataKevin milla arbieto informatica   piktochart backup data
Kevin milla arbieto informatica piktochart backup dataKevin Miguel Milla
 
Back to basics Italian webinar 2 Mia prima applicazione MongoDB
Back to basics Italian webinar 2  Mia prima applicazione MongoDBBack to basics Italian webinar 2  Mia prima applicazione MongoDB
Back to basics Italian webinar 2 Mia prima applicazione MongoDBMongoDB
 
NoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDBNoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDBJonathan Weiss
 
Apache CouchDB Presentation @ Sept. 2104 GTALUG Meeting
Apache CouchDB Presentation @ Sept. 2104 GTALUG MeetingApache CouchDB Presentation @ Sept. 2104 GTALUG Meeting
Apache CouchDB Presentation @ Sept. 2104 GTALUG MeetingMyles Braithwaite
 
Automatically Spotting Cross-language Relations
Automatically Spotting Cross-language RelationsAutomatically Spotting Cross-language Relations
Automatically Spotting Cross-language RelationsFederico Tomassetti
 
Normas apa y derechos de autor piktochart backup data (1)
Normas apa y derechos de autor   piktochart backup data (1)Normas apa y derechos de autor   piktochart backup data (1)
Normas apa y derechos de autor piktochart backup data (1)000409123
 
Mongo db modifiers
Mongo db modifiersMongo db modifiers
Mongo db modifierszarigatongy
 
Embedding a language into string interpolator
Embedding a language into string interpolatorEmbedding a language into string interpolator
Embedding a language into string interpolatorMichael Limansky
 
San Francisco Java User Group
San Francisco Java User GroupSan Francisco Java User Group
San Francisco Java User Groupkchodorow
 
MongoDB - Back to Basics - La tua prima Applicazione
MongoDB - Back to Basics - La tua prima ApplicazioneMongoDB - Back to Basics - La tua prima Applicazione
MongoDB - Back to Basics - La tua prima ApplicazioneMassimo Brignoli
 
Webinar: General Technical Overview of MongoDB for Dev Teams
Webinar: General Technical Overview of MongoDB for Dev TeamsWebinar: General Technical Overview of MongoDB for Dev Teams
Webinar: General Technical Overview of MongoDB for Dev TeamsMongoDB
 
Every Click Counts (But All the Money Goes to Me)
Every Click Counts (But All the Money Goes to Me)Every Click Counts (But All the Money Goes to Me)
Every Click Counts (But All the Money Goes to Me)Avast
 

What's hot (20)

Houdini - What lies ahead
Houdini - What lies aheadHoudini - What lies ahead
Houdini - What lies ahead
 
Running Production MongoDB Lightning Talk
Running Production MongoDB Lightning TalkRunning Production MongoDB Lightning Talk
Running Production MongoDB Lightning Talk
 
Mongodb railscamphh
Mongodb railscamphhMongodb railscamphh
Mongodb railscamphh
 
20121023 mongodb schema-design
20121023 mongodb schema-design20121023 mongodb schema-design
20121023 mongodb schema-design
 
Code Tops Comments
Code Tops CommentsCode Tops Comments
Code Tops Comments
 
Back to Basics: My First MongoDB Application
Back to Basics: My First MongoDB ApplicationBack to Basics: My First MongoDB Application
Back to Basics: My First MongoDB Application
 
MongoDB .local Munich 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pip...
MongoDB .local Munich 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pip...MongoDB .local Munich 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pip...
MongoDB .local Munich 2019: Aggregation Pipeline Power++: How MongoDB 4.2 Pip...
 
Kevin milla arbieto informatica piktochart backup data
Kevin milla arbieto informatica   piktochart backup dataKevin milla arbieto informatica   piktochart backup data
Kevin milla arbieto informatica piktochart backup data
 
Back to basics Italian webinar 2 Mia prima applicazione MongoDB
Back to basics Italian webinar 2  Mia prima applicazione MongoDBBack to basics Italian webinar 2  Mia prima applicazione MongoDB
Back to basics Italian webinar 2 Mia prima applicazione MongoDB
 
NoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDBNoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDB
 
Apache CouchDB Presentation @ Sept. 2104 GTALUG Meeting
Apache CouchDB Presentation @ Sept. 2104 GTALUG MeetingApache CouchDB Presentation @ Sept. 2104 GTALUG Meeting
Apache CouchDB Presentation @ Sept. 2104 GTALUG Meeting
 
Automatically Spotting Cross-language Relations
Automatically Spotting Cross-language RelationsAutomatically Spotting Cross-language Relations
Automatically Spotting Cross-language Relations
 
Normas apa y derechos de autor piktochart backup data (1)
Normas apa y derechos de autor   piktochart backup data (1)Normas apa y derechos de autor   piktochart backup data (1)
Normas apa y derechos de autor piktochart backup data (1)
 
Mongo db modifiers
Mongo db modifiersMongo db modifiers
Mongo db modifiers
 
Embedding a language into string interpolator
Embedding a language into string interpolatorEmbedding a language into string interpolator
Embedding a language into string interpolator
 
MongoDB
MongoDBMongoDB
MongoDB
 
San Francisco Java User Group
San Francisco Java User GroupSan Francisco Java User Group
San Francisco Java User Group
 
MongoDB - Back to Basics - La tua prima Applicazione
MongoDB - Back to Basics - La tua prima ApplicazioneMongoDB - Back to Basics - La tua prima Applicazione
MongoDB - Back to Basics - La tua prima Applicazione
 
Webinar: General Technical Overview of MongoDB for Dev Teams
Webinar: General Technical Overview of MongoDB for Dev TeamsWebinar: General Technical Overview of MongoDB for Dev Teams
Webinar: General Technical Overview of MongoDB for Dev Teams
 
Every Click Counts (But All the Money Goes to Me)
Every Click Counts (But All the Money Goes to Me)Every Click Counts (But All the Money Goes to Me)
Every Click Counts (But All the Money Goes to Me)
 

Similar to Introducing Vagmi Mudumbai and MongoDB

The Ruby/mongoDB ecosystem
The Ruby/mongoDB ecosystemThe Ruby/mongoDB ecosystem
The Ruby/mongoDB ecosystemHarold Giménez
 
First app online conf
First app   online confFirst app   online conf
First app online confMongoDB
 
Rapidly Iterating Across Platforms with Server-Driven UI
Rapidly Iterating Across Platforms with Server-Driven UIRapidly Iterating Across Platforms with Server-Driven UI
Rapidly Iterating Across Platforms with Server-Driven UILaura Kelly
 
Intro to MongoDB and datamodeling
Intro to MongoDB and datamodeling Intro to MongoDB and datamodeling
Intro to MongoDB and datamodeling rogerbodamer
 
An introduction into Spring Data
An introduction into Spring DataAn introduction into Spring Data
An introduction into Spring DataOliver Gierke
 
MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013
MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013
MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013Mosky Liu
 
Nodejs mongoose
Nodejs mongooseNodejs mongoose
Nodejs mongooseFin Chen
 
MongoSF - mongodb @ foursquare
MongoSF - mongodb @ foursquareMongoSF - mongodb @ foursquare
MongoSF - mongodb @ foursquarejorgeortiz85
 
MongoDB dla administratora
MongoDB dla administratora MongoDB dla administratora
MongoDB dla administratora 3camp
 
はじめてのMongoDB
はじめてのMongoDBはじめてのMongoDB
はじめてのMongoDBTakahiro Inoue
 
Ankur py mongo.pptx
Ankur py mongo.pptxAnkur py mongo.pptx
Ankur py mongo.pptxAnkur Raina
 
Cassandra Day London 2015: Getting Started with Apache Cassandra and Java
Cassandra Day London 2015: Getting Started with Apache Cassandra and JavaCassandra Day London 2015: Getting Started with Apache Cassandra and Java
Cassandra Day London 2015: Getting Started with Apache Cassandra and JavaDataStax Academy
 
Cassandra Day London: Building Java Applications
Cassandra Day London: Building Java ApplicationsCassandra Day London: Building Java Applications
Cassandra Day London: Building Java ApplicationsChristopher Batey
 
Schema Design with MongoDB
Schema Design with MongoDBSchema Design with MongoDB
Schema Design with MongoDBrogerbodamer
 
MongoDB全機能解説2
MongoDB全機能解説2MongoDB全機能解説2
MongoDB全機能解説2Takahiro Inoue
 
Mongoskin - Guilin
Mongoskin - GuilinMongoskin - Guilin
Mongoskin - GuilinJackson Tian
 
Mongoid in the real world
Mongoid in the real worldMongoid in the real world
Mongoid in the real worldKevin Faustino
 

Similar to Introducing Vagmi Mudumbai and MongoDB (20)

The Ruby/mongoDB ecosystem
The Ruby/mongoDB ecosystemThe Ruby/mongoDB ecosystem
The Ruby/mongoDB ecosystem
 
First app online conf
First app   online confFirst app   online conf
First app online conf
 
Rapidly Iterating Across Platforms with Server-Driven UI
Rapidly Iterating Across Platforms with Server-Driven UIRapidly Iterating Across Platforms with Server-Driven UI
Rapidly Iterating Across Platforms with Server-Driven UI
 
Intro to MongoDB and datamodeling
Intro to MongoDB and datamodeling Intro to MongoDB and datamodeling
Intro to MongoDB and datamodeling
 
An introduction into Spring Data
An introduction into Spring DataAn introduction into Spring Data
An introduction into Spring Data
 
MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013
MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013
MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013
 
Mongo db dla administratora
Mongo db dla administratoraMongo db dla administratora
Mongo db dla administratora
 
Nodejs mongoose
Nodejs mongooseNodejs mongoose
Nodejs mongoose
 
Talk MongoDB - Amil
Talk MongoDB - AmilTalk MongoDB - Amil
Talk MongoDB - Amil
 
MongoSF - mongodb @ foursquare
MongoSF - mongodb @ foursquareMongoSF - mongodb @ foursquare
MongoSF - mongodb @ foursquare
 
MongoDB dla administratora
MongoDB dla administratora MongoDB dla administratora
MongoDB dla administratora
 
はじめてのMongoDB
はじめてのMongoDBはじめてのMongoDB
はじめてのMongoDB
 
Ankur py mongo.pptx
Ankur py mongo.pptxAnkur py mongo.pptx
Ankur py mongo.pptx
 
Cassandra Day London 2015: Getting Started with Apache Cassandra and Java
Cassandra Day London 2015: Getting Started with Apache Cassandra and JavaCassandra Day London 2015: Getting Started with Apache Cassandra and Java
Cassandra Day London 2015: Getting Started with Apache Cassandra and Java
 
Cassandra Day London: Building Java Applications
Cassandra Day London: Building Java ApplicationsCassandra Day London: Building Java Applications
Cassandra Day London: Building Java Applications
 
Schema Design with MongoDB
Schema Design with MongoDBSchema Design with MongoDB
Schema Design with MongoDB
 
MongoDB全機能解説2
MongoDB全機能解説2MongoDB全機能解説2
MongoDB全機能解説2
 
Mongoskin - Guilin
Mongoskin - GuilinMongoskin - Guilin
Mongoskin - Guilin
 
MongoDB With Style
MongoDB With StyleMongoDB With Style
MongoDB With Style
 
Mongoid in the real world
Mongoid in the real worldMongoid in the real world
Mongoid in the real world
 

More from Vagmi Mudumbai

Bitcoin a developer's perspective
Bitcoin a developer's perspectiveBitcoin a developer's perspective
Bitcoin a developer's perspectiveVagmi Mudumbai
 
Crystal - Statically Typed Ruby
Crystal - Statically Typed RubyCrystal - Statically Typed Ruby
Crystal - Statically Typed RubyVagmi Mudumbai
 
Pragmatic Functional Programming in the JS land with Clojurescript and Om
Pragmatic Functional Programming in the JS land with Clojurescript and OmPragmatic Functional Programming in the JS land with Clojurescript and Om
Pragmatic Functional Programming in the JS land with Clojurescript and OmVagmi Mudumbai
 
Building Single Page Apps with React.JS
Building Single Page Apps with React.JSBuilding Single Page Apps with React.JS
Building Single Page Apps with React.JSVagmi Mudumbai
 
JSFoo 2014 - Building beautiful apps with Clojurescript
JSFoo 2014 - Building beautiful apps with ClojurescriptJSFoo 2014 - Building beautiful apps with Clojurescript
JSFoo 2014 - Building beautiful apps with ClojurescriptVagmi Mudumbai
 
Real Time Analytics with Cassandra
Real Time Analytics with CassandraReal Time Analytics with Cassandra
Real Time Analytics with CassandraVagmi Mudumbai
 
Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1
Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1
Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1Vagmi Mudumbai
 
Github - Down the Rabbit Hole
Github  - Down the Rabbit HoleGithub  - Down the Rabbit Hole
Github - Down the Rabbit HoleVagmi Mudumbai
 
Ruby on Rails - Introduction
Ruby on Rails - IntroductionRuby on Rails - Introduction
Ruby on Rails - IntroductionVagmi Mudumbai
 

More from Vagmi Mudumbai (11)

Bitcoin a developer's perspective
Bitcoin a developer's perspectiveBitcoin a developer's perspective
Bitcoin a developer's perspective
 
Purely functional UIs
Purely functional UIsPurely functional UIs
Purely functional UIs
 
Crystal - Statically Typed Ruby
Crystal - Statically Typed RubyCrystal - Statically Typed Ruby
Crystal - Statically Typed Ruby
 
Pragmatic Functional Programming in the JS land with Clojurescript and Om
Pragmatic Functional Programming in the JS land with Clojurescript and OmPragmatic Functional Programming in the JS land with Clojurescript and Om
Pragmatic Functional Programming in the JS land with Clojurescript and Om
 
Building Single Page Apps with React.JS
Building Single Page Apps with React.JSBuilding Single Page Apps with React.JS
Building Single Page Apps with React.JS
 
JSFoo 2014 - Building beautiful apps with Clojurescript
JSFoo 2014 - Building beautiful apps with ClojurescriptJSFoo 2014 - Building beautiful apps with Clojurescript
JSFoo 2014 - Building beautiful apps with Clojurescript
 
Real Time Analytics with Cassandra
Real Time Analytics with CassandraReal Time Analytics with Cassandra
Real Time Analytics with Cassandra
 
Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1
Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1
Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1
 
Github - Down the Rabbit Hole
Github  - Down the Rabbit HoleGithub  - Down the Rabbit Hole
Github - Down the Rabbit Hole
 
Ruby on Rails - Introduction
Ruby on Rails - IntroductionRuby on Rails - Introduction
Ruby on Rails - Introduction
 
Introduction to JRuby
Introduction to JRubyIntroduction to JRuby
Introduction to JRuby
 

Recently uploaded

Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 

Recently uploaded (20)

Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 

Introducing Vagmi Mudumbai and MongoDB

Editor's Notes