Skip to content

Commit

Permalink
* #7: Improved user guide. (#8)
Browse files Browse the repository at this point in the history
  • Loading branch information
AnastasiiaSergienko authored Mar 18, 2021
1 parent e6c6e3c commit 560397d
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 16 deletions.
1 change: 1 addition & 0 deletions doc/changes/changelog.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Changes

* [2.0.1](changes_2.0.1.md)
* [2.0.0](changes_2.0.0.md)
* [1.0.0](changes_1.0.0.md)
7 changes: 7 additions & 0 deletions doc/changes/changes_2.0.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Oracle Virtual Schemas 2.0.1, released 2021-??-??

Code name:

## Documentation

* #7: Improved user guide.
28 changes: 14 additions & 14 deletions doc/user_guide/oracle_user_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,20 @@ Now register the driver in EXAOperation:

You need to specify the following settings when adding the JDBC driver via EXAOperation.

| Parameter | Value |
|-----------|-----------------------------------------------------|
| Name | `ORACLE` |
| Main | `oracle.jdbc.driver.OracleDriver` |
| Prefix | `jdbc:oracle:thin:`
| Files | `ojdbc<JDBC driver version>.jar` |
| Parameter | Value |
|-----------|-----------------------------------|
| Name | `ORACLE` |
| Main | `oracle.jdbc.driver.OracleDriver` |
| Prefix | `jdbc:oracle:thin:` |
| Files | `ojdbc<JDBC driver version>.jar` |


## Uploading the JDBC Driver to EXAOperation
## Uploading the JDBC Driver to BucketFS

1. [Create a bucket in BucketFS](https://docs.exasol.com/administration/on-premise/bucketfs/create_new_bucket_in_bucketfs_service.htm)
1. Upload the driver to BucketFS

This step is necessary since the UDF container the adapter runs in has no access to the JDBC drivers installed via EXAOperation but it can access BucketFS.
This step is necessary since the UDF container the adapter runs in has no access to the JDBC drivers installed via EXAOperation, but it can access BucketFS.

## Installing the Adapter Script

Expand All @@ -48,7 +48,7 @@ The SQL statement below creates the adapter script, defines the Java class that
```sql
CREATE JAVA ADAPTER SCRIPT ADAPTER.JDBC_ADAPTER AS
%scriptclass com.exasol.adapter.RequestDispatcher;
%jar /buckets/<BFS service>/<bucket>/virtual-schema-dist-9.0.1-oracle-2.0.0.jar;
%jar /buckets/<BFS service>/<bucket>/virtual-schema-dist-9.0.1-oracle-2.0.1.jar;
%jar /buckets/<BFS service>/<bucket>/ojdbc<JDBC driver version>.jar;
/
;
Expand Down Expand Up @@ -86,7 +86,7 @@ CREATE VIRTUAL SCHEMA <virtual schema name>

## Using IMPORT FROM ORA Instead of IMPORT FROM JDBC

Exasol provides the `IMPORT FROM ORA` command for loading data from Oracle. It is possible to create a virtual schema that uses `IMPORT FROM ORA` instead of JDBC to communicate with Oracle. Both options are indented to support the same features. `IMPORT FROM ORA` almost always offers better performance since it is implemented natively.
Exasol provides the `IMPORT FROM ORA` command for loading data from Oracle. It is possible to create a virtual schema that uses `IMPORT FROM ORA` instead of JDBC to communicate with Oracle. Both options are intended to support the same features. `IMPORT FROM ORA` almost always offers better performance since it is implemented natively.

This behavior is toggled by the Boolean `IMPORT_FROM_ORA` variable. Note that a JDBC connection to Oracle is still required to fetch metadata. In addition, a "direct" connection to the Oracle database is needed.

Expand Down Expand Up @@ -149,7 +149,7 @@ The Oracle dialect does not support all capabilities. A complete list can be fou
| FLOAT \[(p)\] || DOUBLE | |
| INTERVAL DAY \[(day\_precision)\] TO SECOND \[(fractional\_seconds\_precision)\] || VARCHAR(2000000) | |
| INTERVAL YEAR \[(year\_precision)\] TO MONTH || VARCHAR(2000000) | |
| LONG || VARCHAR(2000000) | Casted to VARCHAR to prevent a loss of precision. |
| LONG || VARCHAR(2000000) | |
| LONG RAW | × | | |
| NCLOB | × | | |
| NCHAR\[(size)\] || CHAR | |
Expand Down Expand Up @@ -192,14 +192,14 @@ In the following matrix you find combinations of JDBC driver and dialect version

| Virtual Schema Version | Oracle Version | Driver Name | Driver Version |
|------------------------|--------------------|---------------------------|----------------|
| 4.0.3 | Oracle XE 11g | ojdbc | 8 |
| 4.0.3 | Oracle XE 11g | instantclient-basic-linux | x64-12.1.0.2.0 |
| 2.0.0 | Oracle XE 11g | ojdbc | 8 |
| 2.0.0 | Oracle XE 11g | instantclient-basic-linux | x64-12.1.0.2.0 |

## Executing Disabled Integration Tests

The integration tests are disabled by default, but it is possible to execute them locally.
The reason for the tests being disabled is we can only deliver drivers where the license allows redistribution, and it's not the case with Oracle.
Therefore we cannot include the MySQL JDBC driver, so in order to execute the integration tests you need to download them manually.
Therefore we cannot include the Oracle JDBC driver, so in order to execute the integration tests you need to download them manually.

### Starting Disabled Integration Test Locally

Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.exasol</groupId>
<artifactId>oracle-virtual-schema</artifactId>
<version>2.0.0</version>
<version>2.0.1</version>
<name>Virtual Schema for Oracle</name>
<distributionManagement>
<repository>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import java.nio.file.Path;

public final class IntegrationTestConstants {
public static final String VIRTUAL_SCHEMAS_JAR_NAME_AND_VERSION = "virtual-schema-dist-9.0.1-oracle-2.0.0.jar";
public static final String VIRTUAL_SCHEMAS_JAR_NAME_AND_VERSION = "virtual-schema-dist-9.0.1-oracle-2.0.1.jar";
public static final String EXASOL_DOCKER_IMAGE_REFERENCE = "exasol/docker-db:7.0.2";
public static final Path PATH_TO_VIRTUAL_SCHEMAS_JAR = Path.of("target", VIRTUAL_SCHEMAS_JAR_NAME_AND_VERSION);
public static final String SCHEMA_EXASOL = "SCHEMA_EXASOL";
Expand Down

0 comments on commit 560397d

Please sign in to comment.