SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Oracle -> SQL Serverシステム移行の勘所
~Oracle開発経験者が戸惑うポイント~
株式会社インサイトテクノロジー
コンサルティング事業部
中村 範夫
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
2
自己紹介
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• 中村範夫(なかむらのりお)
• (株)インサイトテクノロジー コンサルティング事業部所属
• 大阪で10年以上システム開発に従事した後に、現職に
• よく扱うDBは、Oracle、SQL Server、MySQL
• 最近はOracleのシステムをSQL Serverで再構築という案件
に従事することが多いです
3
Agenda
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
1. システム移行の概要
2. Oracle開発経験者が意識して欲しい違い
3. よくある開発トラブルシューティング
4. その他開発でよく聞かれること
5. まとめ
4
システム移行概要
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
1. データベースオブジェクトの移行(SSMA)
2. データの移行(SSMA)
3. アプリケーションの移行
• アプリケーションのビジネスロジック部分を自動変換(SSMA)
• SSMAで変換できない部分を手動で変換
• 一般的なシステム移行の流れ(Webアプリケーションの場合)
• SSMAが大半を担う
5
システム移行概要
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• SQL Server Migration Assistant(SSMA)とは?
SSMA は、Oracle データベースから SQL Server へのアプリケーション移行の自動化に役立つツール セットです。SSMA を利用することで、データベース
の変換を迅速、簡単、および正確に行うことが可能になり、SQL Server への移行に関する時間、コスト、およびリスクが大幅に軽減されます。
• SSMAを利用するメリット
SSMA を利用することで、下記の項目のようなデータベースの移行に必要な作業のほとんどを自動化することが可能です。
・データベースのアセスメント
・スキーマとデータの移行
・ビジネス ロジックの変換
・移行の確認
http://msdn.microsoft.com/ja-jp/sqlserver/gg639007.aspx より
• どれだけ自動で移行でき、どれだけ手動での移行が必要かを、見積もるためにも、
まずはSSMAで移行検証を
• 一般的なシステムではおよそ80%~90%以上が自動で移行可能で、手動で変換が必要な
大半はPL/SQLのストアドプログラム
6
システム移行概要
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• PL/SQLの手動変換をいかに効率的に行うかが鍵
• SSMAで変換できなかった部分をT-SQLで手動で変換するよりも
PL/SQL側で変換できる形に修正する方が効率的なことが多々ある
【参考】Oracle から SQL Server 2008 への移行ガイド
http://download.microsoft.com/download/3/4/7/34710CC0-5B7D-499B-B39A-50ED31F6A500/MigrateOracletoSQLServer2008.docx
7
Oracle開発経験者が意識して欲しい違い
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• デフォルトのトランザクションの分離レベルはどちらも、
「Read committed」だが Oracle には読み取り一貫性がある
• PL/SQLとT-SQLの違い
– PL/SQLは手続き型言語としての歴史が古く完成度が高い
– PL/SQLはカーソルの構文、コレクション型が豊富
– T-SQLは例外処理として 2012以降 THROWが使用可能となった
• その他インデックスが使用できるSQLの条件等はだいたい同じ
• Oracleのパラレルクエリと同様SQL Serverの並列クエリも強力
8
よくある開発トラブルシューティング(1)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• [問題]デッドロックが多発する
– オンライン画面(Web)のシステムテストでデッドロックが多発する
• [原因]テーブルスキャンによるロック待ちにより
デッドロックが発生
• [対策]条件列に対してインデックスを付与、又は
「Read Committed Snapshot」分離レベルを採用
9
よくある開発トラブルシューティング(1)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• [解説]
t1テーブル
a b
1 AA
2 BB
Oracle(PL/SQL)でよくあるソースコード
SELECT * FROM t1 WHERE a = 2 FOR UPDATE
UPDATE t1 SET b = ‘BBB' WHERE a = 2
SQL Server用に変換
SELECT * FROM t1 WITH (ROWLOCK, UPDLOCK) WHERE a = 2
UPDATE t1 SET b = ‘BBB' WHERE a = 2
【ポイント】
更新条件のa列には主キー、
インデックスなし
10
よくある開発トラブルシューティング(1)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• [解説]
トランザクション [1] a b トランザクション [2]
SELECT * FROM t1 WITH (ROWLOCK, UPDLOCK)
WHERE a = 2
1 AA
SELECT * FROM t1 WITH (ROWLOCK, UPDLOCK)
WHERE a = 1
2 BB
UPDATE t1 SET b = 'BBB' WHERE a = 2 UPDATE t1 SET b = 'AAA' WHERE a = 1
1)先頭から探す
2)1件目を発見し、排他ロックを獲得
3)他にもないか探す
4)2行目で [1] の排他ロックにより待ちが発生
1)先頭から探す
2)1行目で2の排他ロックを発見
↓
デッドロック検知!!
① ②
③
11
よくある開発トラブルシューティング(1)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
DEMO:
テーブルスキャンによるロック待ちによりデッドロックが発生
12
よくある開発トラブルシューティング(2)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• [問題]オンライン画面(Java Webアプリ)が遅い
– 自由検索画面の検索処理がOracleに比べてかなり遅い
• [原因]Prepared Statement の文字列パラメータが Unicode
で送信されたため VARCHAR 列に対するインデックスが使えない
sendStringParametersAsUnicode = false
• [対策]接続時に以下の設定を追記
13
よくある開発トラブルシューティング(2)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
DEMO:
暗黙の型変換によりインデックスが使えない例
14
よくある開発トラブルシューティング(3)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• [問題]バッチ処理の性能が思った程でない
• [対策]定数取得の処理をアプリケーション側で行うことで
SQLが並列クエリになるよう修正
• [原因]SQL で定数取得のユーザー定義関数を使用しているため
並列クエリで処理されていない
15
よくある開発トラブルシューティング(3)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• [解説]
並列クエリ処理(SQL Serverオンラインブックより)
http://technet.microsoft.com/ja-jp/library/ms178065(v=sql.105).aspx
16
よくある開発トラブルシューティング(3)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• [解説]EMP表を750万件に増幅し検証
並列クエリにならないパターン
SELECT COUNT(*)
FROM EMP2
WHERE JOB = dbo.USER_FUNC('SALESMAN')
並列クエリになるパターン
SELECT COUNT(*)
FROM EMP2
WHERE JOB = 'SALESMAN'
組み込み関数(GETDATE()やCONVERT等)は問題なく並列クエリになる
17
よくある開発トラブルシューティング(3)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
DEMO:
並列クエリになるパターンとならないパターン例
18
その他よく聞かれること (1)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• ファイル入出力はどうすればいいの?
– OracleにはSQL*Loader、UTL_FILEパッケージの機能がある
• SQL Server にも bcpユーティリティ、BULK INSERT、
OPENROWSETによる「INSERT~SELECT」がある
– ファイル入力では上記いずれの方法でも利用できる
– ファイル出力ではbcp
– OPENROWSETは非常に高性能で利用範囲が広い
19
その他よく聞かれること(2)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• bcpの出力が入力に比べて遅いけど?(CSVファイル)
大規模テーブルをCSVファイルに出力する場合、
bcp ユーティリティでは、カンマ付与をSQLで
記述する queryout 方式の方が高速
bcp Test.dbo.EMP out EMP.csv -c -t, -T
↓
bcp "SELECT empno + ',' + ename + ',' ・・・FROM Test.dbo.EMP" queryout EMP.csv -c -T
20
その他よく聞かれること(2)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• 2,000万件 約10GBのテーブルに対して処理時間を比較
0
20
40
60
80
100
120
table out 方式 queryout方式
処理時間を相対比較
(table out方式を100とした場合)
21
その他よく聞かれること(3)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• Oracleの階層問合せ(connect by)は使えないの?
• 標準SQLの共通テーブル式(CTE)を使った再帰クエリが使える
22
その他よく聞かれること(3)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• 共通テーブル式サンプル(emp表を階層問合せする有名なやつ)
23
その他よく聞かれること(4)
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• とりあえずサーバーの設定はどうすればいいの?
• 最低限やっておくべきSQL Serverの設定
– メモリの適切な割当てとページロック設定
– 並列処理の最大限度(MAXDOP)の設定
-> OLTPではCPUコア数の1/4 (目安)
– tempdb の ファイル分割 -> CPUコア数分 (目安)
【参考】熊澤さんの検証資料
http://download.microsoft.com/download/F/1/0/F10BC023-9396-4D67-BAC9-7C43AE954BF4/Intel_WP_Xeon7500_SQL2008R2.pdf
24
まとめ
Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
• SSMAを利用してシステム移行コストを見積もり
– システム移行コストは PL/SQL の変換が鍵
– PL/SQL側を一括修正することで変換コスト削減に貢献
• アーキテクチャの違いを理解した上での方式設計が重要
– トランザクションの分離レベル・ロック制御
– JDBC接続では [sendStringParametersAsUnicode] の設定に注意
– SQL Serverの並列クエリは強力なので上手に利用
25Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
無断転載を禁ず
この文書はあくまでも参考資料であり、掲載されている情報は予告なしに変更されることがあります。
株式会社インサイトテクノロジーは本書の内容に関していかなる保証もしません。また、本書の内容に関連し
たいかなる損害についても責任を負いかねます。
本書で使用している製品やサービス名の名称は、各社の商標または登録商標です。

Contenu connexe

Tendances

待ち事象から考える、Sql server の改善ポイント
待ち事象から考える、Sql server の改善ポイント待ち事象から考える、Sql server の改善ポイント
待ち事象から考える、Sql server の改善ポイントMasayuki Ozawa
 
Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Masayuki Ozawa
 
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門Daiyu Hatakeyama
 
nioで作ったBufferedWriterに変えたら例外になった
nioで作ったBufferedWriterに変えたら例外になったnioで作ったBufferedWriterに変えたら例外になった
nioで作ったBufferedWriterに変えたら例外になったchibochibo
 
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...Amazon Web Services Japan
 
Demystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceDemystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceToru Makabe
 
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方Shohei Koyama
 
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/FallZabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/FallAtsushi Tanaka
 
COD2012 九州会場 Active Directory 障害対策
COD2012 九州会場 Active Directory 障害対策COD2012 九州会場 Active Directory 障害対策
COD2012 九州会場 Active Directory 障害対策wintechq
 
JPAのキャッシュを使ったアプリケーション高速化手法
JPAのキャッシュを使ったアプリケーション高速化手法JPAのキャッシュを使ったアプリケーション高速化手法
JPAのキャッシュを使ったアプリケーション高速化手法Chihiro Ito
 
Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果Masayuki Ozawa
 
