SlideShare une entreprise Scribd logo
1  sur  26
Introduction to MongoDB 										Silicon Valley Code Camp 																			Oct 8th, 2011
Before we start…… NoSQL is a movement, its not antiSQL Relational Databases have their place, but they are not the only solution Diversify - Best tool for the job The footers contain quotes from the video Mongo DB is Web Scale
Agenda Relational Databases vs. NoSQL CAP Theorem  MongoDB at a high level Collections, Documents Inserting, Querying and Updating Other MongoDB Commands Replication Topologies Using MongoDB via a driver Few Internals Administration
Relational Databases Have been around for years De-facto standard for any persistence  ACID compliant Rigid Schema Usually hard to scale over a distributed network  Normalization is almost always a requirement ORMs tend to limit the optimizations you can do to the queries. Relational Databases were'nt built for Web Scale. They have impotence mismatch.
NoSQL Why? Not everything can be modeled in a relational construct Cluster-aware out of the box. Replication, shardingetc. is built into the core Schemaless (Mostly) Open Source, Community supported High performance by design and not ball-and-chained with ACID
CAP Theorem : Pick Two Consistency – Each client sees the same data Availability – The system is always available for any reads and writes Partition Tolerance – The system can tolerate any communication failure across the network (except someone pulling the plug across the datacenters). At any given point in time, only two of the above hold true in any distributed datastore. If thats what they need to do to get those kick ass benchmarks, then its a great design.
Visual Guide to NoSQL Databases Source: http://blog.nahurst.com/visual-guide-to-nosql-systems
How do they make up? Usually the NoSQL databases are AP, or CP. Consistency  Eventually consistent Write concerns Availability Read-only  stale data
MongoDB : High Level Document-based Database Schemaless Cluster-aware Easy Querying/Javascript Support Memory Mapped Drivers in all the popular languages Excellent developer velocity (Supported by 10gen) Durable via Journaling C-P System based on the CAP theorem MongoDB handles WebScale. You turn it on and it scales right up.
Collections The closest comparison to a MongoDB Collection in the relational world is a Table A collection is not bound by a schema A collection has a namespace Can be a capped collection It contains BSON documents
Documents Closest comparison in the relational world is a Row in a Table. Must reside within a Collection Looks like (structured) JSON, stored as BSON within a collection Limited to 16MB (as of 2.0) Larger sizes supported via GridFS Reference : http://www.bsonspec.org. Defined as Binary-encoded Serialization format for JSON-like Documents.
Inserting Documents Console defaults to localhost port 27017 show databases show collections Insert a document in a collection Bulk inserts via Javascript
Querying and Updating Documents Query a document Select certain fields Using limit, skip, sort and count Using explain In Place Updates $inc, $push, $pull, $pop, $slice, $in, $nin Indexing on fields MongoDB is a Document Database, that does not need joins. It uses Map Reduce.
Other console commands db.stats() db.collection.stats() db.isMaster() rs.status() db.currentOp() db.serverStatus()
Replication: Master Slave  Achieved by “declaring” 1 node as the master, and “declaring” many nodes as its slaves Single point of failure/No failover Can add any number of slaves easily May need to put slaves behind a load balancer
Replication : ReplicaSets Achieved by creating a cluster, called a replSet, and adding “members” to it. The “primary” and “secondary” roles are decided among the nodes. There is no permanent “master” or “slave”. Automatic Failover via voting Arbiter may be needed if there are even number of nodes to break a tie Easy to add new members Adding load-balancing will void failover
Accessing MongoDBProgramatically Scala Using casbah Code to insert a document Code to find/query Code to update
Object-Document Mappers Mongo Drivers understand Hashes, or DBObjects. A DBObject essentially is a Map The class needs to be converted to a DBObject, either by the developer or by the driver. Some such mappers also provide a DAO which makes it easy to perform CRUD operations. MongoMapper for Ruby Salat for Scala Morphia for Java
Internals Data is memory mapped, so writes can scale as no disk IO is performed with every write. Delayed writes to the disc, default 60 seconds. Always easier to keep the indices and the working set of the data in the memory to avoid swapping Pre-allocated files in increments Smart algorithm to add padding to the storage when the document sizes are inconsistent Durability is achieved by journaling, introduced in 1.7
Replication Internals The almighty Oplog – Capped Collection Acts like a tx log which the slaves or secondaries read from and apply. getmore on the primary/master every 4s Failover and voting Delayed sync Using rs.slaveOk() to query the secondaries in a replSet
Scaling MongoDB Be smart with your schema design Know ahead of time if the system will be read-heavy or write-heavy Use explain(), use indices Do not fetch the entire document - select fields. Keep an eye on index misses and page faults via mongostat Denormalize- avoid links, use embeds. You can never replicate enough Horizontal scaling via sharding If /dev/null is faster then WebScale, I’ll use it. Does /dev/null support sharding?
Backups Lock the database for a cold backup Use filer snapshots Use mongodump -> BSON, mongorestore to restore Use mongoexport -> JSON, mongoimport to restore Spare slaves always help
Monitoring MMS Developed by 10gen Munin Plugins available to monitor MongoDB Server Nagios For Machine Health Check
Comparison of NoSQL Solutions Source: http://perfectmarket.com/blog/not_only_nosql_review_solution_evaluation_guide_chart
We’re hiring!corp.ign.com/careers, and @ignjobs Scala Java PHP/Zend Rails ElasticSearch MongoDB MySQL HTML5 Jquery Mobile Sencha Touch Phonegap Wordpress ActionScript/Flash Redis/Memcached CI/CD
About Manish Pandit  Sr. Engineering Manager 	IGN Entertainment http://linkedin.com/in/mpandit @lobster1234

Contenu connexe

Tendances

Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDBBenchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDBAthiq Ahamed
 
Google Megastore
Google MegastoreGoogle Megastore
Google Megastorebergwolf
 
Some key value stores using log-structure
Some key value stores using log-structureSome key value stores using log-structure
Some key value stores using log-structureZhichao Liang
 
Mongodb introduction and_internal(simple)
Mongodb introduction and_internal(simple)Mongodb introduction and_internal(simple)
Mongodb introduction and_internal(simple)Kai Zhao
 
HBaseCon 2012 | Gap Inc Direct: Serving Apparel Catalog from HBase for Live W...
HBaseCon 2012 | Gap Inc Direct: Serving Apparel Catalog from HBase for Live W...HBaseCon 2012 | Gap Inc Direct: Serving Apparel Catalog from HBase for Live W...
HBaseCon 2012 | Gap Inc Direct: Serving Apparel Catalog from HBase for Live W...Cloudera, Inc.
 
ImpalaToGo and Tachyon integration
ImpalaToGo and Tachyon integrationImpalaToGo and Tachyon integration
ImpalaToGo and Tachyon integrationDavid Groozman
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentationHyphen Call
 
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookTech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookThe Hive
 
The Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDBThe Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDBThe Hive
 
Gluster Webinar: Introduction to GlusterFS v3.3
Gluster Webinar: Introduction to GlusterFS v3.3Gluster Webinar: Introduction to GlusterFS v3.3
Gluster Webinar: Introduction to GlusterFS v3.3GlusterFS
 
Hadoop architecture-tutorial
Hadoop  architecture-tutorialHadoop  architecture-tutorial
Hadoop architecture-tutorialvinayiqbusiness
 
Optimizing RocksDB for Open-Channel SSDs
Optimizing RocksDB for Open-Channel SSDsOptimizing RocksDB for Open-Channel SSDs
Optimizing RocksDB for Open-Channel SSDsJavier González
 
Storage talk
Storage talkStorage talk
Storage talkchristkv
 
Ceph and RocksDB
Ceph and RocksDBCeph and RocksDB
Ceph and RocksDBSage Weil
 
Hardware Provisioning for MongoDB
Hardware Provisioning for MongoDBHardware Provisioning for MongoDB
Hardware Provisioning for MongoDBMongoDB
 

Tendances (20)

Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDBBenchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
Benchmarking Top NoSQL Databases: Apache Cassandra, Apache HBase and MongoDB
 
MongoDB DOC v1.5
MongoDB DOC v1.5MongoDB DOC v1.5
MongoDB DOC v1.5
 
Google Megastore
Google MegastoreGoogle Megastore
Google Megastore
 
Some key value stores using log-structure
Some key value stores using log-structureSome key value stores using log-structure
Some key value stores using log-structure
 
Gfs vs hdfs
Gfs vs hdfsGfs vs hdfs
Gfs vs hdfs
 
Mongodb introduction and_internal(simple)
Mongodb introduction and_internal(simple)Mongodb introduction and_internal(simple)
Mongodb introduction and_internal(simple)
 
HBaseCon 2012 | Gap Inc Direct: Serving Apparel Catalog from HBase for Live W...
HBaseCon 2012 | Gap Inc Direct: Serving Apparel Catalog from HBase for Live W...HBaseCon 2012 | Gap Inc Direct: Serving Apparel Catalog from HBase for Live W...
HBaseCon 2012 | Gap Inc Direct: Serving Apparel Catalog from HBase for Live W...
 
ImpalaToGo and Tachyon integration
ImpalaToGo and Tachyon integrationImpalaToGo and Tachyon integration
ImpalaToGo and Tachyon integration
 
MongoDB presentation
MongoDB presentationMongoDB presentation
MongoDB presentation
 
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookTech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
 
GFS & HDFS Introduction
GFS & HDFS IntroductionGFS & HDFS Introduction
GFS & HDFS Introduction
 
The Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDBThe Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDB
 
Glusterfs and Hadoop
Glusterfs and HadoopGlusterfs and Hadoop
Glusterfs and Hadoop
 
Gluster Webinar: Introduction to GlusterFS v3.3
Gluster Webinar: Introduction to GlusterFS v3.3Gluster Webinar: Introduction to GlusterFS v3.3
Gluster Webinar: Introduction to GlusterFS v3.3
 
Hadoop architecture-tutorial
Hadoop  architecture-tutorialHadoop  architecture-tutorial
Hadoop architecture-tutorial
 
Optimizing RocksDB for Open-Channel SSDs
Optimizing RocksDB for Open-Channel SSDsOptimizing RocksDB for Open-Channel SSDs
Optimizing RocksDB for Open-Channel SSDs
 
Log Structured Merge Tree
Log Structured Merge TreeLog Structured Merge Tree
Log Structured Merge Tree
 
Storage talk
Storage talkStorage talk
Storage talk
 
Ceph and RocksDB
Ceph and RocksDBCeph and RocksDB
Ceph and RocksDB
 
Hardware Provisioning for MongoDB
Hardware Provisioning for MongoDBHardware Provisioning for MongoDB
Hardware Provisioning for MongoDB
 

En vedette

E Learning 2 E
E Learning 2 EE Learning 2 E
E Learning 2 Ehainira
 
ΦΕΚ ΔΙΔΑΣΚΑΛΙΑΣ ΒΙΟΛΟΓΙΑΣ Α ΛΥΚΕΙΟΥ 2011-12φεκ διδασκαλιασ βιολογιασ α λυκειο...
ΦΕΚ ΔΙΔΑΣΚΑΛΙΑΣ ΒΙΟΛΟΓΙΑΣ Α ΛΥΚΕΙΟΥ 2011-12φεκ διδασκαλιασ βιολογιασ α λυκειο...ΦΕΚ ΔΙΔΑΣΚΑΛΙΑΣ ΒΙΟΛΟΓΙΑΣ Α ΛΥΚΕΙΟΥ 2011-12φεκ διδασκαλιασ βιολογιασ α λυκειο...
ΦΕΚ ΔΙΔΑΣΚΑΛΙΑΣ ΒΙΟΛΟΓΙΑΣ Α ΛΥΚΕΙΟΥ 2011-12φεκ διδασκαλιασ βιολογιασ α λυκειο...Christos Gotzaridis
 
Keep Our Boreal As A Sink
Keep Our Boreal As A SinkKeep Our Boreal As A Sink
Keep Our Boreal As A SinkDean McKeown
 
OSCON 2014 - API Ecosystem with Scala, Scalatra, and Swagger at Netflix
OSCON 2014 - API Ecosystem with Scala, Scalatra, and Swagger at NetflixOSCON 2014 - API Ecosystem with Scala, Scalatra, and Swagger at Netflix
OSCON 2014 - API Ecosystem with Scala, Scalatra, and Swagger at NetflixManish Pandit
 
Mapping an all-weather Tour de France
Mapping an all-weather Tour de FranceMapping an all-weather Tour de France
Mapping an all-weather Tour de Francedbyhundred
 
Ace ppt for asean japan energy efficient conference-final
Ace ppt for asean japan energy efficient conference-finalAce ppt for asean japan energy efficient conference-final
Ace ppt for asean japan energy efficient conference-finalbenisuryadi
 
ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ερωτήσεις για το 2ο θέμα
ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ερωτήσεις για το 2ο θέμαΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ερωτήσεις για το 2ο θέμα
ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ερωτήσεις για το 2ο θέμαChristos Gotzaridis
 
Political Cartoon
Political CartoonPolitical Cartoon
Political CartoonAmy
 
第49回Php勉強会@関東 Datasource
第49回Php勉強会@関東 Datasource第49回Php勉強会@関東 Datasource
第49回Php勉強会@関東 DatasourceKaz Watanabe
 
2012 0614 mobility tech focus pres (wrt)
2012 0614 mobility tech focus pres (wrt)2012 0614 mobility tech focus pres (wrt)
2012 0614 mobility tech focus pres (wrt)Bill Tomoff
 
استخدام المدونات و الويكي في التعليم
استخدام المدونات و الويكي في التعليماستخدام المدونات و الويكي في التعليم
استخدام المدونات و الويكي في التعليمFawaz Gogo
 
EFFICACIA DI UN SISTEMA DI VISUALIZZAZIONE SOCIALE NELL‟INFLUENZARE UN CAMBIO...
EFFICACIA DI UN SISTEMA DI VISUALIZZAZIONE SOCIALE NELL‟INFLUENZARE UN CAMBIO...EFFICACIA DI UN SISTEMA DI VISUALIZZAZIONE SOCIALE NELL‟INFLUENZARE UN CAMBIO...
EFFICACIA DI UN SISTEMA DI VISUALIZZAZIONE SOCIALE NELL‟INFLUENZARE UN CAMBIO...Michele Pierangeli
 
