Technology and Features

Broad connectivity to Data Sources

Querona can connect to over 128 data source types like relational, MPP, NoSQL, SaaS, CRM’s, or Social Media and supports data access technologies like ODBC, JDBC, and ADO.Net.

For a full list of providers please consult the Data sources article.

Emulation of SQL Server

Querona’s emulation of Microsoft SQL Server allows any client supporting connectivity to SQL Server to connect to Querona.

Emulation delivers compatibility with the following SQL Server features:

  • Metadata model exposed by SQL Server, including metadata catalog, system views, stored procedures, and functions
  • SQL dialect supported by SQL Server
  • Tabular Data Stream network protocol as described in Microsoft TDS documentation
  • Data types and conversions, where all data types are normalized automatically into equivalent SQL Server data types
  • Procedural programming constructs: IF, WHILE, DECLARE
  • Temporary tables (stored in-memory)
  • Selected SQL session environment variables
  • Security model supported by SQL Server
  • Authentication using Windows Integrated Authentication and SQL Server Standard Authentication (Mixed Mode)
  • Job scheduling model and accompanying stored procedures

Connectivity to Querona was verified using notable tools and technologies listed below.

Analytical, reporting or development tools (not a full list):

  • Apache SuperSet
  • PowerBI
  • Qlik
  • Tableau
  • Targit
  • Microsoft Office
  • Microsoft SQL Server Management Studio

Data access technologies:

  • ADO.Net
  • JDBC
  • OLE DB
  • ODBC

Built-in Apache Spark

Apache Spark engine is built-into Querona. No configuration is needed and a standalone instance of Spark is ready to use for querying and data storage. To utilize the power of Spark, uses do not have to learn to code in Scala or SparkSQL, because everything is wrapped and hidden by Querona’s emulation of Microsoft SQL Server.

Data lineage

Querona traces and maintains the data lineage using all created objects and their metadata. Each view dependency graph can be examined graphically and searched.

Columnar processing

Querona is a columnar data virtualization engine. Incoming rows of data are converted into columnar format for high parallelism and high performance processing. Outgoing results are converted into rows for compatibility with the SQL Server protocol.

No ETL

Comparing to classic, flow-based ETL tools, Querona implements ETL responsibilities differently. Most of processing requirements can be expressed using SQL and Views and that is the approach in Querona.

  • Virtual Databases are wrappers over a data source to provide direct access to data, or created over one many supported data processing engines, that may be used for data integration and caching.
  • Views may depend on each other and blend data using full power of SQL language.
  • Views created in Querona’s virtual databases are materializable (aka. cachable).
  • Many processing-engine dependent strategies can be utilized, for example in-memory caching or persistent caching using table rotation.
  • SQL Server’s restrictions of so called “indexed views” do not apply to Querona.

Transparent data pseudonymization

Data pseudonymization in Querona works transparently to the end user. If any user decides to cache sensitive data on the untrusted system, Querona will automatically detect that sensitive data is being stored and will encrypt the data. The user will not detect that encryption happened because he or she will see real data, even if processing happened on the untrusted system.

For more information see Data Security.

Query retargeting

The use of pre-computed aggregate data is a technique to address performance challenges in Data Warehouse systems (DW). An aggregate retargeting mechanism redirects a query to an available aggregate table(s) when possible. The adoption of aggregates is completely transparent to Data Warehouse users.

For more information see Overview of Query Retargeting.

Flexible deployment model

Querona can be deployed using the following models:

  • on-premise, using physical or virtual machine with Windows (server and desktop)
  • cloud, IaaS
  • hybrid (mixed), on-premise and cloud