Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove Generic dialect #452

Merged
merged 8 commits into from
Jan 18, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 0 additions & 25 deletions .github/workflows/dependencies_check.yml

This file was deleted.

36 changes: 0 additions & 36 deletions .github/workflows/github_release.yml

This file was deleted.

23 changes: 0 additions & 23 deletions .travis.yml

This file was deleted.

113 changes: 33 additions & 80 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,6 @@

<img alt="virtual-schemas logo" src="doc/images/virtual-schemas_128x128.png" style="float:left; padding:0px 10px 10px 10px;"/>

[![Build Status](https://travis-ci.com/exasol/virtual-schemas.svg?branch=master)](https://travis-ci.com/exasol/virtual-schemas)

SonarCloud results:

[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=alert_status)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)

[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=security_rating)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)
[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=reliability_rating)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)
[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)
[![Technical Debt](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=sqale_index)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)

[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=code_smells)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=coverage)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)
[![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=duplicated_lines_density)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)
[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=com.exasol%3Avirtual-schema-jdbc-adapter&metric=ncloc)](https://sonarcloud.io/dashboard?id=com.exasol%3Avirtual-schema-jdbc-adapter)

# Overview

Exasol **Virtual Schemas** are an abstraction layer that makes external data sources accessible in our data analytics platform through regular SQL commands. The contents of the external data sources are mapped to virtual tables which look like and can be queried as any regular Exasol table.
Expand Down Expand Up @@ -51,6 +35,8 @@ Please do not try to install language containers with lower Java versions on new

Please contact the [Exasol Support Team](https://www.exasol.com/portal/display/EXA/Support+Dashboard) if you need help upgrading the language container.

The runtime dependencies are specified for each dialect in their own repository.

## Deprecation Warning

Please use the entry point
Expand All @@ -61,33 +47,49 @@ in all your `CREATE JAVA ADAPTER SCRIPT` statements. The old entry point was rem

## Features

* Read access to data on remote data sources
* Read only access to data on remote data sources (see the Supported Data Sources below)
* Data in those sources appears as tables inside Exasol and can be queried using regular SQL statements.
* Supports the following relational databases as sources: [IBM DB2][db2-dialect-doc], [Exasol][exasol-dialect-doc],
Generic JDBC-capable RDBMS, [MySQL][mysql-dialect-doc], [Oracle][oracle-dialect-doc], [PostgreSQL][postgresql-dialect-doc],
[Amazon AWS Redshift][redshift-dialect-doc], [SAP HANA][sap-hana-dialect-doc], [Microsoft SQLServer][sql-server-dialect-doc],
[Sybase][sybase-dialect-doc], [Teradata][teradata-dialect-doc].
* Supports [Apache Impala][impala-dialect-doc] (Hadoop-based analytical database) as a source
* Supports [Apache Hive][hive-dialect-doc] (Hadoop-based data warehouse) as source
* Supports access to file-based columnar storage (e.g. [Apache Parquet files](https://parquet.apache.org/documentation/latest/))
via [Amazon AWS Redshift Spectrum](https://docs.aws.amazon.com/redshift/latest/dg/c-using-spectrum.html),
[Amazon AWS Athena][athena-dialect-doc], [AWS Aurora][aurora-dialect-doc] and [Google Big Query][big-query-dialect-doc].
* Pushes down queries to the remote source (some sources)
* Supports sources with no / one / multiple catalogs or schemas
* Allows limiting metadata mapping to selected catalogs and / or schemas
* Allows redirecting log output to a remote machine
* Allows remote debugging with the Java Debugger

## Supported Data Sources
chiaradiamarcelo marked this conversation as resolved.
Show resolved Hide resolved

| Data Source |
|---------------------------------------------------|
| [IBM DB2][db2-dialect-doc] |
| [Exasol][exasol-dialect-doc] |
| [Generic JDBC-capable RDBMS][generic-dialect-doc] |
| [MySQL][mysql-dialect-doc] |
| [Oracle][oracle-dialect-doc] |
| [PostgreSQL][postgresql-dialect-doc] |
| [Amazon AWS Redshift][redshift-dialect-doc] |
| [Amazon AWS Redshift Spectrum][redshift-spectrum] |
| [SAP HANA][sap-hana-dialect-doc] |
| [Microsoft SQLServer][sql-server-dialect-doc] |
| [Sybase][sybase-dialect-doc] |
| [Teradata][teradata-dialect-doc] |
| [Google Big Query][big-query-dialect-doc] |
| [AWS Aurora][aurora-dialect-doc] |
| [Amazon AWS Athena][athena-dialect-doc] |
| [ElasticSearch][elasticsearch-dialect-doc] |
| [Apache Impala][impala-dialect-doc] |
| [Apache Hive][hive-dialect-doc] |
| [Apache Parquet files][apache-parquet] |

## Limitations

* Supports only read access to the external data
* The Virtual Schema adapter takes about 1s to start.
That means that queries that involve tables from Virtual Schema will take at least 1s.

## Customer Support

This is an open source project which is officially supported by Exasol. For any question, you can contact our support team.

**NOTE: For reporting an issue for a specific dialect, please do it in the dialect repository (see the Supported Data Sources above)**

# Table of Contents

## Information for Users
Expand All @@ -113,59 +115,6 @@ Additional resources:
* [Troubleshooting](doc/development/troubleshooting.md)
* [Versioning](doc/development/versioning.md)

## Dependencies

### Run Time Dependencies

Running the Virtual Schema requires a Java Runtime version 9 or later.

| Dependency | Purpose | License |
|-------------------------------------------------------------------------------------|--------------------------------------------------------|----------------------------------|
| [JSON-P](https://javaee.github.io/jsonp/) | JSON Processing | CDDL-1.0 |
| [Exasol Script API](https://docs.exasol.com/database_concepts/udf_scripts.htm) | Accessing Exasol features | MIT License |
| [Exasol Virtual Schema JDBC](https://github.com/exasol/virtual-schema-common-jdbc) | Common JDBC functions for Virtual Schemas adapters | MIT License |
| JDBC driver(s), depending on data source | Connecting to the data source | Check driver documentation |

### Test Dependencies

| Dependency | Purpose | License |
|-------------------------------------------------------------------------------------|--------------------------------------------------------|----------------------------------|
| [Apache Maven](https://maven.apache.org/) | Build tool | Apache License 2.0 |
| [Apache Trift][apache-trift] | Need for Hive integration test | Apache License 2.0 |
| [Exasol JDBC Driver][exasol-jdbc-driver] | JDBC driver for Exasol database | MIT License |
| [HBase server][hbase-server] | The Hadoop database | Apache License 2.0 |
| [Java Hamcrest](http://hamcrest.org/JavaHamcrest/) | Checking for conditions in code via matchers | BSD License |
| [JUnit](https://junit.org/junit5) | Unit testing framework | Eclipse Public License 1.0 |
| [Mockito](http://site.mockito.org/) | Mocking framework | MIT License |
| [Testcontainers](https://www.testcontainers.org/) | Container-based integration tests | MIT License |
| [Test Database Builder][test-bd-builder] | Fluent database interfaces for testing | MIT License |

### Maven Plug-ins

| Plug-in | Purpose | License |
|-------------------------------------------------------------------------------------|--------------------------------------------------------|----------------------------------|
| [Maven Assembly Plugin][maven-assembly-plugin] | Creating JAR | Apache License 2.0 |
| [Maven Compiler Plugin](https://maven.apache.org/plugins/maven-compiler-plugin/) | Setting required Java version | Apache License 2.0 |
| [Maven Enforcer Plugin][maven-enforcer-plugin] | Controlling environment constants | Apache License 2.0 |
| [Maven Failsafe Plugin](https://maven.apache.org/surefire/maven-surefire-plugin/) | Integration testing | Apache License 2.0 |
| [Maven Jacoco Plugin](https://www.eclemma.org/jacoco/trunk/doc/maven.html) | Code coverage metering | Eclipse Public License 2.0 |
| [Maven Surefire Plugin](https://maven.apache.org/surefire/maven-surefire-plugin/) | Unit testing | Apache License 2.0 |
| [Sonatype OSS Index Maven Plugin][sonatype-oss-index-maven-plugin] | Checking Dependencies Vulnerability | ASL2 |
| [Versions Maven Plugin][versions-maven-plugin] | Checking if dependencies updates are available | Apache License 2.0 |
| [Artifact Reference Checker Plugin][artifact-reference-checker-plugin] | Check if artifact is referenced with correct version | MIT License |

[artifact-reference-checker-plugin]: https://github.com/exasol/artifact-reference-checker-maven-plugin
[maven-assembly-plugin]: https://maven.apache.org/plugins/maven-assembly-plugin/
[apache-trift]: http://thrift.apache.org/
[exasol-jdbc-driver]: https://www.exasol.com/portal/display/DOWNLOAD/Exasol+Download+Section
[exasol-testcontainers]: https://github.com/exasol/exasol-testcontainers
[hbase-server]: http://hbase.apache.org/
[hive-jdbc-driver]: https://github.com/apache/hive/tree/master/jdbc/src/java/org/apache/hive/jdbc
[maven-enforcer-plugin]: http://maven.apache.org/enforcer/maven-enforcer-plugin/
[sonatype-oss-index-maven-plugin]: https://sonatype.github.io/ossindex-maven/maven-plugin/
[test-bd-builder]: https://github.com/exasol/test-db-builder-java
[versions-maven-plugin]: https://www.mojohaus.org/versions-maven-plugin/

[athena-dialect-doc]: https://github.com/exasol/athena-virtual-schema/blob/main/doc/user_guide/athena_user_guide.md
[aurora-dialect-doc]: doc/dialects/aurora.md
[big-query-dialect-doc]: https://github.com/exasol/bigquery-virtual-schema/blob/main/doc/user_guide/bigquery_user_guide.md
Expand All @@ -181,5 +130,9 @@ Running the Virtual Schema requires a Java Runtime version 9 or later.
[sql-server-dialect-doc]: https://github.com/exasol/sqlserver-virtual-schema/blob/main/doc/user_guide/sqlserver_user_guide.md
[sybase-dialect-doc]: https://github.com/exasol/sybase-virtual-schema/blob/main/doc/user_guide/sybase_user_guide.md
[teradata-dialect-doc]: https://github.com/exasol/teradata-virtual-schema/blob/main/doc/dialects/teradata.md
[elasticsearch-dialect-doc]: https://github.com/exasol/elasticsearch-virtual-schema/blob/main/doc/dialects/elasticsearch_sql_user_guide.md
[redshift-spectrum]: https://docs.aws.amazon.com/redshift/latest/dg/c-using-spectrum.html
[apache-parquet]: https://parquet.apache.org/documentation/latest/
[generic-dialect-doc]: https://github.com/exasol/generic-virtual-schema/blob/main/doc/user_guide/generic_user_guide.md

[vs-api]: https://github.com/exasol/virtual-schema-common-java/blob/master/doc/development/api/virtual_schema_api.md
22 changes: 0 additions & 22 deletions assembly/all-dependencies.xml

This file was deleted.

18 changes: 17 additions & 1 deletion doc/changes/changes_6.0.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ The following dialect implementations have been migrate to their own repositorie
- Sybase, moved to https://github.com/exasol/sybase-virtual-schema.
- Redshift, moved to https://github.com/exasol/redshift-virtual-schema.
- Impala, moved to https://github.com/exasol/impala-virtual-schema.
- Generic, moved to https://github.com/exasol/generic-virtual-schema.

Please we aware you can not create Virtual Schemas of the mentioned above dialects using this JAR anymore.

Expand All @@ -28,6 +29,7 @@ Please we aware you can not create Virtual Schemas of the mentioned above dialec
* #442: Removed SQL Server dialect.
* #444: Removed Athena dialect.
* #446: Removed Big Query, Sybase, Impala and Redshift dialects.
* #451: Removed Generic dialect.

## Dependency updates

Expand All @@ -44,4 +46,18 @@ Please we aware you can not create Virtual Schemas of the mentioned above dialec
* Removed `org.apache.thrift:libthrift:0.13.0`
* Removed `org.apache.hbase:hbase-server:2.3.3`
* Removed `com.exasol:test-db-builder-java:1.1.0`
* Removed `com.exasol:hamcrest-resultset-matcher:1.2.1`
* Removed `com.exasol:hamcrest-resultset-matcher:1.2.1`
* Removed `com.exasol:virtual-schema-common-jdbc:8.0.0`
* Removed `org.hamcrest:hamcrest:2.2`
* Removed `org.junit.jupiter:junit-jupiter:5.7.0`
* Removed `org.mockito:mockito-junit-jupiter:3.6.0`
* Removed `junit:junit:4.13.1`
* Removed `org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M4`
* Removed `org.jacoco:jacoco-maven-plugin:0.8.5`
* Removed `org.apache.maven.plugins:maven-compiler-plugin:3.8.1`
* Removed `org.apache.maven.plugins:maven-assembly-plugin:3.3.0`
* Removed `org.apache.maven.plugins:maven-failsafe-plugin:3.0.0-M4`
* Removed `org.codehaus.mojo:versions-maven-plugin:2.8.1`
* Removed `org.sonatype.ossindex.maven:ossindex-maven-plugin:3.1.0`
* Removed `org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3`
* Removed `com.exasol:artifact-reference-checker-maven-plugin:0.3.1`
Loading