MongoDB 3.0 WiredTiger Storage Engine with Meteor


#1

Has anyone tried MongoDB’s WiredTiger storage engine with meteor? If so, any noticeable performance increase? Or possibly using less resources to do the same amount of work?


Is Meteor okay with WiredTiger + compression?
#2

Haven’t tried it out with meteor, but I’d say it’s only really going to affect the big boys. Things like document-level “locks” are amazing, but don’t really matter unless you’ve got a few cores dedicated to the DB so you can scale writes. Similarly, the compression is awesome, but, unless you’re huge, saving ~30% of disk space won’t add up to more than a single hard drive.

The good folks at MongoDB released this video as part of their DBA class, which is pretty great: https://www.youtube.com/watch?v=O9TGqK3FBX8


#3

Currently using it. A pretty big decrease in storage requirement due to having compression. As far as performance increase, writes seem to be substantially faster, however reads seem to be unchanged. I believe this is the expected result.


#4

How would I go about getting this set up? Are there instructions somewhere?


#5

@aadams just install mongo, start mongod with the option enabled to use wiredTiger as the storage engine (for me it involved setting up mongodb.conf, which is a yaml config file) and then set MONGO_URL to point to this database. I don’t think it is any more complicated than that. To double-check which storage engine you are running, follow this: https://dba.stackexchange.com/questions/96917/check-storage-engine-from-shell

I believe I have just been able to get a production meteor app running on Digital Oocean using Mongo 3.0 w/ wiredTiger storage engine and Arunoda’s mup tool. (My DO droplet had an option when I selected it to install with Mongo 3.0, so I used that Mongo instead of installing through mup – I then had to configure it to use wiredTiger and restart mongod.)


#6

We use it. On MMS we got a reported data size of 11gb which compressed down to 2gb with wired tiger. I would say it’s pretty solid.


#7

Thanks @jononomo,

But where did you install it, on a separate box from your meteor application? Did you use MMS? Did you follow instructions on how to install?

How do you set up mongodb.conf? What are the settings you put inside that file? instructions on how to do this?


#8

@aadams I installed on the same box. Both my meteor app and the Mongo DB that it is using are on the same DigitalOcean droplet. As for how to set up the configuration file, check out these docs: http://docs.mongodb.org/manual/reference/configuration-options/


#9

@aadams Check out this question I just posted: https://dba.stackexchange.com/questions/101472/cannot-log-in-to-mongo-from-command-line-using-mongodb-3-0-and-wiredtiger-i


#10

thanks @jononomo, I’ll read that.

I’m going to be deploying my application soon (next week sometime). If I don’t do this now, i probably won’t do it for this application.

Was there anything on the front end you had to change to get the application to work with Mong 3.0 or is a a drop in place kinda thing?


#11

I read your post… and asked a question inside.

So, you installed Mongo3.0 and installed the wired tiger engine on your local dev box or just installed it remotely? Are there any changes from Mongo2.6 that will affect Meteor (like security)?


#12

I have Mongo 3.0 running on Digital Ocean, which I basically use as a dev box, but which I hope to promote to production soon. I use Arunoda’s mup tool for deployment and I followed the instructions here: https://www.youtube.com/watch?v=WLGdXtZMmiI

As long as you set your MONGO_URL correctly it should work. Only reason I asked that question was because I needed to open up my MongoDB to the wider internet so I can write to it directly from other apps without going through Meteor.


#13

I"m using mup too, but with mongo 2.6. I’ll read that link, but I’m using an Amazon EC2 instance.