Can You Bet on It?
October 07, 2015

Can You Bet on It?

Daniel Davenport | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User

Software Version

Enterprise Edition, versions 5 through 7

Modules Used

  • nosql database and search engine

Overall Satisfaction with MarkLogic

MarkLogic is the database engine at the core of my company's flagship product. We use it to store and search approximately 100 TB of data across approximately 10 separate clusters. It most cases we can produce search results with amazing speed.
  • MarkLogic is fast and flexible. The data does not have to be structured (particularly in advance).
  • MarkLogic is a combination database, search engine, and application server. As a database, it is ACID compliant which is absolutely essential for mission critical production applications.
  • MarkLogic is dependable, in almost all cases recovers by itself, and is relatively easy to administer.
  • MarkLogic is not cheap, either for the software itself, the hardware to run it on, or the investment in learning necessary to use it effectively. While MarkLogic has gone to great pains to add multiple interfaces so that a deep understanding of XQuery is theoretically not necessary, I feel XQuery is essential to understanding the product well enough to use it in production applications.
  • Specifically, it is my understanding that switching database contexts is expensive in terms of performance. There could be be a improvement in the ability to query across databases, or even across clusters, that could drive greater flexibility in design decisions.
  • The security model definitely could be improved to facilitate sharing users, roles, and permissions across clusters. Building your own security model to allow users access to data on different clusters is very complex and leads to a number of performance issues.
  • It took longer than expected to develop our application and get the level of consistent performance necessary. As a result, profit was flat for a couple of years but the benefits are really starting to kick in.
I have used most of the common RDBMS databases (SQL Server, Oracle, MySQL, etc.). MarkLogic is more dependable, faster, and flexible. I would not willingly go back to RDBMS. As far as open source competition to MarkLogic such as MongoDB, I haven't used it myself so I don't have direct knowledge. If I was starting a company I would definitely look at MongoDB but carefully evaluate the real cost (technical talent, support) before making a decision. Be very sure of how important ACID compliance is to you. If you can afford it, betting your company on MarkLogic is a good bet.
MarkLogic is expensive but solid. While we use open source for almost everything else, the backend database is too critically important. At this point, re-tooling for a different back end would take too much time to be a viable option.
The first question is [around] how rigidly your data is structured. If it is well structured and non-volatile, an RDBMS database is an alternative. If it is not well structured or the structure changes, a NoSQL database should definitely be considered. However, there is no free lunch. NoSQL requires a different mindset and skill set. It is easy to set up a prototype that runs but much harder to design it to really take advantage of the speed it is capable of. To be able to query 10TB of data and get an accurate subsecond response is a thing of beauty. To be able to do it consistently requires a lot of deep technical knowledge. People with deep technical knowledge of MarkLogic, NoSQL, XML, and XQuery are in great demand. You will need a good plan to find, grow, and keep such talent.