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.