MongoDB Consulting and Evaluation

One of the services offered by Arborian Consulting is MongoDB Consulting and Evaluation.
In this post, I’ll tell you what these
engagements typically look like, and what to expect.

Initial discussions

Before signing any contracts or any money changes hands, we will have one or more
email or telephone discussions concerning the scope of the engagement. Typically
these discussions begin with a prospective client sending an email to
info@arborian.com. A typical engagement will be priced according to a set
number of days spent on-site in review meetings, and the number of days is highly
dependent on the size and complexity of your MongoDB
deployment. Once these discussions have concluded, Arborian generates a
statement of work covering the expected results of the engagement and the
expected time frame for completion. It’s not uncommon for Arborian to also sign a
non-disclosure agreement at this stage. If both parties agree with the scope and rate
of the statement of work, we will schedule a series of days for onsite meetings.

Onsite meetings

Once the statement of work and schedule of meetings is agreed upon, the Arborian
Consultant will come to your site to speak with the developers and operations
team responsible for the MongoDB deployment. These meetings usually begin with an
overview of the various deployments of MongoDB within your organization, followed
by in-depth code review with developers and operations review with your
operations team.

Code reviews

In the code review, the consultant will focus on the following topics:

  • MongoDB connection setup, including write safety, write concerns,
    journaling, and read preference
  • MongoDB Schema design in the various applications that use the MongoDB
    database(s)
  • Queries and updates in the code, with particular focus on performance
    and index design
  • Shard key selection, if applicable, for sharded collecitons

Operational deployment and monitoring reviews

During the time with the operations team, the consultant will focus on:

  • Server deployment (number of servers, memory and disk, CPU, etc.)
  • Replica set configuration and deployment
  • Server load estimation and sizing
  • Disaster recovery and backup strategies
  • Key performance metrics for monitoring and alerting
  • Sharding deployment, if applicable

The report

During the onsite meetings, the consultant may make serveral suggestions for
changes, and questions may come up for the consultant or the client to
investigate further. For instance, there may be various load statistics that the
client needs to collect for the sizing exercise, or there may be detailed
operational or development questions that require further research on the part of
the consultant.

Within a week of the onsite meetings, Arborian will generate a detailed report
for use by the client. This report will give an overview of the various uses of
MongoDB that were the subject of the review, with any concerns noted. The report
will then give a series of recommendations based on the review, including code,
schema, deployment, and monitoring recommendations. Finally, the report will
contain a question and answer section for the questions identified during the
review that were not addressed in other sections of the report.

Follow-up and further questions

Once the report has been delivered and accepted by the client, Arborian remains
available for occasional questions and support. More substantial follow-on
consulting will typically be covered by a separate statement of work, or the
initial statement of work may contain a retainer provision for ongoing support.

Ready to sign up?

So whether you currently have a MongoDB deployment that you’d like an expert
second set of eyes on, or whether you’re just considering MongoDB and need help
evaluating different architectural options, Arborian is glad to be your partner.
To start the process, just send an email to info@arborian.com and we’ll
get started right away!