A Tale of Two Facets: MongoDB vs MarkLogic

A Tale of Two Facets: MongoDB vs MarkLogic

Posted on October 09, 2013 0 Comments
Person using a tablet

In a recent blog post titled, Faceted Search with MongoDB” users are guided through the process of creating a simple faceted search application for a bookstore catalogue. Rudimentary functionality is specified and restrictive assumptions are made to compensate for MongoDB’s deficiencies. These deficiencies have a measurable negative impact when developing applications in the context of an agile enterprise.

MarkLogic easily overcomes these deficiencies, offering enterprises a far greater ROE (return on effort). Developers are free to pursue higher value business tasks.  There is no requirement to spend valuable time programming basic search features, like faceting, or bolting on 3rd party tools, which the author admits adds “Extra complexity due to adding another ‘moving part’ to your deployment.”

In its blog, MongoDB also made a surprising admission that:

Your application must deal with the fact that the system as a whole is now eventually consistent, with respect to the data stored in MongoDB versus the data stored in the external search engine. This may be undesirable, particularly for a product catalog that changes very frequently, for example.

With MarkLogic, there is also no requirement that facets be “well-known up front, and change rarely if at all” as was prescribed in the MongoDB example. There is no need to assume that the number of facets is small, the number of possible facet values is small, or that each item in the catalog will have only one facet value for each facet. ).”  In fact, it isn’t hard to find many real world examples where documents need to be represented with more than one facet value in a facet. For example, songs can be classified in more than one genre, students can have more than one major and purchase orders can buy goods and services for more than one project. Finally, when using an ACID compliant or (what we call an Enterprise NoSQL database) like MarkLogic, your system is always consistent.

But why take my word for it? Readers are encouraged to visit “Building Faceted Search Applications with MarkLogic App Builder ” to see an alternate approach for rapidly building faceted search applications. Search and discovery is a core component of a new paradigm for building powerful information based, workflow oriented business applications.  When built on MarkLogic, these applications can leverage Big Data volume, velocity and variety for operational efficiencies and new business opportunities. However, when developers and database architects must spend time building foundational features like faceted search for MongoDB applications, and integrating 3rd party and open source tools that add “moving part” complexity, Big Data becomes an enterprise albatross rather than a strategic asset.

Michael Malgeri

Michael Malgeri is a Principal Technologist with MarkLogic. He works with companies to match their business requirements with MarkLogic’s enterprise NoSQL database and semantic features. He helps organizations reduce costs, automate processes, find new opportunities and create applications that bring high value to businesses and their customers. Michael focuses on the media and entertainment industry, where content providers, distributors and related companies are seeking to leverage the power of data in order to capture new opportunities driven by expanding global information consumption.

Michael holds Master’s Degrees in Computer Science, Business and Mechanical Engineering. He's been a Certified Project Management Professional since 2011.

Comments

Comments are disabled in preview mode.
Topics

Sitefinity Training and Certification Now Available.

Let our experts teach you how to use Sitefinity's best-in-class features to deliver compelling digital experiences.

Learn More
Latest Stories
in Your Inbox

Subscribe to get all the news, info and tutorials you need to build better business apps and sites

Loading animation