Azure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロAzure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロKazuyuki Miyake
 
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座Minoru Naito
 
20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap
20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap
20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recapOshitari_kochi
 
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)オラクルエンジニア通信
 
Data Factory V2 新機能徹底活用入門
Data Factory V2 新機能徹底活用入門Data Factory V2 新機能徹底活用入門
Data Factory V2 新機能徹底活用入門Keisuke Fujikawa
 
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Teruchika Yamada
 
第15回JSSUG「Azure SQL Database 超入門」
第15回JSSUG「Azure SQL Database 超入門」第15回JSSUG「Azure SQL Database 超入門」
第15回JSSUG「Azure SQL Database 超入門」裕之 木下
 
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてAzure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてShinya Yamaguchi
 

Tendances (20)

待ち事象から考える、Sql server の改善ポイント
待ち事象から考える、Sql server の改善ポイント待ち事象から考える、Sql server の改善ポイント
待ち事象から考える、Sql server の改善ポイント
 
Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎
 
Oracle Data Guard による高可用性
Oracle Data Guard による高可用性Oracle Data Guard による高可用性
Oracle Data Guard による高可用性
 
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
 
nioで作ったBufferedWriterに変えたら例外になった
nioで作ったBufferedWriterに変えたら例外になったnioで作ったBufferedWriterに変えたら例外になった
nioで作ったBufferedWriterに変えたら例外になった
 
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
 
Demystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes ServiceDemystifying Identities for Azure Kubernetes Service
Demystifying Identities for Azure Kubernetes Service
 
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
 
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/FallZabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
 
COD2012 九州会場 Active Directory 障害対策
COD2012 九州会場 Active Directory 障害対策COD2012 九州会場 Active Directory 障害対策
COD2012 九州会場 Active Directory 障害対策
 
JPAのキャッシュを使ったアプリケーション高速化手法
JPAのキャッシュを使ったアプリケーション高速化手法JPAのキャッシュを使ったアプリケーション高速化手法
JPAのキャッシュを使ったアプリケーション高速化手法
 
Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果
 
Azure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロAzure Cosmos DB のキホンと使いドコロ
Azure Cosmos DB のキホンと使いドコロ
 
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
一歩先行く Azure Computing シリーズ(全3回) 第2回 Azure VM どれを選ぶの? Azure VM 集中講座
 
20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap
20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap
20200809_2020年から始める Azure Cosmos DB 入門 with Azure Synapse Link recap
 
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (Oracle Cloudウェビナーシリーズ: 2021年11月30日)
 
Data Factory V2 新機能徹底活用入門
Data Factory V2 新機能徹底活用入門Data Factory V2 新機能徹底活用入門
Data Factory V2 新機能徹底活用入門
 
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
 
第15回JSSUG「Azure SQL Database 超入門」
第15回JSSUG「Azure SQL Database 超入門」第15回JSSUG「Azure SQL Database 超入門」
第15回JSSUG「Azure SQL Database 超入門」
 
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてAzure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
 

En vedette

45分で理解する SQL Serverでできることできないこと
45分で理解する SQL Serverでできることできないこと45分で理解する SQL Serverでできることできないこと
45分で理解する SQL ServerでできることできないことInsight Technology, Inc.
 
[INSIGHT OUT 2011] C12 50分で理解する SQL Serverでできることできないこと(uchiyama)
[INSIGHT OUT 2011] C12 50分で理解する SQL Serverでできることできないこと(uchiyama)[INSIGHT OUT 2011] C12 50分で理解する SQL Serverでできることできないこと(uchiyama)
[INSIGHT OUT 2011] C12 50分で理解する SQL Serverでできることできないこと(uchiyama)Insight Technology, Inc.
 
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチSql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチMasayuki Ozawa
 
Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版elanlilac
 
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓貴仁 大和屋
 
オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用elanlilac
 
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
商用DBからPostgreSQLへ まず知っておいて欲しいまとめKosuke Kida
 
Webシステムプログラミング設計書2015
Webシステムプログラミング設計書2015Webシステムプログラミング設計書2015
Webシステムプログラミング設計書2015義広 河野
 