20150901 Mapping Yorkshire
20150901 Mapping Yorkshire20150901 Mapping Yorkshire
20150901 Mapping Yorkshiredbyhundred
 
Onlinetools&Job Search2010
Onlinetools&Job Search2010Onlinetools&Job Search2010
Onlinetools&Job Search2010Cindy Edwards
 
Θεματικη οργανωση της Φυσικής Γ΄Γυμν.
Θεματικη οργανωση της Φυσικής Γ΄Γυμν.Θεματικη οργανωση της Φυσικής Γ΄Γυμν.
Θεματικη οργανωση της Φυσικής Γ΄Γυμν.Christos Gotzaridis
 
MongoSF 2011 - Using MongoDB for IGN's Social Platform
MongoSF 2011 - Using MongoDB for IGN's Social PlatformMongoSF 2011 - Using MongoDB for IGN's Social Platform
MongoSF 2011 - Using MongoDB for IGN's Social PlatformManish Pandit
 
ThirdSpace: orchestrating collaborative activities in PLEs for formal learning
ThirdSpace: orchestrating collaborative activities in PLEs for formal learningThirdSpace: orchestrating collaborative activities in PLEs for formal learning
ThirdSpace: orchestrating collaborative activities in PLEs for formal learningYvan Peter
 
Makeup Consultations & Professional Makeup: A Beautiful Education
Makeup Consultations & Professional Makeup: A Beautiful EducationMakeup Consultations & Professional Makeup: A Beautiful Education
Makeup Consultations & Professional Makeup: A Beautiful EducationLillybeth: A Beautiful Education
 

En vedette (20)

E Learning 2 E
E Learning 2 EE Learning 2 E
E Learning 2 E
 
ΦΕΚ ΔΙΔΑΣΚΑΛΙΑΣ ΒΙΟΛΟΓΙΑΣ Α ΛΥΚΕΙΟΥ 2011-12φεκ διδασκαλιασ βιολογιασ α λυκειο...
ΦΕΚ ΔΙΔΑΣΚΑΛΙΑΣ ΒΙΟΛΟΓΙΑΣ Α ΛΥΚΕΙΟΥ 2011-12φεκ διδασκαλιασ βιολογιασ α λυκειο...ΦΕΚ ΔΙΔΑΣΚΑΛΙΑΣ ΒΙΟΛΟΓΙΑΣ Α ΛΥΚΕΙΟΥ 2011-12φεκ διδασκαλιασ βιολογιασ α λυκειο...
ΦΕΚ ΔΙΔΑΣΚΑΛΙΑΣ ΒΙΟΛΟΓΙΑΣ Α ΛΥΚΕΙΟΥ 2011-12φεκ διδασκαλιασ βιολογιασ α λυκειο...
 
Keep Our Boreal As A Sink
Keep Our Boreal As A SinkKeep Our Boreal As A Sink
Keep Our Boreal As A Sink
 
Innovation, Openness And ICTs
Innovation, Openness And ICTsInnovation, Openness And ICTs
Innovation, Openness And ICTs
 
OSCON 2014 - API Ecosystem with Scala, Scalatra, and Swagger at Netflix
OSCON 2014 - API Ecosystem with Scala, Scalatra, and Swagger at NetflixOSCON 2014 - API Ecosystem with Scala, Scalatra, and Swagger at Netflix
OSCON 2014 - API Ecosystem with Scala, Scalatra, and Swagger at Netflix
 
Mapping an all-weather Tour de France
Mapping an all-weather Tour de FranceMapping an all-weather Tour de France
Mapping an all-weather Tour de France
 
Ace ppt for asean japan energy efficient conference-final
Ace ppt for asean japan energy efficient conference-finalAce ppt for asean japan energy efficient conference-final
Ace ppt for asean japan energy efficient conference-final
 
ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ερωτήσεις για το 2ο θέμα
ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ερωτήσεις για το 2ο θέμαΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ερωτήσεις για το 2ο θέμα
ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ ερωτήσεις για το 2ο θέμα
 
Political Cartoon
Political CartoonPolitical Cartoon
Political Cartoon
 
第49回Php勉強会@関東 Datasource
第49回Php勉強会@関東 Datasource第49回Php勉強会@関東 Datasource
第49回Php勉強会@関東 Datasource
 
2012 0614 mobility tech focus pres (wrt)
2012 0614 mobility tech focus pres (wrt)2012 0614 mobility tech focus pres (wrt)
2012 0614 mobility tech focus pres (wrt)
 
استخدام المدونات و الويكي في التعليم
استخدام المدونات و الويكي في التعليماستخدام المدونات و الويكي في التعليم
استخدام المدونات و الويكي في التعليم
 
EFFICACIA DI UN SISTEMA DI VISUALIZZAZIONE SOCIALE NELL‟INFLUENZARE UN CAMBIO...
EFFICACIA DI UN SISTEMA DI VISUALIZZAZIONE SOCIALE NELL‟INFLUENZARE UN CAMBIO...EFFICACIA DI UN SISTEMA DI VISUALIZZAZIONE SOCIALE NELL‟INFLUENZARE UN CAMBIO...
EFFICACIA DI UN SISTEMA DI VISUALIZZAZIONE SOCIALE NELL‟INFLUENZARE UN CAMBIO...
 
20150901 Mapping Yorkshire
20150901 Mapping Yorkshire20150901 Mapping Yorkshire
20150901 Mapping Yorkshire
 
Calendário II Divisão Zona Sul
Calendário II Divisão Zona SulCalendário II Divisão Zona Sul
Calendário II Divisão Zona Sul
 
Onlinetools&Job Search2010
Onlinetools&Job Search2010Onlinetools&Job Search2010
Onlinetools&Job Search2010
 
Θεματικη οργανωση της Φυσικής Γ΄Γυμν.
Θεματικη οργανωση της Φυσικής Γ΄Γυμν.Θεματικη οργανωση της Φυσικής Γ΄Γυμν.
Θεματικη οργανωση της Φυσικής Γ΄Γυμν.
 
MongoSF 2011 - Using MongoDB for IGN's Social Platform
MongoSF 2011 - Using MongoDB for IGN's Social PlatformMongoSF 2011 - Using MongoDB for IGN's Social Platform
MongoSF 2011 - Using MongoDB for IGN's Social Platform
 
ThirdSpace: orchestrating collaborative activities in PLEs for formal learning
ThirdSpace: orchestrating collaborative activities in PLEs for formal learningThirdSpace: orchestrating collaborative activities in PLEs for formal learning
ThirdSpace: orchestrating collaborative activities in PLEs for formal learning
 
Makeup Consultations & Professional Makeup: A Beautiful Education
Makeup Consultations & Professional Makeup: A Beautiful EducationMakeup Consultations & Professional Makeup: A Beautiful Education
Makeup Consultations & Professional Makeup: A Beautiful Education
 

Similaire à Silicon Valley Code Camp: 2011 Introduction to MongoDB

mongodb11 (1) (1).pptx
mongodb11 (1) (1).pptxmongodb11 (1) (1).pptx
mongodb11 (1) (1).pptxRoopaR36
 
Mongo db transcript
Mongo db transcriptMongo db transcript
Mongo db transcriptfoliba
 
Mongo presentation conf
Mongo presentation confMongo presentation conf
Mongo presentation confShridhar Joshi
 
Top MongoDB interview Questions and Answers
Top MongoDB interview Questions and AnswersTop MongoDB interview Questions and Answers
Top MongoDB interview Questions and Answersjeetendra mandal
 
MongoDB 2.4 and spring data
MongoDB 2.4 and spring dataMongoDB 2.4 and spring data
MongoDB 2.4 and spring dataJimmy Ray
 
nosql [Autosaved].pptx
nosql [Autosaved].pptxnosql [Autosaved].pptx
nosql [Autosaved].pptxIndrani Sen
 
No SQL - MongoDB
No SQL - MongoDBNo SQL - MongoDB
No SQL - MongoDBMirza Asif
 
Mongodb basics and architecture
Mongodb basics and architectureMongodb basics and architecture
Mongodb basics and architectureBishal Khanal
 
DynamoDB Gluecon 2012
DynamoDB Gluecon 2012DynamoDB Gluecon 2012
DynamoDB Gluecon 2012Appirio
 
Gluecon 2012 - DynamoDB
Gluecon 2012 - DynamoDBGluecon 2012 - DynamoDB
Gluecon 2012 - DynamoDBJeff Douglas
 
Introduction to MongoDB.pptx
Introduction to MongoDB.pptxIntroduction to MongoDB.pptx
Introduction to MongoDB.pptxSurya937648
 
MongoDB vs Mysql. A devops point of view
MongoDB vs Mysql. A devops point of viewMongoDB vs Mysql. A devops point of view
MongoDB vs Mysql. A devops point of viewPierre Baillet
 
Mongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMohan Rathour
 

Similaire à Silicon Valley Code Camp: 2011 Introduction to MongoDB (20)

mongodb11 (1) (1).pptx
mongodb11 (1) (1).pptxmongodb11 (1) (1).pptx
mongodb11 (1) (1).pptx
 
Mongo db transcript
Mongo db transcriptMongo db transcript
Mongo db transcript
 
Mongo presentation conf
Mongo presentation confMongo presentation conf
Mongo presentation conf
 
Top MongoDB interview Questions and Answers
Top MongoDB interview Questions and AnswersTop MongoDB interview Questions and Answers
Top MongoDB interview Questions and Answers
 
