The customer is a world famous film production company, one of top-10 Hollywood film studios.
Develop a web application for tagging movies. Tags could reflect characters, places, music, mood etc. Tags form a hierarchy. All tags should be stored into MarkLogic NoSQL database, which is a document-oriented database with a schema-agnostic data model for storing and managing XML, JSON, RDF and geospatial data.
There were two main requirements from the customer: to develop a workable prototype in very short time, and to make the client-side of the application very responsive to user’s actions.
The specifics of the project is to use MarkLogic NoSQL database, and store tags as triples in triplestore. Triple is a base element for semantic data storage, like “Bob is 35” or “Bob knows Fred”. The key feature of triplestore is that it is optimized for storage and retrieval of triples with a query language. Therefore, the user can easily get an answer to a question like “How two particular entities are connected?”
When developing the user interface, the main requirement from customer was that application should be interactive, i.e. it must allow continuing the movie tagging while the user’s command is performed in the background.The AngularJS framework was the most appropriate choice, as it allowed developing a very interactive user application, which interacted with server without refreshing the web page.
Our solution makes it possible for end users to tag movies very fast — without waiting long for the application reaction. Application significantly increases the user’s performance in tagging movies and therefore saves much customer's resources. In addition, we were able to pack the whole project in docker containers for faster deployment.