oracleから 他のrdbmsに変えようと思うと何がよいか。
- 評価
- クリップ 2
- VIEW 8,116
oracle standard が、値上がりし、保守料金が必須となった為、
導入先のお客様の金額的負担が大きくなりました。
そこで、一層の事、他のRDBMSに変えようかと社内で
検討をしています。
候補としては、SQLServer,MySQL,postgreSQL,Firebirdが
あります。
納入先の規模は様々ですが、多くて顧客の管理件数が10万件
売上データが10年規模ぐらいで、windowsで動く事が必須となります。
oracleから変更する場合、どのRDBMSにしたら良いでしょうか。
今はpostgreSQLが 有力です。
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
+12
OracleXEという選択肢もあるかもしれませんね。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+3
レコード件数以外の指標として以下も精査してみると良いでしょう。
システム移行の手間がどれほどかかるか?
クライアント側 実装切り替え (製品固有の SQL 方言の切り替え)
サーバ側 実装切り替え (PL/SQLなど製品固有機能の移植)データ移行の手間がどれほどかかるか?
データ型や定義の細かい違いがあるかどうか(項目個別の変換の有無)現場運用/保守の移行とランニングコストがどれほどかかるか?
関連ツール群の調整
人材の教育コスト
製品切り替えによって継続的に発生してしまうコスト・作業の有無
あと、RDB 毎に細かいデフォルトの挙動が違う場面もあったり、色々い運用を始めて改めて気づく落とし穴もあるかもしれません。この辺は余裕をもった検証と移行を行うしか無いと思います。
稼働しているシステム自体の設計や、運用保守に関わっている現場の開発者に馴染みやすいかどうかの方が重要ですから、移行コストと今後のトータルの運用コストを考えた上で判断すべきと考えます。
以上、ご参考になれば幸いです。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+3
去年、円安で2回値上げしたOracleは最近の円高になっても値下げする気配がありませんし、SE1も廃止されて中小企業のオラクル案件は激減しています。
方言の多いOracleから他のDBへの移行はどこでも苦労していますね。
Oracle 互換 DB
でググると少なくとも2つ見つかります。
2つとも使ったことはありませんが、費用はともかく他のDBへの移行と比べたら敷居は低そうです。
オラクル社はリバースエンジニアリングを禁止しているので、著作権の意識の低い国で作られたソフトウェアは将来、裁判沙汰になって使用禁止などのリスクがあるかもしれません。ソースコード契約をしていれば問題ないと思いますが、わたしはまともに契約しているかは知りません。
わたしは同じOracle間でのバージョンアップでもすんなりと行った事はありませんし、キャラクタセットがSJISからUNICODE(AL32UTF8)に変更になった案件ではマルチバイト文字で設計されたテーブル、列、制約、ストアド・プログラムなどが多数あることが発覚して、SJISで2バイトだったマルチバイト文字がUNICODEでは3バイトになるため、30バイトの制限で多数引っかかり、想定外の作業が増えて苦労しました。
データ中に機種依存文字や外字を使っていないか([氏名]列か[会社名]列など)もあらかじめ調査しておいた方が良いです。
移行時に苦労された内容をアップいただけると掲示版の価値が高まります。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+2
クラウド化も含めて、Windows だったらという想定です。
Oracle / MS-SQL / MySQL / Postgres 夫々方言があります。
>顧客の管理件数が10万件
何でやっても、量的な問題にはならないですよねぇ。
(FireBard は使った事が無いし、使うつもりもないので、除外)
今回の件では、MS-SQL Server か、MySQL の2択だと思います。
データベースサイズが、1~2年毎に年次処理で、10GB 未満:年次処理をして、扱っていく。
MS-SQL Server 2014 Express
MySQL Community Edition
データベースサイズが、10GB を超える可能性がある場合
MS-SQL Server 2014 Standard / Enterprise:CAL 数他、ライセンス形態に注意
MySQL Community Edition
MySQL商用ライセンス :決して安くはないのですよねぇ。
NRIのOpenStandiaが提供するMySQL最新情報:商用版
http://openstandia.jp/oss_info/mysql/license.html
開発版
MS-SQL Server 2014 Developper :単品購入可
開発環境
MSDN Professional / Enterprise
Visual Studio の購入オプション
https://www.visualstudio.com/products/how-to-buy-vs
SQL Server 2014
https://www.microsoft.com/ja-jp/server-cloud/products-SQL-Server-2014.aspx
ホーム > 技術情報 > 自習書シリーズ
https://www.microsoft.com/ja-jp/server-cloud/local/sqlserver/2014/technology/self-learning.aspx
Cloud Platform 関連コンテンツ
https://www.microsoft.com/ja-jp/server-cloud/local/documents/default.aspx?pdid=SQL&svid=all_SV&dtid=all_DT
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+2
どのRDBMSにしても、移行方法の違いや、プログラムの修正方法の違いとあると思います。
(RDBMS独自の関数があったりなかったりして)
postgresqlが有力でしたらデータを軽くして(10年分全部ではなく1年分だけとか)試してみてはいかがでしょうか。
修正の大まかな見積もりもとれますし。
修正内容が少ないならばpostgresqlでもよいですし、修正内容が多くなりそうならば
他のRDBMSも同じように試用期間内かつ制限内で試してみたほうが確実かと思います。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+1
Oracleで管理されているのはデータのみなのでしょうか?
PL/SQLなどのプログラムや、
SQLにOracle特有の関数、機能を使っているかにもよると思います。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
check解決した方法
0
皆様、ありがとうございました。
結論は、PostgreSQLへ移行することになりました。
EnterpriseDBなるものが、Oracle互換があるとの事で、
DBを扱う会社の方に来ていただき、相談しました。
・EnterpriseDBは、高すぎて候補にならない。
・ユーザにライセンス料金が高くなった旨を説明し、
納得していただくことが、良いとの提案でしたが、
私たちのユーザは、それが不可能。
と言う事で、相談した会社とサポート契約を結び、
PostgreSQLになりました。
半年ぐらいの大改修を行う運びとなりました。
補足として、他DBに関しても相談しましたが、
その情報が正しいか否か不明な為、ここでは、
内容を控えさせて頂きます。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
0
次の点も比較・検討してはいかがでしょうか。
- インスタンス/データベース/スキーマ/ユーザーの扱い
- ロックの仕組み(行ロック、ロックエスカレーション)
- シーケンスオブジェクトの有無
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.35%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
2016/04/03 05:49 編集
2016/04/06 13:39
ご提案、ありがとうございます。