Christian Kvalheim

MongoDB Transactions vs Two-Phase commit

I just put the finishing touches on an article comparing MongoDB 4.0.x transactions to using Two-Phase commit for a simple bank account transfer pattern. Head on over to to read all about it.

The wonderful world of GEO spatial indexes in MongoDB

The wonderful world of GEO spatial indexes in MongoDB MongoDB has native support for geospatial indexes and extensions to the query language to support a lot of different ways of querying your geo spatial documents. We will touch on a all of the available features of the MongoDB geospatial support point by point as outlined below. Query $near a point with a maximum distance around that point Set the minimum and maximum range for the 2d space letting you map any data to the space GeoNear command lets you return the distance from each point found $within query lets you set a shape for you query letting you use a circle, box or arbitrary polygon, letting you map complex geo queries such as congressional districts or post code zones.

Mongo Driver and Mongo DB 2.6 Features

Introduction This tutorial will show you how to create a simple theme in Hugo. I assume that you are familiar with HTML, the bash command line, and that you are comfortable using Markdown to format content. I’ll explain how Hugo uses templates and how you can organize your templates to create a theme. I won’t cover using CSS to style your theme. We’ll start with creating a new site with a very basic template.

A Basic introduction to Mongo DB

A Basic introduction to Mongo DB Mongo DB has rapidly grown to become a popular database for web applications and is a perfect fit for Node.JS applications, letting you write Javascript for the client, backend and database layer. Its schemaless nature is a better match to our constantly evolving data structures in web applications, and the integrated support for location queries is a bonus that’s hard to ignore. Throw in Replica Sets for scaling, and we’re looking at really nice platform to grow your storage needs now and in the future.

A primer for GridFS using the Mongo DB driver

Mongo Driver and Mongo DB 2.6 Features MongoDB 2.6 introduces some new powerful features that are reflected in the 1.4 driver release. These include. Aggregation cursors Per query timeouts maxTimeMS Ordered and Unordered bulk operations A parallelCollectionScan command for fast reading of an entire collection Integrated text search in the query language Moreover the driver includes a whole slew of minor and major bug fixes and features. Some of the more noteworthy features include.

The New Bulk API

The New Bulk API One of the core new features in MongoDB 2.6 is the new bulk write operations. All the drivers include a new bulk api that allows applications to leverage these new operations using a fluid style API. Let’s explore the API and how it’s implemented in the Node.js driver. The API The API have two core concepts. The ordered and the unordered bulk operation. The main difference is in the way the operations in a bulk are executed.

Diagnosing driver installation problems

The MongoDB driver is not installing correctly Most of the problems are with the native BSON parser and there can be a multitude of reasons why it’s not installing correctly and the driver is falling back to the js implementation of the serializer. This post will hopefully help you track down what the problem is on your system. We will start looking at it from a checklist point of view. Build Essentials Linux/Unix If you don’t have the build essentials it won’t build.

Lessons from 4 years of driver development

I gave the presentation “Lessons from 4 years of driver develoment“ at JSConf EU 2013 in Berlin. The presentation is a summary of my four years of experience writing a successful open source project and all the good and bad experiences I’ve had over the last years in relation to this. Lessons from 4 years of driver develoment The video is also available Lessons from 4 years of driver develoment

How does mongodb store my data

At FOSDEM 2013 I gave a talk about MongoDB internals, going through how the database physically stores data in memory and disk and why you should learn about the internals of the database you use in production to let you get the maximum performance out of it and to be better able to diagnose issues in production. How does mongodb store my data

MongoDB Native: The Official Node.js MongoDB driver

The Node.js MongoDB driver was started in 2009 and has grown to become one of the most popular database drivers for the Node.js Platform. MongoDB is a document database that allows the storage of documents in json format. It’s main benefits come from it’s ability to store unstructured data while maintaining traditional databases ability to query and index the document efficiently. MongoDb also provides a whole scaling up path. A whole ecosystem has sprung out on top of the driver including ODM mappers such as Mongoose and whole frameworks such as Meteor (a fantastic real time framework).