MongoDB 2.4 and spring data
MongoDB 2.4 and spring dataMongoDB 2.4 and spring data
MongoDB 2.4 and spring data
 
Nosql seminar
Nosql seminarNosql seminar
Nosql seminar
 
nosql [Autosaved].pptx
nosql [Autosaved].pptxnosql [Autosaved].pptx
nosql [Autosaved].pptx
 
No SQL - MongoDB
No SQL - MongoDBNo SQL - MongoDB
No SQL - MongoDB
 
Mongodb basics and architecture
Mongodb basics and architectureMongodb basics and architecture
Mongodb basics and architecture
 
DynamoDB Gluecon 2012
DynamoDB Gluecon 2012DynamoDB Gluecon 2012
DynamoDB Gluecon 2012
 
Gluecon 2012 - DynamoDB
Gluecon 2012 - DynamoDBGluecon 2012 - DynamoDB
Gluecon 2012 - DynamoDB
 
Mongo db
Mongo dbMongo db
Mongo db
 
MongoDb - Details on the POC
MongoDb - Details on the POCMongoDb - Details on the POC
MongoDb - Details on the POC
 
Introduction to MongoDB.pptx
Introduction to MongoDB.pptxIntroduction to MongoDB.pptx
Introduction to MongoDB.pptx
 
Mongodb
MongodbMongodb
Mongodb
 
MongoDB vs Mysql. A devops point of view
MongoDB vs Mysql. A devops point of viewMongoDB vs Mysql. A devops point of view
MongoDB vs Mysql. A devops point of view
 
Mongo db dhruba
Mongo db dhrubaMongo db dhruba
Mongo db dhruba
 
MongoDB
MongoDBMongoDB
MongoDB
 
NoSql Databases
NoSql DatabasesNoSql Databases
NoSql Databases
 
Mongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorial
 

Plus de Manish Pandit

Disaster recovery - What, Why, and How
Disaster recovery - What, Why, and HowDisaster recovery - What, Why, and How
Disaster recovery - What, Why, and HowManish Pandit
 
Serverless Architectures on AWS in practice - OSCON 2018
Serverless Architectures on AWS in practice - OSCON 2018Serverless Architectures on AWS in practice - OSCON 2018
Serverless Architectures on AWS in practice - OSCON 2018Manish Pandit
 
Disaster Recovery and Reliability
Disaster Recovery and ReliabilityDisaster Recovery and Reliability
Disaster Recovery and ReliabilityManish Pandit
 
Immutable AWS Deployments with Packer and Jenkins
Immutable AWS Deployments with Packer and JenkinsImmutable AWS Deployments with Packer and Jenkins
Immutable AWS Deployments with Packer and JenkinsManish Pandit
 
AWS Lambda with Serverless Framework and Java
AWS Lambda with Serverless Framework and JavaAWS Lambda with Serverless Framework and Java
AWS Lambda with Serverless Framework and JavaManish Pandit
 
AWS Primer and Quickstart
AWS Primer and QuickstartAWS Primer and Quickstart
AWS Primer and QuickstartManish Pandit
 
Securing your APIs with OAuth, OpenID, and OpenID Connect
Securing your APIs with OAuth, OpenID, and OpenID ConnectSecuring your APIs with OAuth, OpenID, and OpenID Connect
Securing your APIs with OAuth, OpenID, and OpenID ConnectManish Pandit
 
Silicon Valley 2014 - API Antipatterns
Silicon Valley 2014 - API AntipatternsSilicon Valley 2014 - API Antipatterns
Silicon Valley 2014 - API AntipatternsManish Pandit
 
Scalabay - API Design Antipatterns
Scalabay - API Design AntipatternsScalabay - API Design Antipatterns
Scalabay - API Design AntipatternsManish Pandit
 
API Design Antipatterns - APICon SF
API Design Antipatterns - APICon SFAPI Design Antipatterns - APICon SF
API Design Antipatterns - APICon SFManish Pandit
 
Motivation : it Matters
Motivation : it MattersMotivation : it Matters
Motivation : it MattersManish Pandit
 
Building Apis in Scala with Playframework2
Building Apis in Scala with Playframework2Building Apis in Scala with Playframework2
Building Apis in Scala with Playframework2Manish Pandit
 
Introducing Scala to your Ruby/Java Shop : My experiences at IGN
Introducing Scala to your Ruby/Java Shop : My experiences at IGNIntroducing Scala to your Ruby/Java Shop : My experiences at IGN
Introducing Scala to your Ruby/Java Shop : My experiences at IGNManish Pandit
 
Evolving IGN’s New APIs with Scala
 Evolving IGN’s New APIs with Scala Evolving IGN’s New APIs with Scala
Evolving IGN’s New APIs with ScalaManish Pandit
 
Object Oriented Programming
Object Oriented ProgrammingObject Oriented Programming
Object Oriented ProgrammingManish Pandit
 
Silicon Valley Code Camp 2011: Play! as you REST
Silicon Valley Code Camp 2011: Play! as you RESTSilicon Valley Code Camp 2011: Play! as you REST
Silicon Valley Code Camp 2011: Play! as you RESTManish Pandit
 

Plus de Manish Pandit (20)

Disaster recovery - What, Why, and How
Disaster recovery - What, Why, and HowDisaster recovery - What, Why, and How
Disaster recovery - What, Why, and How
 
Serverless Architectures on AWS in practice - OSCON 2018
Serverless Architectures on AWS in practice - OSCON 2018Serverless Architectures on AWS in practice - OSCON 2018
Serverless Architectures on AWS in practice - OSCON 2018
 
Disaster Recovery and Reliability
Disaster Recovery and ReliabilityDisaster Recovery and Reliability
Disaster Recovery and Reliability
 
OAuth2 primer
OAuth2 primerOAuth2 primer
OAuth2 primer
 
Immutable AWS Deployments with Packer and Jenkins
Immutable AWS Deployments with Packer and JenkinsImmutable AWS Deployments with Packer and Jenkins
Immutable AWS Deployments with Packer and Jenkins
 
AWS Lambda with Serverless Framework and Java
AWS Lambda with Serverless Framework and JavaAWS Lambda with Serverless Framework and Java
AWS Lambda with Serverless Framework and Java
 
AWS Primer and Quickstart
AWS Primer and QuickstartAWS Primer and Quickstart
AWS Primer and Quickstart
 
Securing your APIs with OAuth, OpenID, and OpenID Connect
Securing your APIs with OAuth, OpenID, and OpenID ConnectSecuring your APIs with OAuth, OpenID, and OpenID Connect
Securing your APIs with OAuth, OpenID, and OpenID Connect
 
Silicon Valley 2014 - API Antipatterns
Silicon Valley 2014 - API AntipatternsSilicon Valley 2014 - API Antipatterns
Silicon Valley 2014 - API Antipatterns
 
Scalabay - API Design Antipatterns
Scalabay - API Design AntipatternsScalabay - API Design Antipatterns
Scalabay - API Design Antipatterns
 
API Design Antipatterns - APICon SF
API Design Antipatterns - APICon SFAPI Design Antipatterns - APICon SF
API Design Antipatterns - APICon SF
 
Motivation : it Matters
Motivation : it MattersMotivation : it Matters
Motivation : it Matters
 
Building Apis in Scala with Playframework2
Building Apis in Scala with Playframework2Building Apis in Scala with Playframework2
Building Apis in Scala with Playframework2
 
Scala at Netflix
Scala at NetflixScala at Netflix
Scala at Netflix
 
Introducing Scala to your Ruby/Java Shop : My experiences at IGN
Introducing Scala to your Ruby/Java Shop : My experiences at IGNIntroducing Scala to your Ruby/Java Shop : My experiences at IGN
Introducing Scala to your Ruby/Java Shop : My experiences at IGN
 
Evolving IGN’s New APIs with Scala
 Evolving IGN’s New APIs with Scala Evolving IGN’s New APIs with Scala
Evolving IGN’s New APIs with Scala
 
IGN's V3 API
IGN's V3 APIIGN's V3 API
IGN's V3 API
 
Java and the JVM
Java and the JVMJava and the JVM
Java and the JVM
 
Object Oriented Programming
Object Oriented ProgrammingObject Oriented Programming
Object Oriented Programming
 
Silicon Valley Code Camp 2011: Play! as you REST
Silicon Valley Code Camp 2011: Play! as you RESTSilicon Valley Code Camp 2011: Play! as you REST
Silicon Valley Code Camp 2011: Play! as you REST
 

Dernier

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Dernier (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Silicon Valley Code Camp: 2011 Introduction to MongoDB

  • 1. Introduction to MongoDB Silicon Valley Code Camp Oct 8th, 2011
  • 2. Before we start…… NoSQL is a movement, its not antiSQL Relational Databases have their place, but they are not the only solution Diversify - Best tool for the job The footers contain quotes from the video Mongo DB is Web Scale
  • 3. Agenda Relational Databases vs. NoSQL CAP Theorem MongoDB at a high level Collections, Documents Inserting, Querying and Updating Other MongoDB Commands Replication Topologies Using MongoDB via a driver Few Internals Administration
  • 4. Relational Databases Have been around for years De-facto standard for any persistence ACID compliant Rigid Schema Usually hard to scale over a distributed network Normalization is almost always a requirement ORMs tend to limit the optimizations you can do to the queries. Relational Databases were'nt built for Web Scale. They have impotence mismatch.
  • 5. NoSQL Why? Not everything can be modeled in a relational construct Cluster-aware out of the box. Replication, shardingetc. is built into the core Schemaless (Mostly) Open Source, Community supported High performance by design and not ball-and-chained with ACID
  • 6. CAP Theorem : Pick Two Consistency – Each client sees the same data Availability – The system is always available for any reads and writes Partition Tolerance – The system can tolerate any communication failure across the network (except someone pulling the plug across the datacenters). At any given point in time, only two of the above hold true in any distributed datastore. If thats what they need to do to get those kick ass benchmarks, then its a great design.
  • 7. Visual Guide to NoSQL Databases Source: http://blog.nahurst.com/visual-guide-to-nosql-systems
  • 8. How do they make up? Usually the NoSQL databases are AP, or CP. Consistency Eventually consistent Write concerns Availability Read-only stale data
  • 9. MongoDB : High Level Document-based Database Schemaless Cluster-aware Easy Querying/Javascript Support Memory Mapped Drivers in all the popular languages Excellent developer velocity (Supported by 10gen) Durable via Journaling C-P System based on the CAP theorem MongoDB handles WebScale. You turn it on and it scales right up.
  • 10. Collections The closest comparison to a MongoDB Collection in the relational world is a Table A collection is not bound by a schema A collection has a namespace Can be a capped collection It contains BSON documents
  • 11. Documents Closest comparison in the relational world is a Row in a Table. Must reside within a Collection Looks like (structured) JSON, stored as BSON within a collection Limited to 16MB (as of 2.0) Larger sizes supported via GridFS Reference : http://www.bsonspec.org. Defined as Binary-encoded Serialization format for JSON-like Documents.
  • 12. Inserting Documents Console defaults to localhost port 27017 show databases show collections Insert a document in a collection Bulk inserts via Javascript
  • 13. Querying and Updating Documents Query a document Select certain fields Using limit, skip, sort and count Using explain In Place Updates $inc, $push, $pull, $pop, $slice, $in, $nin Indexing on fields MongoDB is a Document Database, that does not need joins. It uses Map Reduce.
  • 14. Other console commands db.stats() db.collection.stats() db.isMaster() rs.status() db.currentOp() db.serverStatus()
  • 15. Replication: Master Slave Achieved by “declaring” 1 node as the master, and “declaring” many nodes as its slaves Single point of failure/No failover Can add any number of slaves easily May need to put slaves behind a load balancer
  • 16. Replication : ReplicaSets Achieved by creating a cluster, called a replSet, and adding “members” to it. The “primary” and “secondary” roles are decided among the nodes. There is no permanent “master” or “slave”. Automatic Failover via voting Arbiter may be needed if there are even number of nodes to break a tie Easy to add new members Adding load-balancing will void failover
  • 17. Accessing MongoDBProgramatically Scala Using casbah Code to insert a document Code to find/query Code to update
  • 18. Object-Document Mappers Mongo Drivers understand Hashes, or DBObjects. A DBObject essentially is a Map The class needs to be converted to a DBObject, either by the developer or by the driver. Some such mappers also provide a DAO which makes it easy to perform CRUD operations. MongoMapper for Ruby Salat for Scala Morphia for Java
  • 19. Internals Data is memory mapped, so writes can scale as no disk IO is performed with every write. Delayed writes to the disc, default 60 seconds. Always easier to keep the indices and the working set of the data in the memory to avoid swapping Pre-allocated files in increments Smart algorithm to add padding to the storage when the document sizes are inconsistent Durability is achieved by journaling, introduced in 1.7
  • 20. Replication Internals The almighty Oplog – Capped Collection Acts like a tx log which the slaves or secondaries read from and apply. getmore on the primary/master every 4s Failover and voting Delayed sync Using rs.slaveOk() to query the secondaries in a replSet
  • 21. Scaling MongoDB Be smart with your schema design Know ahead of time if the system will be read-heavy or write-heavy Use explain(), use indices Do not fetch the entire document - select fields. Keep an eye on index misses and page faults via mongostat Denormalize- avoid links, use embeds. You can never replicate enough Horizontal scaling via sharding If /dev/null is faster then WebScale, I’ll use it. Does /dev/null support sharding?
  • 22. Backups Lock the database for a cold backup Use filer snapshots Use mongodump -> BSON, mongorestore to restore Use mongoexport -> JSON, mongoimport to restore Spare slaves always help
  • 23. Monitoring MMS Developed by 10gen Munin Plugins available to monitor MongoDB Server Nagios For Machine Health Check
  • 24. Comparison of NoSQL Solutions Source: http://perfectmarket.com/blog/not_only_nosql_review_solution_evaluation_guide_chart
  • 25. We’re hiring!corp.ign.com/careers, and @ignjobs Scala Java PHP/Zend Rails ElasticSearch MongoDB MySQL HTML5 Jquery Mobile Sencha Touch Phonegap Wordpress ActionScript/Flash Redis/Memcached CI/CD
  • 26. About Manish Pandit Sr. Engineering Manager IGN Entertainment http://linkedin.com/in/mpandit @lobster1234