SlideShare a Scribd company logo
1 of 25
Download to read offline
SQL Server 2016 AlwaysOn 可用性グループ
New Features
Masayuki Ozawa (Microsoft MVP for Data Platform)
自己紹介
2016/7/14db tech showcase 20162
 SQL Server のデータベースを中心に、Microsoft 製品を使用した案件に
携わらせていただいているフリーランスのエンジニアです。
 2011/7 から Microsoft MVP Awardを、SQL Server , Data Platform の領域で
受賞しています。
 Microsoft MVP Award
 https://www.microsoft.com/ja-jp/communities/mvp/default.aspx
 ブログや勉強会/セミナーを通じて SQL Server の情報発信をしています。
 blog
 SE の雑記 : http://blog.engineer-memo.com
 Twitter : @Masayuki_Ozawa
 直近で担当したセミナーのセッション
 de:code 2016 : SQL Server on Azure VM 最新情報とベスト プラクティス
https://channel9.msdn.com/Events/de-code/2016/DBP-008
AlwaysOn 可用性グループ
2016/7/14db tech showcase 20163
AlwaysOn 可用性グループとは??
2016/7/14db tech showcase 20164
 SQL Server 2012 から追加された、SQL Server インスタンス間のデータ同期を、
同期または、非同期で行うための機能
 ローカルのデータベース間でデータ同期を行うため、共有ディスクは不要
データ同期
(同期 or 非同期)
プライマリレプリカ
ログキャッシュ
ログファイル
コミット
ログ
フラッシュ
ログキャプチャ
セカンダリレプリカ
データファイル
バッファキャッシュ
チェック
ポイント
ログ適用
ログキャッシュ
ログファイル データファイル
Redo キャッシュ
Redo スレッド
コミット
応答
圧縮 圧縮解除
ログプール
AlwaysOn のデータ同期の流れ
Log Transport
Redo
ログ
再実行
SQL Server 2012 / 2014 の AlwaysOn AG
2016/7/14db tech showcase 20165
 SQL Server 2012
 Enterprise Edition でのみ利用可能
 1 台のプライマリレプリカと 4 台のセカンダリレプリカ
 3 台で同期レプリカを設定可能
 同期レプリカの中で自動フェールオーバーを 2 台で設定可能
 接続順を指定し、レプリカに読み取りのアクセス
 複数データベースにまたがるトランザクションはサポートされない
 SQL Server 2014
 8 台のセカンダリレプリカ
 プライマリレプリカから切断 / クォーラムが存在しない状態でも、
セカンダリレプリカへのアクセスが可能
SQL Server 2016
AlwaysOn 可用性グループ New Features
2016/7/14db tech showcase 20166
データベーススコープの構成
2016/7/14db tech showcase 20167
 プライマリとセカンダリで、異なるデータベーススコープの構成を設定可能
 読み取りのワークロードについては、セカンダリで設定変更による影響を確認し、プライマリに適用するという
運用が可能
 以下の設定をプライマリの設定を引き継ぐか、セカンダリの設定を個別に適用するかを制御可能
 クエリ オプティマイザーの修正プログラム (QUERY_OPTIMIZER_HOTFIXES)
 DB レベルで、TF4199 相当の設定を制御
 クエリオプティマイザーの動作の変更を有効にするための設定
 レガシ基数見積もり (LEGACY_CARDINALITY_ESTIMATION)
 DB レベルで、TF9481 相当の設定を制御
 CardinalityEstimationModelVersion = 70 の基数見積もり (推定) の利用
 パラメーター スニッフィング (PARAMETER_SNIFFING)
 DB レベルで、TF4136 相当の設定を制御
 クエリコンパイル時に使用する、パラメーターの挙動に関しての設定
 最大 DOP (MAXDOP)
 DB レベルで、max degree of parallelism の設定を制御
 DB 単位でプランキャッシュのクリアが可能
 ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE
 dbcc FLUSHPROCINDB (dbid) 相当の動作を ALTER で実行可能
プライマリ/セカンダリでクエリの動作を変える
2016/7/14db tech showcase 20168
 LEGACY_CARDINALITY_ESTIMATION を設定し、プライマリと
セカンダリで異なる基数推定を使用
Workgroup Cluster での AlwaysOn
2016/7/14db tech showcase 20169
 Windows Server 2016 の新機能である Workgroup Cluster で構築されたクラスター上
で、AlwaysOn 可用性グループを構築可能に
 Active Directory が不要で、AlwaysOn 可用性グループの構築が可能
 サポートされる Custer Quorum に注意する
(現状、ファイル共有/ノードはサポート対象に含まれていない)
 Windows Server 2016 ではマルチドメインクラスターもサポート
Active Directory ドメイン
Windows Server Failover Clustering
Quorum
- Disk
- Node
- File Share
Windows Server 2012 R2
Workgroup
Windows Server Failover Clustering
Quorum
- Disk
- Cloud Microsoft Azure
Windows Server 2016
DEMO
2016/7/14db tech showcase 201610
Workgroup Cluster
DB レベルでの障害検知によるフェールオーバー
2016/7/14db tech showcase 201611
 SQL Server 2012 / 2014
 インスタンスレベルで、障害を検知 (Flexible Failover Policy)
 柔軟なフェールオーバーポリシー
 サーバーの停止 / 応答停止 / サーバーエラー等の 5 段階で検知レベルを設定可能
 SQL Server 2016
 インスタンスレベルに加え「データベースレベルの正常性検出」を設定可能に
 DB_FAILOVER = ON を設定
 可用性グループの作成後に、設定変更可能
 可用性グループ内のデータベースのオフラインを検知し、フェールオーバーを