はじめてのSQLチューニング(oracle)
はじめてのSQLチューニング(oracle)はじめてのSQLチューニング(oracle)
はじめてのSQLチューニング(oracle)kounan13
 
110903 jazug lt_tanaka_pub
110903 jazug lt_tanaka_pub110903 jazug lt_tanaka_pub
110903 jazug lt_tanaka_pubTakayoshi Tanaka
 
Unicode-v11-5
Unicode-v11-5Unicode-v11-5
Unicode-v11-5kmiyako
 
Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Masayuki Ozawa
 
AWSを使用したインフラ構築~遭難防止アプリにおけるインフラ想定~
AWSを使用したインフラ構築~遭難防止アプリにおけるインフラ想定~AWSを使用したインフラ構築~遭難防止アプリにおけるインフラ想定~
AWSを使用したインフラ構築~遭難防止アプリにおけるインフラ想定~Yuto Kudo
 
設計書からの卒業
設計書からの卒業設計書からの卒業
設計書からの卒業Fumiyasu Sumiya
 
Amazon webservice(aws)と他社サーバのコストパフォーマンス比較
Amazon webservice(aws)と他社サーバのコストパフォーマンス比較Amazon webservice(aws)と他社サーバのコストパフォーマンス比較
Amazon webservice(aws)と他社サーバのコストパフォーマンス比較株式会社雲屋ネットワーク
 
[OSC2016沖縄]商用DBからPostgreSQLへの移行入門
[OSC2016沖縄]商用DBからPostgreSQLへの移行入門[OSC2016沖縄]商用DBからPostgreSQLへの移行入門
[OSC2016沖縄]商用DBからPostgreSQLへの移行入門Kosuke Kida
 
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~Ryuta Otaki
 
SQL Server for SharePoint 2013
SQL Server for SharePoint 2013SQL Server for SharePoint 2013
SQL Server for SharePoint 2013Mayumi Mitaki
 

En vedette (20)

45分で理解する SQL Serverでできることできないこと
45分で理解する SQL Serverでできることできないこと45分で理解する SQL Serverでできることできないこと
45分で理解する SQL Serverでできることできないこと
 
[INSIGHT OUT 2011] C12 50分で理解する SQL Serverでできることできないこと(uchiyama)
[INSIGHT OUT 2011] C12 50分で理解する SQL Serverでできることできないこと(uchiyama)[INSIGHT OUT 2011] C12 50分で理解する SQL Serverでできることできないこと(uchiyama)
[INSIGHT OUT 2011] C12 50分で理解する SQL Serverでできることできないこと(uchiyama)
 
SQL Server 入門
SQL Server 入門SQL Server 入門
SQL Server 入門
 
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチSql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
 
Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版
 
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓SQL Server運用実践 - 3年間80台の運用経験から20の教訓
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
 
オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用
 
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
 
Webシステムプログラミング設計書2015
Webシステムプログラミング設計書2015Webシステムプログラミング設計書2015
Webシステムプログラミング設計書2015
 
はじめてのSQLチューニング(oracle)
はじめてのSQLチューニング(oracle)はじめてのSQLチューニング(oracle)
はじめてのSQLチューニング(oracle)
 
110903 jazug lt_tanaka_pub
110903 jazug lt_tanaka_pub110903 jazug lt_tanaka_pub
110903 jazug lt_tanaka_pub
 
Unicode-v11-5
Unicode-v11-5Unicode-v11-5
Unicode-v11-5
 
FukuokaCloud_Azure
FukuokaCloud_AzureFukuokaCloud_Azure
FukuokaCloud_Azure
 
Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)
 
AWSを使用したインフラ構築~遭難防止アプリにおけるインフラ想定~
AWSを使用したインフラ構築~遭難防止アプリにおけるインフラ想定~AWSを使用したインフラ構築~遭難防止アプリにおけるインフラ想定~
AWSを使用したインフラ構築~遭難防止アプリにおけるインフラ想定~
 
設計書からの卒業
設計書からの卒業設計書からの卒業
設計書からの卒業
 
Amazon webservice(aws)と他社サーバのコストパフォーマンス比較
Amazon webservice(aws)と他社サーバのコストパフォーマンス比較Amazon webservice(aws)と他社サーバのコストパフォーマンス比較
Amazon webservice(aws)と他社サーバのコストパフォーマンス比較
 
[OSC2016沖縄]商用DBからPostgreSQLへの移行入門
[OSC2016沖縄]商用DBからPostgreSQLへの移行入門[OSC2016沖縄]商用DBからPostgreSQLへの移行入門
[OSC2016沖縄]商用DBからPostgreSQLへの移行入門
 
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
 
SQL Server for SharePoint 2013
SQL Server for SharePoint 2013SQL Server for SharePoint 2013
SQL Server for SharePoint 2013
 

Similaire à [B24] Oracle から SQL Server システム移行の勘所 by Norio Nakamura

