オラクルのインメモリーDBが話題になっている。
しかし画期的というよりメモリー空間が大きく取れるから、力任せにできたことではないかという疑問は拭えない。
で、専門家にユニケージ開発手法と比べてどうなのか簡単な資料を作ってもらった。
Unicage Vs. Oracle in-memory DB
Oracle in memory DB: “Times Ten in-memory Database”
特長:
-アプリケーションを変更することなく、プラグインで適用可能
-データを一般的なデータフォーマットであるRow formatのみならず、Column format で保存可能
動作:
既存のDBをメモリ上にRow formatとColumn formatで2部にコピーする。
Row formatがOLTP ( Online Transaction Processing)に用いられ、Column formatがAnalyticsのアプリケーションに用いられる。
メモリ上にある2つのDBが常に同期をとる。
価格
Processor License (Enterprise License) : US$ 23,000/one time.
Software Update License & Support : US$ 5,060
(OracleのHPよりhttp://www.oracle.com/us/corporate/pricing/technology-price-list-070617.pdf)
Unicage
特長:
-DBなど中間ソフトウエアは必要ない
-OSのファイルシステムファイルをDBの変わりに用いる
-アプリケーションのデータをテキスト形式でファイルに保管する
-ファイルの同期、更新は必要としない
動作:
データをメモリ上に読み込み、一連の処理した後にテキスト形式でファイルに保存する。
一時的にデータを保存したい場合は、メモリ上のファイルシステム(SHM: Shared Memory)に保存することが可能である。
データは、行単位でも列単位でも読み込み可能である。(行を列に変換)
価格
コマンドライセンスのみ:1 CPU US$ 150 per month/ US$ 1800 per year(日本の価格)
<比較>
演算処理
Unicageは、データをメモリ上に読み込み一連バッチ処理を行う。バッチ処理中、処理後は、データの更新、同期をとらないため、Oracle in-memory DBにおける処理より速い場合がある。また、データがキャッシュにある場合にさらに高速に演算可能である。一時的なファイルは、メモリ上のシェアードメモリファイル(Shared Memory File)に保存されるため、次の処理の入力が速くなる。一方、Oracle in-memory DBは、データをメモリ上に2部コピーするため、大量なデータがある場合に大きなメモリを必要とする。また、一つのデータに更新があれば、DB全体の更新と2つのDBの同期を行うため、その分だけ処理時間が長くなる。
質問は受けられませんので悪しからず。
しかし画期的というよりメモリー空間が大きく取れるから、力任せにできたことではないかという疑問は拭えない。
で、専門家にユニケージ開発手法と比べてどうなのか簡単な資料を作ってもらった。
Unicage Vs. Oracle in-memory DB
Oracle in memory DB: “Times Ten in-memory Database”
特長:
-アプリケーションを変更することなく、プラグインで適用可能
-データを一般的なデータフォーマットであるRow formatのみならず、Column format で保存可能
動作:
既存のDBをメモリ上にRow formatとColumn formatで2部にコピーする。
Row formatがOLTP ( Online Transaction Processing)に用いられ、Column formatがAnalyticsのアプリケーションに用いられる。
メモリ上にある2つのDBが常に同期をとる。
価格
Processor License (Enterprise License) : US$ 23,000/one time.
Software Update License & Support : US$ 5,060
(OracleのHPよりhttp://www.oracle.com/us/corporate/pricing/technology-price-list-070617.pdf)
Unicage
特長:
-DBなど中間ソフトウエアは必要ない
-OSのファイルシステムファイルをDBの変わりに用いる
-アプリケーションのデータをテキスト形式でファイルに保管する
-ファイルの同期、更新は必要としない
動作:
データをメモリ上に読み込み、一連の処理した後にテキスト形式でファイルに保存する。
一時的にデータを保存したい場合は、メモリ上のファイルシステム(SHM: Shared Memory)に保存することが可能である。
データは、行単位でも列単位でも読み込み可能である。(行を列に変換)
価格
コマンドライセンスのみ:1 CPU US$ 150 per month/ US$ 1800 per year(日本の価格)
<比較>
演算処理
Unicageは、データをメモリ上に読み込み一連バッチ処理を行う。バッチ処理中、処理後は、データの更新、同期をとらないため、Oracle in-memory DBにおける処理より速い場合がある。また、データがキャッシュにある場合にさらに高速に演算可能である。一時的なファイルは、メモリ上のシェアードメモリファイル(Shared Memory File)に保存されるため、次の処理の入力が速くなる。一方、Oracle in-memory DBは、データをメモリ上に2部コピーするため、大量なデータがある場合に大きなメモリを必要とする。また、一つのデータに更新があれば、DB全体の更新と2つのDBの同期を行うため、その分だけ処理時間が長くなる。
質問は受けられませんので悪しからず。
※コメント投稿者のブログIDはブログ作成者のみに通知されます