実施することが可能に
 データベースレベルの正常性検知については、検知レベルの設定はない
SQL Server 2012 / 2014 のスレッド
2016/7/14db tech showcase 201612
AlwaysON – HADRON Learning Series: Worker Pool Usage for HADRON Enabled Databases
https://blogs.msdn.microsoft.com/psssql/2012/05/17/alwayson-hadron-learning-series-worker-pool-usage-for-hadron-enabled-databases/ より
Log Scanner
Primary
HadrThreadPool
DDL / Notifications
20-60 Seconds Idle Per Database
Per Database
On Msg completion
Per Secondary
On Msg completion
Msg Reader
Secodnary
Redo
20-60 Seconds Idle
Per Database
On Msg completion
State Processing
Per Database
20-60 Seconds Idle
Msg Receive
Per AG
Per DB Per DB
Msg Log Apply
HadrThreadPool
On Msg completion
Msg Routing
On Msg completion
ログ転送の性能改善
2016/7/14db tech showcase 201613
 ログ転送のスループット向上
 圧縮アルゴリズムの改善 (並列操作) も実施されている
 ログ転送の圧縮操作のデフォルト動作の変更
 SQL Server 2014 まで
 同期 / 非同期ともにデフォルトは圧縮 (-T1462 で非圧縮に変更可能)
 SQL Server 2016
 同期 : デフォルトは非圧縮 (-T9592 で圧縮に変更可能)
 圧縮によるオーバーヘッドを減らし、同期モードの処理速度を優先
 非同期 : デフォルトは圧縮 (-T1462 で非圧縮に変更可能)
 セカンダリレプリカでパラレル (マルチスレッド) Redo 処理が可能に
 2014 までは、DB ごとに Redo スレッドが動作していたが、シングルスレッドで起動
 2016 では、使用可能な CPU スレッドの関数として定義されて、各 DB の Redoスレッドは、
CPU 数に応じて起動される
 パラレル化されたことで、フェールオーバー時の回復処理が高速に
 ログの処理効率改善については、NUMA ノード数に応じた LOG WRITER のマルチワーカー
(スレッド) 化も実施されている (最大 4 スレッド)
 2016 は自動ソフト NUMA がデフォルト有効なため、8 論理コア以上はソフト NUMA が構成される
DEMO
2016/7/14db tech showcase 201614
SQL Server 2016 の HADR のスレッドの確認
自動フェールオーバーを 3 台で設定可能
2016/7/14db tech showcase 201615
 自動フェールオーバーを 3 台で設定可能
 同期レプリカ 3 台間で自動フェールオーバーを設定可能に
 フェールオーバーの順序については、クラスターグループの設定に基づく
 WSFC の、優先所有者の設定に基づき、フェールオーバーが実行される
 AlwaysOn 可用性グループは、WSFC の機能を組み合わせて可用性を担保している
同期レプリカ
自動フェールオーバー
SQL Server 2012 / 2014
同期レプリカ
自動フェールオーバー
SQL Server 2016
ロードバランスされた読み取りレプリカへのアクセス
2016/7/14db tech showcase 201616
 2012 / 2014 は、接続順序 (ルール) によるセカンダリレプリカへのアクセス
 2016 では、ラウンドロビンにより、ロードバランスされたアクセスが可能に
 以下の SQL Server 2016 の、設定例は Server A または Server B でロードバランスし、
どちらも接続できない場合は Server C に接続
Server A
Server B
Server C
ALTER AVAILABILITY GROUP [AlwaysOnAG]
MODIFY REPLICA ON N'SQL-2016-01'
WITH
(PRIMARY_ROLE
(READ_ONLY_ROUTING_LIST=(
N'Server A',
N'Server B',
N'Server C'
)))
SQL Server 2012 / 2014
ALTER AVAILABILITY GROUP [AlwaysOnAG]
MODIFY REPLICA ON N'SQL-2016-01'
WITH
(PRIMARY_ROLE
(READ_ONLY_ROUTING_LIST=(
(N'Server A',N'Server B'),
N'Server C'
)))
SQL Server 2016
DEMO
2016/7/14db tech showcase 201617
ロードバランスされたセカンダリへのアクセス
AlwaysOn で分散トランザクションをサポート
2016/7/14db tech showcase 201618
 特定環境下での分散トランザクションをサポート
 異なるインスタンスの DB に対しての分散トランザクションをサポート
 AlwaysOn は同一インスタンス内の複数データベースにまたがるトランザクションはサポートしていない
 OS は、Windows Server 2012 R2 + KB3090973 or Windows Server 2016 を使用する必要がある
 WITH DTC_SUPPORT = PER_DB を指定して可用性グループを作成
 可用性グループの作成時のみ、設定が可能なため、後からの変更は不可能