MySQL Technology Cafe #12 待望の!MDS HA先行レビュー
MySQL Technology Cafe #12 待望の!MDS HA先行レビューMySQL Technology Cafe #12 待望の!MDS HA先行レビュー
MySQL Technology Cafe #12 待望の!MDS HA先行レビューオラクルエンジニア通信
 
[A15] SQL Server Trouble Shooting Tips from Support Team by Takashi Honma
[A15] SQL Server Trouble Shooting Tips from Support Team by Takashi Honma[A15] SQL Server Trouble Shooting Tips from Support Team by Takashi Honma
[A15] SQL Server Trouble Shooting Tips from Support Team by Takashi HonmaInsight Technology, Inc.
 
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策Atsuo Yamasaki
 
MySQLインストールのお作法
MySQLインストールのお作法MySQLインストールのお作法
MySQLインストールのお作法Meiji Kimura
 
IaC化の3つのポイント
IaC化の3つのポイントIaC化の3つのポイント
IaC化の3つのポイント山下 達也
 
Java EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jpJava EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jpNorito Agetsuma
 
天灾还是人祸? Oracle连环夺命未遂记
天灾还是人祸? Oracle连环夺命未遂记天灾还是人祸? Oracle连环夺命未遂记
天灾还是人祸? Oracle连环夺命未遂记Leo Zhou
 
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門泰 増田
 
45分で作る Java EE 8 システム
45分で作る Java EE 8 システム45分で作る Java EE 8 システム
45分で作る Java EE 8 システムHirofumi Iwasaki
 
お悩み解決! データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
お悩み解決!データベースの仮想化統合(DBの仮想化統合には気をつけろ!)お悩み解決!データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
お悩み解決! データベースの仮想化統合(DBの仮想化統合には気をつけろ!)オラクルエンジニア通信
 
What is doobie? - database access for scala -
What is doobie? - database access for scala -What is doobie? - database access for scala -
What is doobie? - database access for scala -chibochibo
 
DB思い出話いろいろ(仮)
DB思い出話いろいろ(仮)DB思い出話いろいろ(仮)
DB思い出話いろいろ(仮)Takahiro Kitayama
 
[Node-RED] ファンクションノードのデバッグどうしてる?
[Node-RED] ファンクションノードのデバッグどうしてる?[Node-RED] ファンクションノードのデバッグどうしてる?
[Node-RED] ファンクションノードのデバッグどうしてる?Makoto SAKAI
 

Similaire à [B24] Oracle から SQL Server システム移行の勘所 by Norio Nakamura (20)

ヤフーを支えるフラッシュストレージ
ヤフーを支えるフラッシュストレージヤフーを支えるフラッシュストレージ
ヤフーを支えるフラッシュストレージ
 
MySQL Technology Cafe #12 待望の!MDS HA先行レビュー
MySQL Technology Cafe #12 待望の!MDS HA先行レビューMySQL Technology Cafe #12 待望の!MDS HA先行レビュー
MySQL Technology Cafe #12 待望の!MDS HA先行レビュー
 
Oracle設計
Oracle設計Oracle設計
Oracle設計
 
[A15] SQL Server Trouble Shooting Tips from Support Team by Takashi Honma
[A15] SQL Server Trouble Shooting Tips from Support Team by Takashi Honma[A15] SQL Server Trouble Shooting Tips from Support Team by Takashi Honma
[A15] SQL Server Trouble Shooting Tips from Support Team by Takashi Honma
 
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
 
Play jjug2012spring
Play jjug2012springPlay jjug2012spring
Play jjug2012spring
 
Play ja 3_update
Play ja 3_updatePlay ja 3_update
Play ja 3_update
 
MySQLインストールのお作法
MySQLインストールのお作法MySQLインストールのお作法
MySQLインストールのお作法
 
第39回「Windows Server 2003 EOSに備えよう -SQL Serverはどうする?-」(2014/12/18 on しすなま!)
第39回「Windows Server 2003 EOSに備えよう -SQL Serverはどうする?-」(2014/12/18 on しすなま!)第39回「Windows Server 2003 EOSに備えよう -SQL Serverはどうする?-」(2014/12/18 on しすなま!)
第39回「Windows Server 2003 EOSに備えよう -SQL Serverはどうする?-」(2014/12/18 on しすなま!)
 
IaC化の3つのポイント
IaC化の3つのポイントIaC化の3つのポイント
IaC化の3つのポイント
 
Java EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jpJava EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jp
 
天灾还是人祸? Oracle连环夺命未遂记
天灾还是人祸? Oracle连环夺命未遂记天灾还是人祸? Oracle连环夺命未遂记
天灾还是人祸? Oracle连环夺命未遂记
 
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
 
45分で作る Java EE 8 システム
45分で作る Java EE 8 システム45分で作る Java EE 8 システム
45分で作る Java EE 8 システム
 
Oracle Spatial 概要説明資料
Oracle Spatial 概要説明資料Oracle Spatial 概要説明資料
Oracle Spatial 概要説明資料
 
お悩み解決! データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
お悩み解決!データベースの仮想化統合(DBの仮想化統合には気をつけろ!)お悩み解決!データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
お悩み解決! データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
 
What is doobie? - database access for scala -
What is doobie? - database access for scala -What is doobie? - database access for scala -
What is doobie? - database access for scala -
 
DB思い出話いろいろ(仮)
DB思い出話いろいろ(仮)DB思い出話いろいろ(仮)
DB思い出話いろいろ(仮)
 
[Node-RED] ファンクションノードのデバッグどうしてる?
[Node-RED] ファンクションノードのデバッグどうしてる?[Node-RED] ファンクションノードのデバッグどうしてる?
[Node-RED] ファンクションノードのデバッグどうしてる?
 
Sr econt
Sr econtSr econt
Sr econt
 

Plus de Insight Technology, Inc.

グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?Insight Technology, Inc.
 
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~Insight Technology, Inc.
 
事例を通じて機械学習とは何かを説明する
事例を通じて機械学習とは何かを説明する事例を通じて機械学習とは何かを説明する
事例を通じて機械学習とは何かを説明するInsight Technology, Inc.
 
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーンInsight Technology, Inc.
 
MBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとMBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとInsight Technology, Inc.
 
グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?Insight Technology, Inc.
 
DBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームDBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームInsight Technology, Inc.
 
SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門Insight Technology, Inc.
 
db tech showcase2019オープニングセッション @ 森田 俊哉
db tech showcase2019オープニングセッション @ 森田 俊哉 db tech showcase2019オープニングセッション @ 森田 俊哉
db tech showcase2019オープニングセッション @ 森田 俊哉 Insight Technology, Inc.
 
db tech showcase2019 オープニングセッション @ 石川 雅也
db tech showcase2019 オープニングセッション @ 石川 雅也db tech showcase2019 オープニングセッション @ 石川 雅也
db tech showcase2019 オープニングセッション @ 石川 雅也Insight Technology, Inc.
 
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー Insight Technology, Inc.
 
難しいアプリケーション移行、手軽に試してみませんか?
難しいアプリケーション移行、手軽に試してみませんか?難しいアプリケーション移行、手軽に試してみませんか?
難しいアプリケーション移行、手軽に試してみませんか?Insight Technology, Inc.
 
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介Insight Technology, Inc.
 
そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?Insight Technology, Inc.
 
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...Insight Technology, Inc.
 
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。 複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。 Insight Technology, Inc.
 
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...Insight Technology, Inc.
 
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]Insight Technology, Inc.
 

Plus de Insight Technology, Inc. (20)

グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?
 
Docker and the Oracle Database
Docker and the Oracle DatabaseDocker and the Oracle Database
Docker and the Oracle Database
 
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
 
事例を通じて機械学習とは何かを説明する
事例を通じて機械学習とは何かを説明する事例を通じて機械学習とは何かを説明する
事例を通じて機械学習とは何かを説明する
 
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
 
MBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごとMBAAで覚えるDBREの大事なおしごと
MBAAで覚えるDBREの大事なおしごと
 
グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?
 
DBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォームDBREから始めるデータベースプラットフォーム
DBREから始めるデータベースプラットフォーム
 
SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門SQL Server エンジニアのためのコンテナ入門
SQL Server エンジニアのためのコンテナ入門
 
Lunch & Learn, AWS NoSQL Services
Lunch & Learn, AWS NoSQL ServicesLunch & Learn, AWS NoSQL Services
Lunch & Learn, AWS NoSQL Services
 
db tech showcase2019オープニングセッション @ 森田 俊哉
db tech showcase2019オープニングセッション @ 森田 俊哉 db tech showcase2019オープニングセッション @ 森田 俊哉
db tech showcase2019オープニングセッション @ 森田 俊哉
 
db tech showcase2019 オープニングセッション @ 石川 雅也
db tech showcase2019 オープニングセッション @ 石川 雅也db tech showcase2019 オープニングセッション @ 石川 雅也
db tech showcase2019 オープニングセッション @ 石川 雅也
 
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
 
難しいアプリケーション移行、手軽に試してみませんか?
難しいアプリケーション移行、手軽に試してみませんか?難しいアプリケーション移行、手軽に試してみませんか?
難しいアプリケーション移行、手軽に試してみませんか?
 
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
 
そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?そのデータベース、クラウドで使ってみませんか?
そのデータベース、クラウドで使ってみませんか?
 
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
 
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。 複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
 
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
 
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
 

Dernier

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 

Dernier (11)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

[B24] Oracle から SQL Server システム移行の勘所 by Norio Nakamura

  • 1. Oracle -> SQL Serverシステム移行の勘所 ~Oracle開発経験者が戸惑うポイント~ 株式会社インサイトテクノロジー コンサルティング事業部 中村 範夫 Copyright © 2014 Insight Technology, Inc. All Rights Reserved.
  • 2. 2 自己紹介 Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • 中村範夫(なかむらのりお) • (株)インサイトテクノロジー コンサルティング事業部所属 • 大阪で10年以上システム開発に従事した後に、現職に • よく扱うDBは、Oracle、SQL Server、MySQL • 最近はOracleのシステムをSQL Serverで再構築という案件 に従事することが多いです
  • 3. 3 Agenda Copyright © 2014 Insight Technology, Inc. All Rights Reserved. 1. システム移行の概要 2. Oracle開発経験者が意識して欲しい違い 3. よくある開発トラブルシューティング 4. その他開発でよく聞かれること 5. まとめ
  • 4. 4 システム移行概要 Copyright © 2014 Insight Technology, Inc. All Rights Reserved. 1. データベースオブジェクトの移行(SSMA) 2. データの移行(SSMA) 3. アプリケーションの移行 • アプリケーションのビジネスロジック部分を自動変換(SSMA) • SSMAで変換できない部分を手動で変換 • 一般的なシステム移行の流れ(Webアプリケーションの場合) • SSMAが大半を担う
  • 5. 5 システム移行概要 Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • SQL Server Migration Assistant(SSMA)とは? SSMA は、Oracle データベースから SQL Server へのアプリケーション移行の自動化に役立つツール セットです。SSMA を利用することで、データベース の変換を迅速、簡単、および正確に行うことが可能になり、SQL Server への移行に関する時間、コスト、およびリスクが大幅に軽減されます。 • SSMAを利用するメリット SSMA を利用することで、下記の項目のようなデータベースの移行に必要な作業のほとんどを自動化することが可能です。 ・データベースのアセスメント ・スキーマとデータの移行 ・ビジネス ロジックの変換 ・移行の確認 http://msdn.microsoft.com/ja-jp/sqlserver/gg639007.aspx より • どれだけ自動で移行でき、どれだけ手動での移行が必要かを、見積もるためにも、 まずはSSMAで移行検証を • 一般的なシステムではおよそ80%~90%以上が自動で移行可能で、手動で変換が必要な 大半はPL/SQLのストアドプログラム
  • 6. 6 システム移行概要 Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • PL/SQLの手動変換をいかに効率的に行うかが鍵 • SSMAで変換できなかった部分をT-SQLで手動で変換するよりも PL/SQL側で変換できる形に修正する方が効率的なことが多々ある 【参考】Oracle から SQL Server 2008 への移行ガイド http://download.microsoft.com/download/3/4/7/34710CC0-5B7D-499B-B39A-50ED31F6A500/MigrateOracletoSQLServer2008.docx
  • 7. 7 Oracle開発経験者が意識して欲しい違い Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • デフォルトのトランザクションの分離レベルはどちらも、 「Read committed」だが Oracle には読み取り一貫性がある • PL/SQLとT-SQLの違い – PL/SQLは手続き型言語としての歴史が古く完成度が高い – PL/SQLはカーソルの構文、コレクション型が豊富 – T-SQLは例外処理として 2012以降 THROWが使用可能となった • その他インデックスが使用できるSQLの条件等はだいたい同じ • Oracleのパラレルクエリと同様SQL Serverの並列クエリも強力
  • 8. 8 よくある開発トラブルシューティング(1) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • [問題]デッドロックが多発する – オンライン画面(Web)のシステムテストでデッドロックが多発する • [原因]テーブルスキャンによるロック待ちにより デッドロックが発生 • [対策]条件列に対してインデックスを付与、又は 「Read Committed Snapshot」分離レベルを採用
  • 9. 9 よくある開発トラブルシューティング(1) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • [解説] t1テーブル a b 1 AA 2 BB Oracle(PL/SQL)でよくあるソースコード SELECT * FROM t1 WHERE a = 2 FOR UPDATE UPDATE t1 SET b = ‘BBB' WHERE a = 2 SQL Server用に変換 SELECT * FROM t1 WITH (ROWLOCK, UPDLOCK) WHERE a = 2 UPDATE t1 SET b = ‘BBB' WHERE a = 2 【ポイント】 更新条件のa列には主キー、 インデックスなし
  • 10. 10 よくある開発トラブルシューティング(1) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • [解説] トランザクション [1] a b トランザクション [2] SELECT * FROM t1 WITH (ROWLOCK, UPDLOCK) WHERE a = 2 1 AA SELECT * FROM t1 WITH (ROWLOCK, UPDLOCK) WHERE a = 1 2 BB UPDATE t1 SET b = 'BBB' WHERE a = 2 UPDATE t1 SET b = 'AAA' WHERE a = 1 1)先頭から探す 2)1件目を発見し、排他ロックを獲得 3)他にもないか探す 4)2行目で [1] の排他ロックにより待ちが発生 1)先頭から探す 2)1行目で2の排他ロックを発見 ↓ デッドロック検知!! ① ② ③
  • 11. 11 よくある開発トラブルシューティング(1) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. DEMO: テーブルスキャンによるロック待ちによりデッドロックが発生
  • 12. 12 よくある開発トラブルシューティング(2) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • [問題]オンライン画面(Java Webアプリ)が遅い – 自由検索画面の検索処理がOracleに比べてかなり遅い • [原因]Prepared Statement の文字列パラメータが Unicode で送信されたため VARCHAR 列に対するインデックスが使えない sendStringParametersAsUnicode = false • [対策]接続時に以下の設定を追記
  • 13. 13 よくある開発トラブルシューティング(2) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. DEMO: 暗黙の型変換によりインデックスが使えない例
  • 14. 14 よくある開発トラブルシューティング(3) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • [問題]バッチ処理の性能が思った程でない • [対策]定数取得の処理をアプリケーション側で行うことで SQLが並列クエリになるよう修正 • [原因]SQL で定数取得のユーザー定義関数を使用しているため 並列クエリで処理されていない
  • 15. 15 よくある開発トラブルシューティング(3) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • [解説] 並列クエリ処理(SQL Serverオンラインブックより) http://technet.microsoft.com/ja-jp/library/ms178065(v=sql.105).aspx
  • 16. 16 よくある開発トラブルシューティング(3) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • [解説]EMP表を750万件に増幅し検証 並列クエリにならないパターン SELECT COUNT(*) FROM EMP2 WHERE JOB = dbo.USER_FUNC('SALESMAN') 並列クエリになるパターン SELECT COUNT(*) FROM EMP2 WHERE JOB = 'SALESMAN' 組み込み関数(GETDATE()やCONVERT等)は問題なく並列クエリになる
  • 17. 17 よくある開発トラブルシューティング(3) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. DEMO: 並列クエリになるパターンとならないパターン例
  • 18. 18 その他よく聞かれること (1) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • ファイル入出力はどうすればいいの? – OracleにはSQL*Loader、UTL_FILEパッケージの機能がある • SQL Server にも bcpユーティリティ、BULK INSERT、 OPENROWSETによる「INSERT~SELECT」がある – ファイル入力では上記いずれの方法でも利用できる – ファイル出力ではbcp – OPENROWSETは非常に高性能で利用範囲が広い
  • 19. 19 その他よく聞かれること(2) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • bcpの出力が入力に比べて遅いけど?(CSVファイル) 大規模テーブルをCSVファイルに出力する場合、 bcp ユーティリティでは、カンマ付与をSQLで 記述する queryout 方式の方が高速 bcp Test.dbo.EMP out EMP.csv -c -t, -T ↓ bcp "SELECT empno + ',' + ename + ',' ・・・FROM Test.dbo.EMP" queryout EMP.csv -c -T
  • 20. 20 その他よく聞かれること(2) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • 2,000万件 約10GBのテーブルに対して処理時間を比較 0 20 40 60 80 100 120 table out 方式 queryout方式 処理時間を相対比較 (table out方式を100とした場合)
  • 21. 21 その他よく聞かれること(3) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • Oracleの階層問合せ(connect by)は使えないの? • 標準SQLの共通テーブル式(CTE)を使った再帰クエリが使える
  • 22. 22 その他よく聞かれること(3) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • 共通テーブル式サンプル(emp表を階層問合せする有名なやつ)
  • 23. 23 その他よく聞かれること(4) Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • とりあえずサーバーの設定はどうすればいいの? • 最低限やっておくべきSQL Serverの設定 – メモリの適切な割当てとページロック設定 – 並列処理の最大限度(MAXDOP)の設定 -> OLTPではCPUコア数の1/4 (目安) – tempdb の ファイル分割 -> CPUコア数分 (目安) 【参考】熊澤さんの検証資料 http://download.microsoft.com/download/F/1/0/F10BC023-9396-4D67-BAC9-7C43AE954BF4/Intel_WP_Xeon7500_SQL2008R2.pdf
  • 24. 24 まとめ Copyright © 2014 Insight Technology, Inc. All Rights Reserved. • SSMAを利用してシステム移行コストを見積もり – システム移行コストは PL/SQL の変換が鍵 – PL/SQL側を一括修正することで変換コスト削減に貢献 • アーキテクチャの違いを理解した上での方式設計が重要 – トランザクションの分離レベル・ロック制御 – JDBC接続では [sendStringParametersAsUnicode] の設定に注意 – SQL Serverの並列クエリは強力なので上手に利用
  • 25. 25Copyright © 2014 Insight Technology, Inc. All Rights Reserved. 無断転載を禁ず この文書はあくまでも参考資料であり、掲載されている情報は予告なしに変更されることがあります。 株式会社インサイトテクノロジーは本書の内容に関していかなる保証もしません。また、本書の内容に関連し たいかなる損害についても責任を負いかねます。 本書で使用している製品やサービス名の名称は、各社の商標または登録商標です。