How I Moved from SQL Server to MongoDB
MongoDB was missing in my life like a cropping tool to let me properly display this picture.

How I Moved from SQL Server to MongoDB

I developed my first database in the year 1995 (just before Windows 95 was released). I used a database that I am willing to bet you have never heard of: [drum roll please] Alpha 5. It seems that they are still around, give it a search. Soon I was asked to switch to Microsoft Access and to make the application client/server. It wasn't long that I upgraded the back-end to SQL Server.

Fast forward to 1998 and I was using SQL Server along with ColdFusion to develop interactive web sites, including my own ventures. I was very comfortable with that stack, until the advent of AJAX.

I remember the days in 2005 of playing with a hidden iframe to help JavaScript update the screen with the results of an operation, invoked by a visible button on the page, running in the hidden iframe. If you don't know what I am talking about, congratulations! You are young and had xhr served on a plate.

But JavaScript was a royal pain until some standardization arrived across browsers and jQuery made life a little more sane.

Yet, I was still using SQL Server.

What got me to switch? Some quirky errors that my hosting company's dba essentially said couldn't really be fixed. I had data that wouldn't display unless I sorted it a particular way, system processes that would fail, and a good number of headaches that made me decide: "I do not want to deal with this any more".

I am old enough to know that there are problems with every technology, but I had embraced JavaScript by now, why not embracing a NoSQL database that worked with JavaScript and JSON syntax?

It didn't take long that I was researching databases. CouchDB had a lot of fans among my peers, but I didn't think it had what I needed. MongoDB did, or at least convinced me that it did as I really did not know if I was going to be able to make the switch.

Switching from a relational database to a document based database is not simple. You have to at least grasp the differences in data models. You also have to make a plan for accomplishing the same things you did before, but this time using a document data model.

Again, it didn't take me long to understand the vast improvement in productivity granted by using a database that spoke the same language as the rest of the stack. But there was a problem: I was hacking my way around and I knew that it would come back to bite me. It was time to get serious. So, in March 2016, I signed up for a class, M101JS, that was supposed to prepare me for certification. I worked hard, began getting up at 5 every morning, and studied away. I got 100% in the class and scheduled to take the certification exam.

I failed my first attempt and was crushed, but not defeated. The class did not come close to preparing me, or maybe I was starting with too little experience. So I hit the books focusing on the documentation. I passed a month later even though I knew that I had missed three questions due to the same error.

In August 2016 I started working at Cisco Systems in a team that used MongoDB for a solution. We did not have a DBA so I signed up for the M102 DBA course in October. At the beginning of December, super busy with a million other tasks, I could not complete the last couple of assignments. I was so bummed because I always finish what I start. I still managed to get an 84% in the class, but I did not feel ready for the DBA Certification Exam.

I signed up for the January 2017 exam even though I was going to be on vacation with my family for three weeks from Christmas to a week before the exam. I got very little time to study and was prepared to take the exam again in February. I did focus for a few days after the kids stopped waking up at 4 am due to jet-lag.

Much to my surprise, in early February I got the news that I had passed the exam. I believe that my experience on the job really helped this time, in particular because we had to setup replication, research the possibility of sharding, and keep our finger on performance.

Now I am one of only two people in California who have dual certification in MongoDB (both Developer and DBA). This doesn't mean that I am a guru. I am sure that there are better prepared people (who never bothered to get certified) at handling real-world situations than I am. Yet, I feel that I got a very solid foundation straight from MongoDB.

Yesterday, I started following the M201 MongoDB Performance course. That's my first step towards the next level. My plan is to also take M034, M202, M310, and M312 to cover new features and to deepen my DBA understanding.

Ultimately, I want to work on big data solutions. MongoDB is the first step in a long journey, a journey that I have to cover quickly because new innovations come at a breathtaking pace. So, any spare moment I have I try to invest it wisely because if you stop you fall behind. Let's hope that I am heading in the right direction... so far the job market has proven me right.

How I Moved from SQL Server to MongoDB

Nice write up! I too came from the sql server world. I am a certified c# developer that has moved to nodejs and MongoDB and haven't looked back for one second. Life is better now :)

One clarification, Daniele. There are quite a few more than two dual-certified MongoDB pros in CA ;-) https://university.mongodb.com/certified_professional_finder/#country=US&state=CA&expertise=dual (and those are just the ones that have opted in to the Certified Professional Finder).

Congrats on passing the exam! It's really hard . Now you'll have to lead a BOF at #MDBW on exam prep!

回复
Ram B.

Database Manager/Sr. Infrastructure Engineer

8 年

Great journey...keep learning.

要查看或添加评论,请登录

Daniele Graziani的更多文章

  • Just Switch to Stitch

    Just Switch to Stitch

    I label myself: "the laziest programmer in the world" because I don't put up with unnecessary efforts. As you can read…

  • Evaluating MDB as an Investment?

    Evaluating MDB as an Investment?

    MongoDB (MDB) recently went public and reported earnings for the first time. Despite a few analysts trying to explain…

    4 条评论
  • To Stitch, Or Not to Stitch? That Is Not Even A Question!

    To Stitch, Or Not to Stitch? That Is Not Even A Question!

    Whether 'tis nobler in the mind of an engineer To endure the slings and arrows of backend code, Or to take Arms against…

  • Rome Wasn't Built in One Day--So Isn't Stitch

    Rome Wasn't Built in One Day--So Isn't Stitch

    Campbell, CA - November 2, 2017 I recently set out to write a feature for my web site www.marcopoloni.

  • Bad Medicine

    Bad Medicine

    All MongoDB databases suffer from a genetic disease: they can scale to ginormous. What is the cure for…

    2 条评论
  • Challenges of A MongoDB Migration

    Challenges of A MongoDB Migration

    Did I make it sound as if migrating from SQL Server to MongoDB was a piece of cake? Sorry to have misled you! The…

    3 条评论
  • My First Steps in Adopting MongoDB

    My First Steps in Adopting MongoDB

    In my previous post I described my life-long association with databases and how in 2015 I made the leap from SQL Server…

社区洞察

其他会员也浏览了