AG 1
DB1
DB2
非サポートの DB 配置
AG 1
DB1
DB2
Server A Server B Server A Server B
AG 1
DB1
DB2
AG 2
AG 1
DB1
DB2
サポートされるDB 配置
Server A Server B Server A Server B
Direct Seeding によるセカンダリレプリカへの復元
2016/7/14db tech showcase 201619
 セカンダリに明示的なバックアップのリストアが不要で同期を開始
 従来 : SEEDING_MODE = MANUAL
 プライマリの初期バックアップ → 可用性グループに追加 → セカンダリでリストア → 同期開始
 Direct Seeding (Automatic Seeding) : SEEDING_MODE = AUTOMATIC
 プライマリの初期バックアップ → 可用性グループに追加 → セカンダリに自動的に追加され、同期開始
 すべてをセカンダリへの自動的な追加は、ディレクトリ構成を同一にする
 同一でない場合は、事前に手動でバックアップをリストアしておく必要がある
 後述の分散可用性グループの初期同期でも Direct Seeding を使用することができる
 -T9567 を設定すると、データ同期時のデータストリームが圧縮される
SQL Server 2012 / 2014
AG 1
DB1
DBを追加
Server A
Server B AG 1
DB1
共有フォルダー
バックアップ
リストア
AG 1
DB1
DBを追加
Server A
Server B AG 1
DB1
AG に自動で
追加される
SQL Server 2016
分散可用性グループ
2016/7/14db tech showcase 201620
 異なる (独立した) クラスター 間で可用性グループを設定可能
 可用性グループのリスナー間で複製の設定を行う
 これにより遠隔地の独立した環境に対して、可用性グループを設定可能に
 セカンダリレプリカは DB を含まない可用性グループとして作成
 分散可用性グループ間のフェールオーバーは手動で実施
WSFC02
AG02
Primary
Secondary
Distributed Availability GroupsWSFC01
AG01
Primary
Secondary Secondary
DEMO
2016/7/14db tech showcase 201621
Direct Seeding と分散可用性グループ
Standard Edition を使用した AlwaysOn
2016/7/14db tech showcase 201622
 基本的な可用性グループ (Basic Availability Groups)
 Standard Edition でデータベースミラーリングに代わる可用性環境の構築方法
 2012 の段階で、データベースミラーリングは今後のバージョンでサポートされない機能に
 基本的な可用性グループの特徴
 2 台のサーバー間でのレプリカ (Primary / Secondary 構成)
 同期 / 非同期, 自動フェールオーバーを設定可能
 リスナーを介しての可用性グループへのアクセスをサポート
 セカンダリレプリカのアクセスはできない
 読み取りとしての利用 / バックアップ取得 DB としての利用はできない
 可用性グループに含めることができるのは一つの DB のみ
 複数の DB を可用性グループで保護したい場合には、複数の可用性グループを作成
 DB 間で JOIN をする際には、各可用性グループの配置状況に注意する現状、検証するために
は「Standard Edition」が必要
 Enterprise Edition / Enterprise Evaluation では、基本的な可用性グループを
構築することはできないため、検証時には注意する
Standard Edition の AlwaysOn の構成
2016/7/14db tech showcase 201623
Server A
AG01
(Primary)
DB1 Listener
AG02
(Secondary)
DB1
Server B
AG02
(Primary)
DB1 Listener
AG01
(Secondary)
DB1
データ同期
データ同期
DEMO
2016/7/14db tech showcase 201624
Basic Availability Groups
参考資料
2016/7/14db tech showcase 201625
 Introducing Microsoft SQL Server 2016 – get your free ebook today
 https://info.microsoft.com/Introducing-SQL-Server-2016-eBook.html
 Enhanced Always On Availability Groups in SQL Server 2016
 https://blogs.technet.microsoft.com/dataplatforminsider/2015/12/15/enhanced-always-on-availability-groups-in-sql-server-2016/
 High Availability Enhancements
 https://msdn.microsoft.com/en-us/library/bb510411.aspx#Anchor_4
 Workgroup and Multi-domain clusters in Windows Server 2016
 https://blogs.msdn.microsoft.com/clustering/2015/08/17/workgroup-and-multi-domain-clusters-in-windows-server-2016/
 SQLServer 2016 AlwaysOn and new Log Transport behavior
 https://blogs.technet.microsoft.com/simgreci/2016/06/17/sqlserver-2016-alwayson-and-new-log-transport-behavior/
 SQL 2016 – It Just Runs Faster: AlwaysOn Parallel Compression / Improved Algorithms
 https://blogs.msdn.microsoft.com/psssql/2016/05/03/sql-2016-it-just-runs-faster-alwayson-parallel-compression-improved-algorithms/
 Configure load-balancing across read-only replicas
 https://msdn.microsoft.com/en-us/library/hh710054.aspx#loadbalancing
 Cross-Database Transactions and Distributed Transactions for Always On Availability Groups and Database Mirroring (SQL Server)
 https://msdn.microsoft.com/en-us/library/ms366279(v=sql.130).aspx
 SQL Server 2016 DTC Support In Availability Groups
 https://blogs.technet.microsoft.com/dataplatform/2016/01/25/sql-server-2016-dtc-support-in-availability-groups/
 Distributed Availability Groups (Always On Availability Groups)
 https://msdn.microsoft.com/en-us/library/mt651673.aspx
 Basic Availability Groups (Always On Availability Groups)
 https://msdn.microsoft.com/en-us/library/mt614935.aspx

More Related Content

What's hot

Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Masayuki Ozawa
 
ここからはじめる SQL Server の状態取得
ここからはじめる SQL Server の状態取得ここからはじめる SQL Server の状態取得
ここからはじめる SQL Server の状態取得Masayuki Ozawa
 
