A NoSQL database provides a mechanism for storing and retrieving data that is modeled in ways other than the those used in relational databases and RDBMS. Such databases have existed since the late 1960s, but were not called NoSQL until a surge in popularity during the early 2000s, triggered by the needs of Web 2.0 companies such as Facebook, Google, and Amazon.
NoSQL databases are increasingly used in big data and real-time web applications. Hadoop enables certain types of NoSQL distributed databases (such as HBase), which allow data to be spread across thousands of servers with little reduction in performance. Modern non-relational and cloud databases now make up 70-percent of data sources for analytics. And it's becoming common for companies to gain a deeper understanding of their customers by querying NoSQL data and combining it with data, including unstructured data, residing in Salesforce and Web transaction data in Hadoop.
Many enterprise application developers choose NoSQL databases as operational databases. They employ technologies like Apache HBase, MongoDB, Cassandra and Presto for their scalability, schema-less flexibility, high write speed, and fast response time for short-request queries. These are its advantages over relational, SQL-based data models.
As NoSQL databases store more application data, enterprises want to perform analytics on that data. But while NoSQL big data stores are well-suited to operational queries, most NoSQL databases are not optimized for analytic queries or business intelligence. For example, a key-value store is extremely fast when looking up information given a key such as a user profile or a key-value pair. But it's much more challenging to select a subset from millions of profiles based on arbitrary filters or to aggregate across millions of records. In fact, some NoSQL stores don’t support aggregation or ad hoc filtering on an arbitrary field.
Traditional BI tools provide either very basic or no support for NoSQL databases. In cases where they are supported, connectors tend to be via non-native JDBC or ODBC drivers. Performance is very slow due to the data management overhead imposed by the non-native connectors, and the fact that NoSQL database engines aren't capable of the query operations demanded for BI and analytics.such as group-by summaries of big data.
Zoomdata can provide visual analytics for business users with data stored in NoSQL databases. And, Zoomdata is smart enough to push down whatever query processing can be done to the NoSQL source, such as aggregations in MongoDB. In fact, MongoDB provides three ways to perform aggregation: the aggregation pipeline, the map-reduce function, and single-purpose aggregation methods.
If the source doesn’t natively support analytic queries, Zoomdata leverages Apache Spark to supplement the capabilities of the NoSQL source. Zoomdata also supports NoSQL characteristics that are different from relational sources, such as nested structures. So if you’ve got valuable data in NoSQL stores, you can tap into that value with visual analytics from Zoomdata.
Zoomdata provides visual analytics for data in NoSQL stores including MongoDB, Apache Phoenix, and Apache HBase.