Help us understand the problem. What is going on with this article?

最近のJDKにはJava DBが含まれてなくて半日潰した件(Autonomous Data Warehouse)

More than 1 year has passed since last update.

休日ですが、せこせこと検証作業をしておりました。

最近、中の人としての担当は外れたのですがOracle Autonomous Data Warehouse(以下Autonomous DW)を引き続きいじってます。

↓の動画、おすすめです。

Oracle Autonomous Datawarehouse Cloud - Machine Learning with Oracle - Forecasting example

This video is also a good way to learn how to work with machine learning in Autonomous Datawarehouse Cloud in general. The principles you learn here can be applied to many more machine learning use cases. We'll also cover any required ML theory, so you don't require any previous knowledge on this.

After watching this video you will have the basic ingredients to apply ML to your own business cases with Autonomous Datawarehouse Cloud.

さすがにOracleの主力製品の中でも一押しのものなので、どんどん改善が進んでいてスバラシイと思います。これ使っときゃ間違いありません。

Data Sync インスコしたのに動かない!

そんななかで、定期実行できるデータ投入部分で簡単な方法が無いかなと悩んでいたのですが、Autonomous DWのMachine Learningのデモ動画で使ってる、Oracle Analytics Data Syncというのが結構いけてるETLのような気がしたので、これを動かそうとしていました。

WindowsとLinuxで動くと書いてあったので、普段使ってるMacは出番なしです。

そしてインストール自体はインストーラーで簡単だったのですが、、、、エラーを吐いて起動してくれません。

DataSyncError.PNG

org/apache/derby/drda/NetworkServerControl にあるべきJava DB Serverの起動に失敗したと書いてあります。周りの強そうな人たちにSlackで聞いたのですが、あいにく日曜でした。。。

JAVA_HOMEを設定するのも、Windows 10だとなれてないので非常に面倒です。そんなこんなで数時間。どうやら、JDKはちゃんと設定されてるけれど、Java DBが含まれていないようです。

ADWにデータ投入するのにOAC DataSyncを試しているのですが、起動時にjava DBの起動でコケます。
最近のJDKにはJava DBが含まれてないんでしょうか? 
jdk8_191,192にはJAVA_HOME/db/のディレクトリがそもそもありません。

Java DBって何?

https://www.oracle.com/technetwork/jp/java/javadb/overview/index.html
によれば

Java DBは、オープンソースのApache Derbyデータベースをオラクルがサポートしたディストリビューションです。
JDBC APIおよびJava EE APIにより標準のANSI/ISO SQLをサポートします。Java DBは、JDKに含まれています。

JDKに含まれてるらしいのですが、実際にはどう見てもなさげです。仕方ないからapache derbyの配布元に行って インストールを試みます。

斜め上の結論にびっくり

ネットを探してたら、サポートページの奥深くでようやく見つけました。

要約すると、Apache Derbyのオリジナルサイトから db-derby-<release>-bin.zip を落としてきて、JAVA_HOMEの設定をしたJDKのフォルダ内にdbという名のフォルダ名に展開しろということでした。

SOLUTION
Download and install the latest Apache Derby:

Go to Apache Derby: Downloads
Download the latest available release for Java 8.  At the time of writing of this document it is 10.14.2.0 (db-derby-10.14.2.0-bin.zip).
Unzip the file to db-derby-<release>-bin and rename the directory to 'db'
Move the 'db' directory to JAVA_HOME (you will need Administrator access)
Start Data Sync

つまり、最近のJDKからは、Apache Derbyが取り除かれたようです。

この設定を入れたら、何事もないようにData Syncが起動しました。

つづく

damarinz
時々会社には属していますが、このアカウントは個人開発者として執筆しています。記事のすべてにおいて会社の公式見解ではありません。 植物生態学研究者>通信機器メーカーIT>VPNスタートアップ>アドテクSRE>マネージャー>ブリッジエンジニア>データベース製品担当>分析PF製品のテクニカルコンサルタント
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした