質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Q&A

解決済

2回答

844閲覧

現行システムから新システムへのデータコンバート

yamaguti

総合スコア185

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

0グッド

1クリップ

投稿2017/09/06 11:20

お世話になっております。

皆さんが仕事等でデータ移行をする際には、どのようなツール等を使っているのでしょうか。

私はPL_SQLを使い移行を行っていますが、複雑な移行をする場合などは
時間がまる1日以上かかってしまう場合があります。

また移行PGを作るじかんを考えると、ものすごい工数になってしまいます
なにか別の方法等があれば教えて頂ければ幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

移行元と移行先のデータ形式が何かによって使用するツールは変わります。

移行先については殆どがデータベースなので、データインポート以降はそのDBMSが提供するツールとSQLのスクリプトですね。

それ以外でよく使うのは、以下にあげたものくらいです。
・テキストエディタ
サクラエディタを良く使ってます。
スクリプト系のプログラミングをする場合や、データの加工で使用します。
(かなり大きいサイズのデータでも開くことができるのと、矩形処理ができるのでデータ整形などに)
・エクセル
データ加工や、移行データの分析資料などで使用します。
工夫すれば、DBツールで取得したデータを張り付けて見栄えを整えるくらいで済みます。
・Access
色々重宝します。
コード変換で使ったり、クロス集計が簡単にできるので、分析資料のデータ加工などに。
・vbs、bat、shellなどのスクリプト系

移行先に合わせたデータ編集は、移行元データを加工せずにそのレイアウトのワークテーブルを作成し、移行用のストアドを作成して処理します。

移行時の処理は再利用や再実行を意識して設計すると、移行時のイレギュラーにも流用が効き工数を掛けずにすみます。
また、移行先のデータを加工する事に比重を置いた設計をしておくと、稼働後のデータ保守にも流用しやすくなります。

それから、処理時間もかなり意識してチューニングを行います。
「移行だし、一度きりだからいいや」みたいなことでやっていると、エラーで再実行が必要になったり、追加データが発生した場合などに、長時間付き合わされることに。
なにより、検証などに掛かる時間を短縮できるのが一番ですけど。

移行は大変だと思います。ここには書ききれないことが山ほどあります。
でも、超える山が大きい程やり遂げた時の達成感があります。(自己満足の類かもしれませんが)

投稿2017/09/06 14:10

編集2017/09/06 16:02
sazi

総合スコア25173

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

SQLには得意な処理と苦手な処理がありますので、
その辺りも意識できると移行時間の短縮に繋がるかと思います。

oracle使って丸一日以上かかるということは、
数億レコード以上の移行が発生しているようなイメージですが、
認識はあっているでしょうか。

insertの時に自己参照しながらinsertすると
件数が増えると共に時間が非常にかかります。
1万件、10万件、50万件、、、と増やしていったときに
時間のかかり方が件数に比例しない場合は疑ったほうがいいです。
別のtmpテーブルに一次データを格納して正しくいindexを利用することで
比較的短時間に収まったりします。

あと全く別の方法ということで、
件数にもよりますが、
新システムの入力ファイル形式のファイルを
現行システムから出力して、
そのまま新システムで取り込むと移行完了ということも可能なケースも稀にあります。
そうすると新システムにあったデータが入っているかチェックも行う必要がないので、
工数はも短縮されるかと。

投稿2017/09/07 06:19

szk.

総合スコア1400

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yamaguti

2017/09/16 16:46

ご回答ありがとうございます。 参考にさせていただきます。 数億レコードでまた複数の移行元テーブルを結合して、移行処理を行っております。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問