README.md in embulk-output-oracle-0.6.3 vs README.md in embulk-output-oracle-0.6.4

- old
+ new

@@ -61,11 +61,14 @@ It requires Oracle JDBC driver too, but the version 12 driver doesn't work (the version 11 driver works). "oci" means direct path insert using OCI(Oracle Call Interface). It is fastest. It requires both Oracle JDBC driver and Oracle Instant Client (version 12.1.0.2.0). You must set the library loading path to the OCI library. +And it uses an optional native library (embulk-output-oracle-oci) written in cpp to improve performance furthermore. +Not only the source codes of the library, but also the built libraries for Windows(x64) and Linux(x64) have bean committed. + ### Supported types |database type|default value_type|note| |:--|:--|:--| |NUMBER|decimal|| @@ -121,9 +124,49 @@ ``` $ ./gradlew gem ``` +#### Build environment for native library + +For Windows (x64) + +(1) Install Microsoft Visual Studio (only 2010 is tested). + +(2) Install Oracle Instant Client SDK 11.1.0.6.0 for Microsoft Windows (x64). + +(3) Set environment variables. + +* OCI\_SDK_PATH ("sdk" directory of Oracle Instant Client) + +(4) Open src/main/cpp/win/embulk-output-oracle-oci.sln by Visual Studio and build. + +For Windows command line, the following are needed in addition to (1) - (4). + +(5) Set environment variables. + +* MSVC_PATH (ex. C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC) +* MSSDK_PATH (ex. C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A) + +(6) Execute src/main/cpp/win/build.bat . + + +For Linux (x64) (only Ubuntu Server 14.04 is tested) + +(1) Install gcc and g++ . + +(2) Install Oracle Instant Client Basic and SDK 11.1.0.6.0 for Linux (x64). + +(3) Create symbolic links of OCI libraries. + + ln -s libocci.so.11.1 libocci.so + ln -s libclntsh.so.11.1 libclntsh.so + +(4) Set environment variables. + +* OCI_PATH (the directory of Oracle Instant Client Basic and the parent of the "sdk" directory) + +(5) Execute src/main/cpp/linux/build.sh . *** <img src="https://www.yourkit.com/images/yklogo.png" alt="YourKit"/> is used to improve performance of embulk-output-oracle. YourKit supports open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of <a href="https://www.yourkit.com/java/profiler/index.jsp">YourKit Java Profiler</a> and <a href="https://www.yourkit.com/.net/profiler/index.jsp">YourKit .NET Profiler</a>, innovative and intelligent tools for profiling Java and .NET applications.