Forbes is nearly 100 years old and is the largest U.S-based business media brand. An online version of the print publication was established more than a decade ago, with 2% of its content originating from the magazine and the remaining 98% exclusively created for the web. The changing media landscape and the drive for more dynamic content required a nimble site that didn’t involve reengineering with every addition or change. Now, Forbes.com stores all of its core assets, including data for articles and the company’s renowned Lists (e.g. World’s Richest People, Best Places to Live), in MongoDB. As Forbes.com’s content serving platform, MongoDB delivers ease of use, flexibility and TCO and has transformed how Forbes.com’s data is presented to the web consumer.
Like most media brands in the past, Forbes.com was mostly a static web product where data, once published, was updated less frequently than the business needed. As a result, changes required additional development which led to a number of siloed data stores that required additional maintenance and were not closely tied together.
As demand for online, dynamic content grew, Forbes.com needed to re-architect their web infrastructure and find a better solution to aggregate and integrate data into the site. Without the luxury of significant funds required for commercial packages, and the additional staffing requirement, they opted for an open source solution. Compared to other NoSQL solutions, MongoDB was the best fit for Forbes’ needs: easy to develop, cost-effective to maintain and did not require additional administrators.
MongoDB stores all Forbes.com data in a single database that consists of: nearly one million articles (and rapidly growing) from 1,000 global contributors; more than 120,000 user comments; and upwards of 123,000 People, Companies and Places List entries. With MongoDB, Forbes.com is able to aggregate all of its data and make it readily available to Forbes applications (e.g. web, mobile) and partner feeds from a centralized location, creating a richer user experience.
MongoDB is the web store component of Forbes.com’s open source stack, which includes WordPress (contributor platform), Mule ESB (transport layer) and Solr (search.) MongoDB is run on physical servers in production but utilizes VMware in development and staging environments.
“The beauty of MongoDB is that we can constantly evolve without reengineering our whole approach,” said Steven Bond, group director of the Forbes.com Software Development Team.
MongoDB’s flexibility allows different variations of information to be pulled from a single data source to easily build lists and maintain the integrity of the main articles. With MongoDB, new collections of data (e.g. Promoted Content) can be created to easily add artifacts and properties (e.g. list “ranking”) to documents.
Additionally, Forbes.com uses MongoDB to aggregate real-time statistics on web consumers, such as page views and unique visitors.
The initial transition to MongoDB concluded in less than four months – “short for a full redesign,” according to Bond.
MongoDB stores information in one document enabling developers to skip the time-consuming relational process of viewing, 3, 4, or 10 other associated tables. This document data model significantly shortens the learning curve compared to SQL, and is easy to learn, work with and produce quickly. Forbes.com engineers that were never before exposed to NoSQL, became fluent in MongoDB in a matter of weeks. MongoDB also supports Forbes.com’s agile approach, with development cycles of less than two weeks.
MORE WITH LESS
Legacy database development required very deep knowledge in certain languages and methodologies, leading to prolonged development cycle. MongoDB’s document data model allows for fast time to market. Forbes.com is able to develop faster with fewer resources with a database that is inexpensive and easy to maintain.
MongoDB replica sets assure scale and high availability via automatic failover of nodes and automatic recovery of member nodes, essential for a successful online media entity.
“The ability to store data in one place is priceless,” said Bond, "Replacing multiple technologies with a single MongoDB database allows Forbes.com to centralize support with a significantly smaller team of dedicated engineers to maintain the database, search index and APIs, resulting in fewer mistakes and freeing up resources. MongoDB’s open source platform coupled with commercial support is extremely cost efficient, delivering a positive TCO impact."
Development options on MongoDB are endless. Now that all of Forbes.com content is stored in MongoDB, Bond thinks about doing something “very innovative and disruptive,” like combining content and statistics to predict how content will be consumed by the Forbes audience.
Location: New York, NY
- Flexible content serving platform that simplifies data aggregation and integration
- Fast ramp-up and short learning curve compared to SQL
- Ability to constantly evolve without reengineering system and approach
- Positive TCO impact with open source solution