NoSQL database usage is growing at a stunning 50% per year, as organizations discover NoSQL's potential to address even the most challenging Big Data and real-time database problems. Every NoSQL database is different, but one is the most popular by far: MongoDB. Now, in just 24 lessons of one hour or less, you can learn how to leverage MongoDB's immense power. Each short, easy lesson builds on all that's come before, teaching NoSQL concepts and MongoDB techniques from the ground up. Sams Teach Yourself NoSQL with MongoDB in 24 Hours covers all this, and much more: Learning how NoSQL is different, when to use it, and when to use traditional RDBMSes insteadDesigning and implementing MongoDB databases of diverse types and sizesStoring and interacting with data via Java, PHP, Python, and Node.js/MongooseChoosing the right NoSQL distribution model for your applicationInstalling and configuring MongoDBDesigning MongoDB data models, including collections, indexes, and GridFSBalancing consistency, performance, and durabilityLeveraging the immense power of Map-ReduceAdministering, monitoring, securing, backing up, and repairing MongoDB databasesMastering advanced techniques such as sharding and replicationOptimizing performance
Les mer
Introduction 1 How This Book Is Organized 1 Code Examples 2 Special Elements 2 Q&A, Quiz, and Exercises 3 Part I: Getting Started with NoSQL and MongoDB HOUR 1: Introducing NoSQL and MongoDB 5 What Is NoSQL? 6 Choosing RDBMS, NoSQL, or Both 7 Understanding MongoDB 8 MongoDB Data Types 10 Planning Your Data Model 11 Summary 17 Q&A 18 Workshop 18HOUR 2: Installing and Configuring MongoDB 21 Building the MongoDB Environment 21 Accessing the MongoDB HTTP Interface 26 Accessing MongoDB from the Shell Client 27 Scripting the MongoDB Shell 31 Summary 34 Q&A 35 Workshop 35HOUR 3: Using JavaScript in the MongoDB Shell 37 Defining Variables 37 Understanding JavaScript Data Types 38 Outputting Data in a MongoDB Shell Script 40 Using Operators 40 Implementing Looping 44 Creating Functions 49 Understanding Variable Scope 52 Using JavaScript Objects 53 Manipulating Strings 56 Working with Arrays 60 Adding Error Handling 65 Summary 67 Q&A 67 Workshop 67 Part II: Implementing NoSQL in MongoDB HOUR 4: Configuring User Accounts and Access Control 69 Understanding the Admin Database 69 Administrating User Accounts 70 Configuring Access Control 78 Summary 83 Q&A 83 Workshop 83HOUR 5: Managing Databases and Collections from the MongoDB Shell 85 Understanding the Database and Collection Objects 85 Managing Databases 91 Managing Collections 96 Implementing the Example Dataset 100 Summary 104 Q&A 104 Workshop 104HOUR 6: Finding Documents in the MongoDB Collection from the MongoDB Shell 107 Understanding the Cursor Object 107 Understanding Query Operators 109 Getting Documents from a Collection 112 Finding Specific Sets of Documents 117 Summary 122 Q&A 122 Workshop 123HOUR 7: Additional Data-Finding Operations Using the MongoDB Shell 125 Counting Documents 125 Sorting Results Sets 128 Limiting Result Sets 130 Finding Distinct Field Values 138 Summary 141 Q&A 141 Workshop 141HOUR 8: Manipulating MongoDB Documents in a Collection 143 Understanding the Write Concern 143 Configuring Database Connection Error Handling 144 Getting the Status of Database Write Requests 145 Understanding Database Update Operators 146 Adding Documents to a Collection in the MongoDB Shell 149 Updating Documents in a Collection from the MongoDB Shell 151 Saving Documents in a Collection Using the MongoDB Shell 155 Upserting Documents in Collections Using the MongoDB Shell 158 Deleting Documents from a Collection Using the MongoDB Shell 161 Summary 163 Q&A 164 Workshop 164HOUR 9: Utilizing the Power of Grouping, Aggregation, and Map Reduce 167 Grouping Results of Find Operations in the MongoDB Shell 167 Using Aggregation to Manipulate the Data During Requests from the MongoDB Shell 171 Applying Map Reduce to Generate New Data Results Using the MongoDB Shell 178 Summary 183 Q&A 184 Workshop 184 Part III: Using MongoDB in Applications HOUR 10: Implementing MongoDB in Java Applications 185 Understanding MongoDB Driver Objects in Java 185 Finding Documents Using Java 194 Counting Documents in Java 201 Sorting Results Sets in Java 203 Summary 207 Q&A 207 Workshop 207HOUR 11: Accessing Data from MongoDB in Java Applications 209 Limiting Result Sets Using Java 209 Finding a Distinct Field Value in Java 218 Grouping Results of Find Operations in Java Applications 221 Using Aggregation to Manipulate the Data During Requests from Java Applications 225 Summary 228 Q&A 229 Workshop 229HOUR 12: Working with MongoDB Data in Java Applications 231 Adding Documents from Java 231 Removing Documents from Java 236 Saving Documents from Java 239 Updating Documents from Java 241 Upserting Documents from Java 245 Summary 249 Q&A 249 Workshop 249HOUR 13: Implementing MongoDB in PHP Applications 251 Understanding MongoDB Driver Objects in PHP 251 Finding Documents Using PHP 259 Counting Documents in PHP 265 Sorting Result Sets in PHP 267 Summary 270 Q&A 270 Workshop 270HOUR 14: Accessing Data from MongoDB in PHP Applications 273 Limiting Result Sets Using PHP 273 Finding Distinct Field Values in PHP 281 Grouping Results of Find Operations in PHP Applications 283 Using Aggregation to Manipulate the Data During Requests from PHP Applications 287 Summary 290 Q&A 290 Workshop 290HOUR 15: Working with MongoDB Data in PHP Applications 293 Adding Documents from PHP 293 Removing Documents from PHP 297 Saving Documents from PHP 299 Updating Documents from PHP 302 Upserting Documents from PHP 305 Summary 308 Q&A 309 Workshop 309HOUR 16: Implementing MongoDB in Python Applications 311 Understanding MongoDB Driver Objects in Python 311 Finding Documents Using Python 318 Counting Documents in Python 324 Sorting Result Sets in Python 326 Summary 329 Q&A 329 Workshop 329HOUR 17: Accessing Data from MongoDB in Python Applications 331 Limiting Result Sets Using Python 331 Finding Distinct Field Value in Python 339 Grouping Results of Find Operations in Python Applications 341 Using Aggregation to Manipulate the Data During Requests from Python Applications 344 Summary 347 Q&A 347 Workshop 348HOUR 18: Working with MongoDB Data in Python Applications 349 Adding Documents from Python 349 Removing Documents from Python 353 Saving Documents from Python 355 Updating Documents from Python 358 Upserting Documents from Python 361 Summary 364 Q&A 364 Workshop 365HOUR 19: Implementing MongoDB in Node.js Applications 367 Understanding MongoDB Driver Objects in Node.js 367 Finding Documents Using Node.js 377 Counting Documents in Node.js 383 Sorting Results Sets in Node.js 385 Summary 388 Q&A 389 Workshop 389HOUR 20: Accessing Data from MongoDB in Node.js Applications 391 Limiting Result Sets Using Node.js 391 Finding Distinct Field Value in Node.js 400 Grouping Results of Find Operations in Node.js Applications 402 Using Aggregation to Manipulate the Data During Requests from Node.js Applications 406 Summary 409 Q&A 409 Workshop 410HOUR 21: Working with MongoDB Data in Node.js Applications 411 Adding Documents from Node.js 411 Removing Documents from Node.js 416 Saving Documents from Node.js 419 Updating Documents from Node.js 423 Upserting Documents from Node.js 427 Summary 431 Q&A 431 Workshop 431 Part IV: Additional MongoDB Concepts HOUR 22: Database Administration Using the MongoDB Shell 433 Working with Databases and Collections 433 Working with Indexes 438 Understanding Performance and Diagnostic Tasks 443 Repairing a MongoDB Database 453 Backing Up MongoDB 454 Summary 455 Q&A 456 Workshop 456HOUR 23: Implementing Replication and Sharding in MongoDB 459 Applying Replication in MongoDB 459 Implementing Sharding in MongoDB 468 Summary 479 Q&A 479 Workshop 479HOUR 24: Implementing a MongoDB GridFS Store 481 Understanding the GridFS Store 481 Implementing a GridFS in the MongoDB Shell 482 Implementing a MongoDB GridFS Using the Java MongoDB Driver 484 Implementing a MongoDB GridFS Using the PHP MongoDB Driver 489 Implementing a MongoDB GridFS Using the Python MongoDB Driver 494 Implementing a MongoDB GridFS Using the Node.js MongoDB Driver 497 Summary 502 Q&A 502 Workshop 502 Index 505
Les mer

Produktdetaljer

ISBN
9780672337130
Publisert
2014
Utgiver
Vendor
Sams Publishing
Vekt
860 gr
Høyde
233 mm
Bredde
179 mm
Dybde
30 mm
Aldersnivå
06, P
Språk
Product language
Engelsk
Format
Product format
Heftet
Antall sider
544

Forfatter

Biographical note

Brad Dayley is a senior software engineer with more than 20 years of experience developing enterprise applications. He has designed and developed large-scale business applications, including SAS applications with NoSQL database back ends and rich Internet web applications as front ends. He is the author of the jQuery and JavaScript Phrasebook, Sams Teach Yourself jQuery and JavaScript in 24 Hours, and Node.js, MongoDB and AngularJS Web Development.