MongoDB also has full support of '''primary and secondary indexing'''. Indexes support the efficient resolution of queries in MongoDB. Without indexes, MongoDB must scan every document in a collection to select those documents that match the query statement. Fundamentally, indexes in MongoDB are similar to indexes in other database systems. MongoDB defines indexes at the collection level and supports indexes on any field or sub-field of the documents in a MongoDB collection. MongoDB can use indexes to return documents sorted by the index key directly from the index without requiring an additional sort phase.
'''Sharding''' is another feature that Mongo supports. It is the process of storing data records across multiple machines and is MongoDB’s approach to meeting the demands of data growth. As the size of the data increases, a single machine may not be sufficient to store the data nor provide an acceptable read and write throughput. Sharding solves the problem with horizontal scaling. With sharding, you add more machines to support data growth and the demands of read and write operations.
Kevin also spoke about '''Replication'''. A replica set in MongoDB is a group of mongod processes that maintain the same data set. Replica sets provide redundancy and high availability, and are the basis for all production deployments. Data can live across multiple boxes in multiple servers.
He then went to talk about installing MongoDB and how easy it was to set it up, he showed the installation process by demoing it to the audience. I already have mongodb installed and set up on my local computer so this part was bit of repetitive to me. He went to create a collection called FSOSS and demoed the basic Mongo commands and then went to a lot of detail about mongo and demoed a lot of its functionality, which I thought was pretty cool.
=== OpenCL ===