23x Higher Performance, Delivered to Market in Just 6 Months, Weekly Product Updates
Brein BV powers mission critical government services in the Netherlands. Migrating from its previous content management platform in just 6 months, Brein BV is now delivering 23x higher performance for its customers, and updating its service weekly.
I had the chance to sit down with Ronald Brinkerink, CEO and founder of Brein BV to learn more about how and why his team uses MongoDB, and his recommendations for those getting started with the database.
Please start by telling us about your company
Brein BV enables national and regional government bodies in the Netherlands to run more efficiently and to better serve their citizens.
We are a dedicated software development company specializing in the integration of business processes with Enterprise Content Management (ECM) to build case-management solutions. Whether ordering a new passport, applying for a driving license, registering building permits or reporting environmental issues, the Brein BV “InProces” platform allows citizens and businesses to consume government services online. Each “case” is automatically managed through the system using automated business processes; rich content management; and integrated collaboration between users and government officials.
I founded the company in 1997 and we now serve all of major Dutch central, regional and city governments, as well as many of our water boards (remember, over 25% of the Netherlands is below sea level, so the boards are an important government agency!)
We operate in a highly competitive market where each government tender receives responses from multiple vendors. As a testament to the quality of our technology, the Dutch government has rated Brein as the best case-management solution for the past four consecutive years. The functionality, flexibility and ease of use of our platform are key differentiators. We deliver Brein InProces as Software-as-a-Service (SaaS), so our customers don’t need to install or run any software locally.
How are you using MongoDB?
MongoDB is the content platform for Brein. It manages all of the content from government forms and stores the business rules that enable automated workflow and collaboration.
Back in 1997 we initially built our solution on Lotus Notes (which later became IBM Domino). At that time, it was perfectly suited to what we needed it to do. Government forms are specific to each application, and a conventional relational database just wouldn’t have given the schema flexibility we needed.
IBM Domino served us well, but the product roadmap was not evolving at the pace we needed. More government services are being pushed online. Citizens and business are now always connected. These two factors significantly drive up the scaling requirements of the backend database, and Domino wasn’t keeping pace.
We also need to give our customers in government departments more flexibility as they design their forms, which in turn drives adaptability of the data model. MongoDB’s dynamic schema makes this very easy, and brings new flexibility to our solution. For example, we have developed a responsive form designer using HTML5. All fields on the form are dynamically added using a drag-and-drop interface, which then defines the schema in MongoDB.
Figure 1: Brein Form Designer dynamically creates the MongoDB schema
Our data model is simple, but very powerful. Each content asset – a completed form, for example – is represented as an object in our application and mapped to a document in MongoDB. It is then linked to a “context document” which encapsulates the business rules and collaborators. This gives us efficient content management and powerful workflow automation.
Did you consider other alternatives before selecting MongoDB?
Yes, we knew the database market had changed a lot since we made our initial technology selection, so we also evaluated Cassandra and Couchbase.
We selected MongoDB because of its performance and robustness, broader functionality, comprehensive documentation and vibrant ecosystem. These were all of the critical factors we knew we needed to build the next generation of our platform.
Can you please describe your deployment?
Citizens connect to the application’s front end that is running in the public cloud. We have Apache Tomcat application servers running Java Servlets connecting to MongoDB. Security requirements dictate that the front end data needs to replicate back to our private cloud. There the government officials pick up the newly created case and handle the applied form.
We have deployed MongoDB across a multi-node replica set, distributed across two data centers, with two arbiters in a third data center to ensure always-on availability – which is a critical part of the Service Level Agreement (SLA) we have with our customers.
Figure 2: Brein BV InProces architecture, with MongoDB powering the content platform
As a SaaS-based application, each customer’s data is isolated in their own database running under MongoDB, deployed in a multi-tenant architecture. Security of government and citizen data is critical, so we use MongoDB Enterprise Advanced to provide the authentication, authorization, auditing, and encryption controls we need.
What operational platforms are you using to manage MongoDB?
We use Ops Manager. It provides automated backup and point-in-time recovery of our replica sets, along with monitoring of all our database metrics so we can proactively manage our service.
How are you measuring the impact of MongoDB on your business?
We are measuring it across multiple dimensions.
Firstly – greatly improved customer experience.
Writes to the database are 23x faster and reads are 12x faster. This also gives us lots of headroom for growth as we add more customers to our platform.
Secondly – time to market.
It became clear to us that our existing Domino-based platform could inhibit our business growth. We began our migration to MongoDB in spring 2014, and just 6 months later, we were live. This is incredibly fast for a complex database migration, and it means we can now on-board customers faster than we had originally planned, and they can get the benefits of higher performance and richer functionality sooner. This in turn, increases our competitiveness in the market.
Thirdly – application agility.
Beyond the migration, MongoDB enables us to evolve our platform faster. We use an agile development methodology with daily scrums. We have introduced quarterly maintenance releases, and with our continuous integration processes, push out weekly updates. This type of agility just wouldn’t be possible in other databases, and it is enabled by MongoDB’s dynamic schema.
Figure 3: Brein BV network architecture with MongoDB deployed across multiple data centers for always-on availability
Do you have any plans to upgrade to MongoDB 3.0?
We do. We are very excited to read about MongoDB 3.0 general availability and its promise of high performance and greater storage efficiency.
What advice would you give someone who is considering using MongoDB for their next project?
There are some fantastic resources available to your developers and DBAs through the MongoDB University and its online courses. My team would not have been able to take advantage of MongoDB so quickly without these courses.
Ronald, thank you for your time, and sharing your experiences with the MongoDB community.
Thinking about building multi-tenant services on MongoDB? Read our MongoDB-as-a-Service white paper: