by Eric Madariaga | October 03, 2016

Leading Edge NoSQL & Big Data Drivers

In addition to the new SQL engine, our teams have updated our NoSQL and Big Data drivers with a rich set of features that truly put them in a class of their own. The new drivers offer the utmost in flexibility when accessing data, allowing users to access non-relational data in a relational way. Users can choose from several techniques to customize the ways in which non-relational data is accessed.

Row Scan (Automatic Schema Discovery)

With the built-in row scan, our drivers will scan a user-defined number of rows and define the column names and data types based on the data scanned. By default the drivers will flatten object hierarchies and report arrays as JSON aggregates. This functionality is customizable by setting connection properties for the driver.

Unflattened Nesting

Another option is to use functions and SQL queries to retrieve data, without flattening. There are several built-in JSON functions for drilling down into the data:

  • JSON_EXTRACT(grades, '[1].score') : Read the score field from entry 1 in the grades array.
  • JSON_SUM(grades, '[x].score') : Calculate the sum of the score field from all entries in the grades array.
  • JSON_COUNT(grades, '[0..2].score') : Count the number of score fields from entry 0 to entry 2 (inclusive).

Users can also simply tell the SQL engine the data you want to try and retrieve by using a direct, free-form query. If there is data for a given field, it will be returned, while non-existent data is returned as a NULL value, e.g.:

SELECT [address], [grades.1.score] FROM Student

Custom Schemas

Our NoSQL drivers also enable you to define custom schemas. With a custom schema, users control the tables and columns (including data-types) that will be returned from querying the driver. Like the direct query, if there is no data, a NULL value will be returned.


Get Started with a Free Trial!

For more examples of using our NoSQL drivers to access data, please check out an earlier post about using our MongoDB drivers. While specific to Mongo, the same methods for data access can be used with any of the non-relational data sources that we support. Download a free 30-day trial of any of our drivers today:

NoSQL & Big Data Drivers