Oracle Database 11g,12cからのアップグレード対策とクラウド移行 (Oracle Cloudウェビナーシリーズ: 2021年7...
Oracle Database 11g,12cからのアップグレード対策とクラウド移行 (Oracle Cloudウェビナーシリーズ: 2021年7...Oracle Database 11g,12cからのアップグレード対策とクラウド移行 (Oracle Cloudウェビナーシリーズ: 2021年7...
Oracle Database 11g,12cからのアップグレード対策とクラウド移行 (Oracle Cloudウェビナーシリーズ: 2021年7...オラクルエンジニア通信
 
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 パフォーマンスカウンター
SQL Server パフォーマンスカウンターSQL Server パフォーマンスカウンター
SQL Server パフォーマンスカウンターMasayuki Ozawa
 
SQL serverのデータ破損に備える
SQL serverのデータ破損に備えるSQL serverのデータ破損に備える
SQL serverのデータ破損に備えるokumar savurou
 
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawaInsight Technology, Inc.
 
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]オラクルエンジニア通信
 
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史Insight Technology, Inc.
 
[db tech showcase Tokyo 2016] B27:SQL Server 2016 AlwaysOn 可用性グループ New Featur...
[db tech showcase Tokyo 2016] B27:SQL Server 2016 AlwaysOn 可用性グループ New Featur...[db tech showcase Tokyo 2016] B27:SQL Server 2016 AlwaysOn 可用性グループ New Featur...
[db tech showcase Tokyo 2016] B27:SQL Server 2016 AlwaysOn 可用性グループ New Featur...Insight Technology, Inc.
 
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するdb tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するMasayuki Ozawa
 
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニングしばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニングオラクルエンジニア通信
 
Sql server浅く広く
Sql server浅く広くSql server浅く広く
Sql server浅く広くokumar savurou
 
SQL Server パフォーマンス問題対処 Deep Dive
SQL Server パフォーマンス問題対処 Deep DiveSQL Server パフォーマンス問題対処 Deep Dive
SQL Server パフォーマンス問題対処 Deep DiveKoichiro Sasaki
 
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]Hideo Takagi
 
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所de:code 2017
 

What's hot (20)

Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎
 
ここからはじめる SQL Server の状態取得
ここからはじめる SQL Server の状態取得ここからはじめる SQL Server の状態取得
ここからはじめる SQL Server の状態取得
 
Sql server 運用 101
Sql server 運用 101Sql server 運用 101
Sql server 運用 101
 
Oracle Database 11g,12cからのアップグレード対策とクラウド移行 (Oracle Cloudウェビナーシリーズ: 2021年7...
Oracle Database 11g,12cからのアップグレード対策とクラウド移行 (Oracle Cloudウェビナーシリーズ: 2021年7...Oracle Database 11g,12cからのアップグレード対策とクラウド移行 (Oracle Cloudウェビナーシリーズ: 2021年7...
Oracle Database 11g,12cからのアップグレード対策とクラウド移行 (Oracle Cloudウェビナーシリーズ: 2021年7...
 
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 入門
SQL Server 入門SQL Server 入門
SQL Server 入門
 
SQL serverのデータ破損に備える
SQL serverのデータ破損に備えるSQL serverのデータ破損に備える
SQL serverのデータ破損に備える
 
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
 
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
【旧版】Oracle Gen 2 Exadata Cloud@Customer:サービス概要のご紹介 [2021年12月版]
 
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
 
[db tech showcase Tokyo 2016] B27:SQL Server 2016 AlwaysOn 可用性グループ New Featur...
[db tech showcase Tokyo 2016] B27:SQL Server 2016 AlwaysOn 可用性グループ New Featur...[db tech showcase Tokyo 2016] B27:SQL Server 2016 AlwaysOn 可用性グループ New Featur...
[db tech showcase Tokyo 2016] B27:SQL Server 2016 AlwaysOn 可用性グループ New Featur...
 
Oracle Database Applianceのご紹介(詳細)
Oracle Database Applianceのご紹介(詳細)Oracle Database Applianceのご紹介(詳細)
Oracle Database Applianceのご紹介(詳細)
 
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するdb tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
 
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニングしばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
 
Sql server浅く広く
Sql server浅く広くSql server浅く広く
Sql server浅く広く
 
SQL Server パフォーマンス問題対処 Deep Dive
SQL Server パフォーマンス問題対処 Deep DiveSQL Server パフォーマンス問題対処 Deep Dive
SQL Server パフォーマンス問題対処 Deep Dive
 
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
 
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
[DI03] DWH スペシャリストが語る! Azure SQL Data Warehouse チューニングの勘所
 

Similar to Sql server 2016 always on 可用性グループ new features

db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!Masayuki Ozawa
 
Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Akio Katayama
 
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみたAwsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみたSunao Tomita
 
2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟貴仁 大和屋
 
Couchbase introduction-20150611
Couchbase introduction-20150611Couchbase introduction-20150611
Couchbase introduction-20150611Couchbase Japan KK
 
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみたA 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみたGoAzure
 
AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -SORACOM, INC
 
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集Couchbase Japan KK
 
Sql database managed instance overview and internals
Sql database managed instance overview and internalsSql database managed instance overview and internals
Sql database managed instance overview and internalsMasayuki Ozawa
 
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...Insight Technology, Inc.
 
Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Masayuki Ozawa
 
20140518 JJUG MySQL Clsuter as NoSQL
20140518 JJUG MySQL Clsuter as NoSQL20140518 JJUG MySQL Clsuter as NoSQL
20140518 JJUG MySQL Clsuter as NoSQLRyusuke Kajiyama
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)Akio Katayama
 
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-publicAmazon Web Services Japan
 
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-SORACOM, INC
 
Moot2013 moca ver0.3
Moot2013 moca ver0.3Moot2013 moca ver0.3
Moot2013 moca ver0.3科 黄
 
SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版Kishima Masakazu
 

Similar to Sql server 2016 always on 可用性グループ new features (20)

[Japan Tech summit 2017] DAL 004
[Japan Tech summit 2017] DAL 004[Japan Tech summit 2017] DAL 004
[Japan Tech summit 2017] DAL 004
 
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
 
Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012
 
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみたAwsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
 
2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟
 
2011/11/26 Dot netlab
2011/11/26 Dot netlab2011/11/26 Dot netlab
2011/11/26 Dot netlab
 
Couchbase introduction-20150611
Couchbase introduction-20150611Couchbase introduction-20150611
Couchbase introduction-20150611
 
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみたA 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
A 1-3 awsのクラウドデザインパターンをwindows-azureに持ってきてみた
 
AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -
 
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
 
Sql database managed instance overview and internals
Sql database managed instance overview and internalsSql database managed instance overview and internals
Sql database managed instance overview and internals
 
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
 
Couchbaseの紹介 2015/03/05
Couchbaseの紹介 2015/03/05Couchbaseの紹介 2015/03/05
Couchbaseの紹介 2015/03/05
 
Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能
 
20140518 JJUG MySQL Clsuter as NoSQL
20140518 JJUG MySQL Clsuter as NoSQL20140518 JJUG MySQL Clsuter as NoSQL
20140518 JJUG MySQL Clsuter as NoSQL
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
 
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
 
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
 
Moot2013 moca ver0.3
Moot2013 moca ver0.3Moot2013 moca ver0.3
Moot2013 moca ver0.3
 
SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版
 

More from Masayuki Ozawa

Power apps formula cheat sheet
Power apps formula cheat sheetPower apps formula cheat sheet
Power apps formula cheat sheetMasayuki Ozawa
 
K8s install (single cluster)
K8s install (single cluster)K8s install (single cluster)
K8s install (single cluster)Masayuki Ozawa
 
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tipsde:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux TipsMasayuki Ozawa
 
Managed Instance チートシート
Managed Instance チートシートManaged Instance チートシート
Managed Instance チートシートMasayuki Ozawa
 
Pacemaker 操作方法メモ
Pacemaker 操作方法メモPacemaker 操作方法メモ
Pacemaker 操作方法メモMasayuki Ozawa
 
Windows エンジニア向け sql server on linux のためのスキルアップデート
Windows エンジニア向け sql server on linux のためのスキルアップデートWindows エンジニア向け sql server on linux のためのスキルアップデート
Windows エンジニア向け sql server on linux のためのスキルアップデートMasayuki Ozawa
 
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Masayuki Ozawa
 
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Masayuki Ozawa
 
DBA から開発者への情報提供
DBA から開発者への情報提供DBA から開発者への情報提供
DBA から開発者への情報提供Masayuki Ozawa
 
SQL Server 簡易診断サービス ご紹介資料
SQL Server 簡易診断サービス ご紹介資料SQL Server 簡易診断サービス ご紹介資料
SQL Server 簡易診断サービス ご紹介資料Masayuki Ozawa
 
SQL Server 現状診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料SQL Server 現状診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料Masayuki Ozawa
 
A25 sql server data page structure deep dive
A25 sql server data page structure deep diveA25 sql server data page structure deep dive
A25 sql server data page structure deep diveMasayuki Ozawa
 
Data consistency 入門 data partitioning ガイダンス
Data consistency 入門 data partitioning ガイダンスData consistency 入門 data partitioning ガイダンス
Data consistency 入門 data partitioning ガイダンスMasayuki Ozawa
 
Sql server data store data access internals
Sql server data store data access internalsSql server data store data access internals
Sql server data store data access internalsMasayuki Ozawa
 
Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Masayuki Ozawa
 
オンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたオンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたMasayuki Ozawa
 
Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Masayuki Ozawa
 
和牛をおいしく食べるには
和牛をおいしく食べるには和牛をおいしく食べるには
和牛をおいしく食べるにはMasayuki Ozawa
 
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみようSql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみようMasayuki Ozawa
 

More from Masayuki Ozawa (19)

Power apps formula cheat sheet
Power apps formula cheat sheetPower apps formula cheat sheet
Power apps formula cheat sheet
 
K8s install (single cluster)
K8s install (single cluster)K8s install (single cluster)
K8s install (single cluster)
 
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tipsde:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
 
Managed Instance チートシート
Managed Instance チートシートManaged Instance チートシート
Managed Instance チートシート
 
Pacemaker 操作方法メモ
Pacemaker 操作方法メモPacemaker 操作方法メモ
Pacemaker 操作方法メモ
 
Windows エンジニア向け sql server on linux のためのスキルアップデート
Windows エンジニア向け sql server on linux のためのスキルアップデートWindows エンジニア向け sql server on linux のためのスキルアップデート
Windows エンジニア向け sql server on linux のためのスキルアップデート
 
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
 
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
 
DBA から開発者への情報提供
DBA から開発者への情報提供DBA から開発者への情報提供
DBA から開発者への情報提供
 
SQL Server 簡易診断サービス ご紹介資料
SQL Server 簡易診断サービス ご紹介資料SQL Server 簡易診断サービス ご紹介資料
SQL Server 簡易診断サービス ご紹介資料
 
SQL Server 現状診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料SQL Server 現状診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料
 
A25 sql server data page structure deep dive
A25 sql server data page structure deep diveA25 sql server data page structure deep dive
A25 sql server data page structure deep dive
 
Data consistency 入門 data partitioning ガイダンス
Data consistency 入門 data partitioning ガイダンスData consistency 入門 data partitioning ガイダンス
Data consistency 入門 data partitioning ガイダンス
 
Sql server data store data access internals
Sql server data store data access internalsSql server data store data access internals
Sql server data store data access internals
 
Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)Oracle と sql server 比べてみよう (sql server)
Oracle と sql server 比べてみよう (sql server)
 
オンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみたオンプレのDbaがazureのデータベースを使ってみた
オンプレのDbaがazureのデータベースを使ってみた
 
Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介
 
和牛をおいしく食べるには
和牛をおいしく食べるには和牛をおいしく食べるには
和牛をおいしく食べるには
 
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみようSql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
 

Sql server 2016 always on 可用性グループ new features

  • 1. SQL Server 2016 AlwaysOn 可用性グループ New Features Masayuki Ozawa (Microsoft MVP for Data Platform)
  • 2. 自己紹介 2016/7/14db tech showcase 20162  SQL Server のデータベースを中心に、Microsoft 製品を使用した案件に 携わらせていただいているフリーランスのエンジニアです。  2011/7 から Microsoft MVP Awardを、SQL Server , Data Platform の領域で 受賞しています。  Microsoft MVP Award  https://www.microsoft.com/ja-jp/communities/mvp/default.aspx  ブログや勉強会/セミナーを通じて SQL Server の情報発信をしています。  blog  SE の雑記 : http://blog.engineer-memo.com  Twitter : @Masayuki_Ozawa  直近で担当したセミナーのセッション  de:code 2016 : SQL Server on Azure VM 最新情報とベスト プラクティス https://channel9.msdn.com/Events/de-code/2016/DBP-008
  • 4. AlwaysOn 可用性グループとは?? 2016/7/14db tech showcase 20164  SQL Server 2012 から追加された、SQL Server インスタンス間のデータ同期を、 同期または、非同期で行うための機能  ローカルのデータベース間でデータ同期を行うため、共有ディスクは不要 データ同期 (同期 or 非同期) プライマリレプリカ ログキャッシュ ログファイル コミット ログ フラッシュ ログキャプチャ セカンダリレプリカ データファイル バッファキャッシュ チェック ポイント ログ適用 ログキャッシュ ログファイル データファイル Redo キャッシュ Redo スレッド コミット 応答 圧縮 圧縮解除 ログプール AlwaysOn のデータ同期の流れ Log Transport Redo ログ 再実行
  • 5. SQL Server 2012 / 2014 の AlwaysOn AG 2016/7/14db tech showcase 20165  SQL Server 2012  Enterprise Edition でのみ利用可能  1 台のプライマリレプリカと 4 台のセカンダリレプリカ  3 台で同期レプリカを設定可能  同期レプリカの中で自動フェールオーバーを 2 台で設定可能  接続順を指定し、レプリカに読み取りのアクセス  複数データベースにまたがるトランザクションはサポートされない  SQL Server 2014  8 台のセカンダリレプリカ  プライマリレプリカから切断 / クォーラムが存在しない状態でも、 セカンダリレプリカへのアクセスが可能
  • 6. SQL Server 2016 AlwaysOn 可用性グループ New Features 2016/7/14db tech showcase 20166
  • 7. データベーススコープの構成 2016/7/14db tech showcase 20167  プライマリとセカンダリで、異なるデータベーススコープの構成を設定可能  読み取りのワークロードについては、セカンダリで設定変更による影響を確認し、プライマリに適用するという 運用が可能  以下の設定をプライマリの設定を引き継ぐか、セカンダリの設定を個別に適用するかを制御可能  クエリ オプティマイザーの修正プログラム (QUERY_OPTIMIZER_HOTFIXES)  DB レベルで、TF4199 相当の設定を制御  クエリオプティマイザーの動作の変更を有効にするための設定  レガシ基数見積もり (LEGACY_CARDINALITY_ESTIMATION)  DB レベルで、TF9481 相当の設定を制御  CardinalityEstimationModelVersion = 70 の基数見積もり (推定) の利用  パラメーター スニッフィング (PARAMETER_SNIFFING)  DB レベルで、TF4136 相当の設定を制御  クエリコンパイル時に使用する、パラメーターの挙動に関しての設定  最大 DOP (MAXDOP)  DB レベルで、max degree of parallelism の設定を制御  DB 単位でプランキャッシュのクリアが可能  ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE  dbcc FLUSHPROCINDB (dbid) 相当の動作を ALTER で実行可能
  • 8. プライマリ/セカンダリでクエリの動作を変える 2016/7/14db tech showcase 20168  LEGACY_CARDINALITY_ESTIMATION を設定し、プライマリと セカンダリで異なる基数推定を使用
  • 9. Workgroup Cluster での AlwaysOn 2016/7/14db tech showcase 20169  Windows Server 2016 の新機能である Workgroup Cluster で構築されたクラスター上 で、AlwaysOn 可用性グループを構築可能に  Active Directory が不要で、AlwaysOn 可用性グループの構築が可能  サポートされる Custer Quorum に注意する (現状、ファイル共有/ノードはサポート対象に含まれていない)  Windows Server 2016 ではマルチドメインクラスターもサポート Active Directory ドメイン Windows Server Failover Clustering Quorum - Disk - Node - File Share Windows Server 2012 R2 Workgroup Windows Server Failover Clustering Quorum - Disk - Cloud Microsoft Azure Windows Server 2016
  • 10. DEMO 2016/7/14db tech showcase 201610 Workgroup Cluster
  • 11. DB レベルでの障害検知によるフェールオーバー 2016/7/14db tech showcase 201611  SQL Server 2012 / 2014  インスタンスレベルで、障害を検知 (Flexible Failover Policy)  柔軟なフェールオーバーポリシー  サーバーの停止 / 応答停止 / サーバーエラー等の 5 段階で検知レベルを設定可能  SQL Server 2016  インスタンスレベルに加え「データベースレベルの正常性検出」を設定可能に  DB_FAILOVER = ON を設定  可用性グループの作成後に、設定変更可能  可用性グループ内のデータベースのオフラインを検知し、フェールオーバーを 実施することが可能に  データベースレベルの正常性検知については、検知レベルの設定はない
  • 12. SQL Server 2012 / 2014 のスレッド 2016/7/14db tech showcase 201612 AlwaysON – HADRON Learning Series: Worker Pool Usage for HADRON Enabled Databases https://blogs.msdn.microsoft.com/psssql/2012/05/17/alwayson-hadron-learning-series-worker-pool-usage-for-hadron-enabled-databases/ より Log Scanner Primary HadrThreadPool DDL / Notifications 20-60 Seconds Idle Per Database Per Database On Msg completion Per Secondary On Msg completion Msg Reader Secodnary Redo 20-60 Seconds Idle Per Database On Msg completion State Processing Per Database 20-60 Seconds Idle Msg Receive Per AG Per DB Per DB Msg Log Apply HadrThreadPool On Msg completion Msg Routing On Msg completion
  • 13. ログ転送の性能改善 2016/7/14db tech showcase 201613  ログ転送のスループット向上  圧縮アルゴリズムの改善 (並列操作) も実施されている  ログ転送の圧縮操作のデフォルト動作の変更  SQL Server 2014 まで  同期 / 非同期ともにデフォルトは圧縮 (-T1462 で非圧縮に変更可能)  SQL Server 2016  同期 : デフォルトは非圧縮 (-T9592 で圧縮に変更可能)  圧縮によるオーバーヘッドを減らし、同期モードの処理速度を優先  非同期 : デフォルトは圧縮 (-T1462 で非圧縮に変更可能)  セカンダリレプリカでパラレル (マルチスレッド) Redo 処理が可能に  2014 までは、DB ごとに Redo スレッドが動作していたが、シングルスレッドで起動  2016 では、使用可能な CPU スレッドの関数として定義されて、各 DB の Redoスレッドは、 CPU 数に応じて起動される  パラレル化されたことで、フェールオーバー時の回復処理が高速に  ログの処理効率改善については、NUMA ノード数に応じた LOG WRITER のマルチワーカー (スレッド) 化も実施されている (最大 4 スレッド)  2016 は自動ソフト NUMA がデフォルト有効なため、8 論理コア以上はソフト NUMA が構成される
  • 14. DEMO 2016/7/14db tech showcase 201614 SQL Server 2016 の HADR のスレッドの確認
  • 15. 自動フェールオーバーを 3 台で設定可能 2016/7/14db tech showcase 201615  自動フェールオーバーを 3 台で設定可能  同期レプリカ 3 台間で自動フェールオーバーを設定可能に  フェールオーバーの順序については、クラスターグループの設定に基づく  WSFC の、優先所有者の設定に基づき、フェールオーバーが実行される  AlwaysOn 可用性グループは、WSFC の機能を組み合わせて可用性を担保している 同期レプリカ 自動フェールオーバー SQL Server 2012 / 2014 同期レプリカ 自動フェールオーバー SQL Server 2016
  • 16. ロードバランスされた読み取りレプリカへのアクセス 2016/7/14db tech showcase 201616  2012 / 2014 は、接続順序 (ルール) によるセカンダリレプリカへのアクセス  2016 では、ラウンドロビンにより、ロードバランスされたアクセスが可能に  以下の SQL Server 2016 の、設定例は Server A または Server B でロードバランスし、 どちらも接続できない場合は Server C に接続 Server A Server B Server C ALTER AVAILABILITY GROUP [AlwaysOnAG] MODIFY REPLICA ON N'SQL-2016-01' WITH (PRIMARY_ROLE (READ_ONLY_ROUTING_LIST=( N'Server A', N'Server B', N'Server C' ))) SQL Server 2012 / 2014 ALTER AVAILABILITY GROUP [AlwaysOnAG] MODIFY REPLICA ON N'SQL-2016-01' WITH (PRIMARY_ROLE (READ_ONLY_ROUTING_LIST=( (N'Server A',N'Server B'), N'Server C' ))) SQL Server 2016
  • 17. DEMO 2016/7/14db tech showcase 201617 ロードバランスされたセカンダリへのアクセス
  • 18. AlwaysOn で分散トランザクションをサポート 2016/7/14db tech showcase 201618  特定環境下での分散トランザクションをサポート  異なるインスタンスの DB に対しての分散トランザクションをサポート  AlwaysOn は同一インスタンス内の複数データベースにまたがるトランザクションはサポートしていない  OS は、Windows Server 2012 R2 + KB3090973 or Windows Server 2016 を使用する必要がある  WITH DTC_SUPPORT = PER_DB を指定して可用性グループを作成  可用性グループの作成時のみ、設定が可能なため、後からの変更は不可能 AG 1 DB1 DB2 非サポートの DB 配置 AG 1 DB1 DB2 Server A Server B Server A Server B AG 1 DB1 DB2 AG 2 AG 1 DB1 DB2 サポートされるDB 配置 Server A Server B Server A Server B
  • 19. Direct Seeding によるセカンダリレプリカへの復元 2016/7/14db tech showcase 201619  セカンダリに明示的なバックアップのリストアが不要で同期を開始  従来 : SEEDING_MODE = MANUAL  プライマリの初期バックアップ → 可用性グループに追加 → セカンダリでリストア → 同期開始  Direct Seeding (Automatic Seeding) : SEEDING_MODE = AUTOMATIC  プライマリの初期バックアップ → 可用性グループに追加 → セカンダリに自動的に追加され、同期開始  すべてをセカンダリへの自動的な追加は、ディレクトリ構成を同一にする  同一でない場合は、事前に手動でバックアップをリストアしておく必要がある  後述の分散可用性グループの初期同期でも Direct Seeding を使用することができる  -T9567 を設定すると、データ同期時のデータストリームが圧縮される SQL Server 2012 / 2014 AG 1 DB1 DBを追加 Server A Server B AG 1 DB1 共有フォルダー バックアップ リストア AG 1 DB1 DBを追加 Server A Server B AG 1 DB1 AG に自動で 追加される SQL Server 2016
  • 20. 分散可用性グループ 2016/7/14db tech showcase 201620  異なる (独立した) クラスター 間で可用性グループを設定可能  可用性グループのリスナー間で複製の設定を行う  これにより遠隔地の独立した環境に対して、可用性グループを設定可能に  セカンダリレプリカは DB を含まない可用性グループとして作成  分散可用性グループ間のフェールオーバーは手動で実施 WSFC02 AG02 Primary Secondary Distributed Availability GroupsWSFC01 AG01 Primary Secondary Secondary
  • 21. DEMO 2016/7/14db tech showcase 201621 Direct Seeding と分散可用性グループ
  • 22. Standard Edition を使用した AlwaysOn 2016/7/14db tech showcase 201622  基本的な可用性グループ (Basic Availability Groups)  Standard Edition でデータベースミラーリングに代わる可用性環境の構築方法  2012 の段階で、データベースミラーリングは今後のバージョンでサポートされない機能に  基本的な可用性グループの特徴  2 台のサーバー間でのレプリカ (Primary / Secondary 構成)  同期 / 非同期, 自動フェールオーバーを設定可能  リスナーを介しての可用性グループへのアクセスをサポート  セカンダリレプリカのアクセスはできない  読み取りとしての利用 / バックアップ取得 DB としての利用はできない  可用性グループに含めることができるのは一つの DB のみ  複数の DB を可用性グループで保護したい場合には、複数の可用性グループを作成  DB 間で JOIN をする際には、各可用性グループの配置状況に注意する現状、検証するために は「Standard Edition」が必要  Enterprise Edition / Enterprise Evaluation では、基本的な可用性グループを 構築することはできないため、検証時には注意する
  • 23. Standard Edition の AlwaysOn の構成 2016/7/14db tech showcase 201623 Server A AG01 (Primary) DB1 Listener AG02 (Secondary) DB1 Server B AG02 (Primary) DB1 Listener AG01 (Secondary) DB1 データ同期 データ同期
  • 24. DEMO 2016/7/14db tech showcase 201624 Basic Availability Groups
  • 25. 参考資料 2016/7/14db tech showcase 201625  Introducing Microsoft SQL Server 2016 – get your free ebook today  https://info.microsoft.com/Introducing-SQL-Server-2016-eBook.html  Enhanced Always On Availability Groups in SQL Server 2016  https://blogs.technet.microsoft.com/dataplatforminsider/2015/12/15/enhanced-always-on-availability-groups-in-sql-server-2016/  High Availability Enhancements  https://msdn.microsoft.com/en-us/library/bb510411.aspx#Anchor_4  Workgroup and Multi-domain clusters in Windows Server 2016  https://blogs.msdn.microsoft.com/clustering/2015/08/17/workgroup-and-multi-domain-clusters-in-windows-server-2016/  SQLServer 2016 AlwaysOn and new Log Transport behavior  https://blogs.technet.microsoft.com/simgreci/2016/06/17/sqlserver-2016-alwayson-and-new-log-transport-behavior/  SQL 2016 – It Just Runs Faster: AlwaysOn Parallel Compression / Improved Algorithms  https://blogs.msdn.microsoft.com/psssql/2016/05/03/sql-2016-it-just-runs-faster-alwayson-parallel-compression-improved-algorithms/  Configure load-balancing across read-only replicas  https://msdn.microsoft.com/en-us/library/hh710054.aspx#loadbalancing  Cross-Database Transactions and Distributed Transactions for Always On Availability Groups and Database Mirroring (SQL Server)  https://msdn.microsoft.com/en-us/library/ms366279(v=sql.130).aspx  SQL Server 2016 DTC Support In Availability Groups  https://blogs.technet.microsoft.com/dataplatform/2016/01/25/sql-server-2016-dtc-support-in-availability-groups/  Distributed Availability Groups (Always On Availability Groups)  https://msdn.microsoft.com/en-us/library/mt651673.aspx  Basic Availability Groups (Always On Availability Groups)  https://msdn.microsoft.com/en-us/library/mt614935.aspx