SlideShare a Scribd company logo
SQL Server 2012 の新機能を使ってみよう。
        DB 管理者向け機能の紹介

                小澤 真之 (@Masayuki_Ozawa)
         http://engineermemo.wordpress.com
はじめに


      本資料は Denali (SQL Server 2012) CTP3 をベース
      に作成しています。
      そのため、製品版では動作が変わる可能性があります。
      あらかじめご了承ください。

      SQL Server 2012 RC0 は 2011 年末に提供開始予定
      SQL Server 2012 の RTM は 2012 年 1H に提供開始予定




CTP : Community Technology Preview
RC : Release Candidate (製品候補版)
 2
本日の Agenda

    AlwaysOn


      Contained (包含) Database


       Columnstore インデックス


      サーバーロールの作成


    管理ツールの機能強化


3                  SQLTO 第 3 回勉強会         2011/10/29
                   http://www.sqlto.net
Denali 新機能ハイライト
   High           Scalability &    Security &          Beyond          Web &       Business       Enterprise
 Availability     Performance     Managebility                         Breadth    Intelligence   Information
                                                      Relational
                                                                                                 Management


                                                                      PHP ドライバー     Unified
  AlwaysOn         15,000の        ユーザー定義             SSDT "Juneau"                               SSIS サーバー
                                                                                   Semantic
                  パーティション         サーバーロール
                                                                                    Model
                                                     Win32 アクセス        JDBC 4.0
  柔軟性のある                                                                                         Data Quality
                                    Contained             to           ドライバー         Project
 フェールオーバー         Columnstore                                                                     サービス
                  インデックス            Database         Database Files                "Crescent"
   ポリシー
                                                                      ローカル DB                     Master Data
                                   Distributed         FileTable                                 サービスの機能
                   FileStream                                                     インメモリ BI
 アプリケーション                            Replay                             UTF-16                       拡張
    中心の            の速度向上
 フェールオーバー                                              Semantic                                   Master Data
                                    OpsMgr                                        セルフサービス
                                                       Platform       結果セットの                        サービス
                   Full Text      Management                                        アラート
                                                                      ページング                        Add-in for
  読み取り可能な          の速度向上          Pack for HA
                                                       Full Globe                                    Excel
 マルチセカンダリ                                                             ARM プロセッサ     SSAS の
                                                        Spatial
                  空間データの                                                サポート        Sysprep      Change Data
                                  セカンダリを使用              サポート
                   速度向上           したバックアップ                                                         Capture
 オンライン操作                                                                          PowerPivot の    for Oracle
                                                      DAC の拡張                       機能拡張
                                    Windows
      HA for
                                    グループの                                          SharePoint
  StreamInsight                                      ODBC for Linux
                                   既定のスキーマ
                                                                                  共有サービスで
   Server Core                                        ハイブリッド                      レポーティング
    サポート                          Active Directory   アプリケーション
                                  With SharePoint       With
                                     For SSRS         SQL Azure
      4
参照資料 : Denali Overview What’s New Feature Technical Overview
AlwaysOn


      Contained (包含) Database


       Columnstore インデックス


      サーバーロールの作成


    管理ツールの機能強化


5                  SQLTO 第 3 回勉強会         2011/10/29
                   http://www.sqlto.net
AlwaysOn
    Availability Groups
     • データベースミラーリングよりさらに上の可用性を提供
      • 複数のセカンダリを保持することが可能
     • 透過的な接続によるフェールオーバー


      “いつでも” “どこからでも”
    Failover Clustering          使えるように
              柔軟な高可用性環境を提供
     • マルチサブネットでクラスターを構築可能
     • ファイルサーバーを使用した共有ディスク不要のクラスター
     •ただしファイルサーバーは Windows Server 2008 or R2 を使用する必要がある

     • tempdb に関してはローカルディスクに配置可能

     • 柔軟性のあるフェールオーバーポリシー


    Server Core
     • Server Core 上での SQL Server のサポート


6                           SQLTO 第 3 回勉強会                2011/10/29
                            http://www.sqlto.net
Availability Groups



7         SQLTO 第 3 回勉強会         2011/10/29
          http://www.sqlto.net
従来までの複製を保持した可用性環境
       SQL Server 2008 R2 までのミラーリングの構成
         プリンシパル                               ミラー
          (更新可能)                           (待機サーバー)


                    ミラーリング
                   エンドポイント




                    ウィットネス
                   (監視サーバー)
                                           プリンシパル : 1 台
                                             ミラー : 1台
                                           ウィットネス : 1 台

    8               SQLTO 第 3 回勉強会                 2011/10/29
                    http://www.sqlto.net
従来までの複製を保持した可用性環境
              SQL Server に対しての接続文字列を使用して
                     プリンシパルとミラーを識別


                                        プリンシパル   ミラー
    プリンシパル      ミラー




             Server=プリンシパルサーバー名;
             Failover Partner=ミラーサーバー名;
             Initial Catalog=ミラーリングデータベース名




9                      SQLTO 第 3 回勉強会            2011/10/29
                       http://www.sqlto.net
Availability Group を使用した可用性環境
          WSFC : Windows Server Failover Clustering


                           制御用
                        クラスターリソース
     プライマリ                                       セカンダリ
     (更新可能)                                     (読み取り可能な
                                               複数の待機サーバー)


                          ミラーリング
                         エンドポイント

                        プライマリ: 1 台
                        セカンダリ: 4 台

     Active Directory                必須


10                      SQLTO 第 3 回勉強会                2011/10/29
                        http://www.sqlto.net
Availability Group を使用した可用性環境
Availability Group
                      リスナーを経由してプライマリ / セカンダリに接続
                        接続文字列はリスナーに対しての接続情報


      プライマリ          セカンダリ                          プライマリ   セカンダリ




     リスナー                                           リスナー



                     Server=リスナー名;
                     Initial Catalog=AlwaysOnデータベース名;
                     ApplicationIntent=ReadOnly;




11                           SQLTO 第 3 回勉強会                 2011/10/29
                             http://www.sqlto.net
•   ミラーリングと Availability Group の接続の違い
     •   セカンダリサーバーの利用




12                  SQLTO 第 3 回勉強会           2011/10/29
                    http://www.sqlto.net
Failover Clustering



13         SQLTO 第 3 回勉強会         2011/10/29
           http://www.sqlto.net
従来までの一般的なクラスターの構成
                              サブネット
                            255.255.255.0
     192.168.0.1/24                              192.168.0.2/24




                         SELECT @@SERVERNAME
                         で死活監視




         共有ストレージ




                      System DB        User DB    tempdb



14                        SQLTO 第 3 回勉強会                     2011/10/29
                          http://www.sqlto.net
SQL Server 2012 で可能なクラスターの構成
               サブネット                                             サブネット
             255.255.255.0                                      255.255.0.0


             192.168.0.1                                         172.23.0.1




                                   sp_server_diagnosticsで
                                   インスタンスの死活監視
                      tempdb                                            tempdb


                ファイルサーバー




                                System DB         User DB

※ローカルディスクを使用した tempdb については SQL Server 2008 R2 でも -T3615 を使用することで設定可能

     15                             SQLTO 第 3 回勉強会                            2011/10/29
                                    http://www.sqlto.net
柔軟性のあるフェールオーバーポリシー

     SQL Server 2008 R2 までのクラスター
     • 定期的に [SELECT @@VERSION] を実行して、SQL Server の稼働状況を診断


     SQL Server 2012 のクラスター
      •[sp_server_diagnostics] を使用して、以下の 5 つの観点から稼働状況を診断

       •system / resource / query_processing /io_subsystem / events

     •FailureConditionLevel を変更することでフェールオーバーの条件を変更可能

       •Failover Clustering では 0 ~ 5 の 6 段階で設定可能

        •http://msdn.microsoft.com/en-us/library/ff878667(SQL.110).aspx

      •Availability Groups では 1 ~ 5 の 5 段階で設定可能

       •http://msdn.microsoft.com/en-us/library/ff878601(SQL.110).aspx




16                             SQLTO 第 3 回勉強会                             2011/10/29
                               http://www.sqlto.net
•   共有ディレクトリを使用した構成の確認
     •   ローカルディスクに配置した tempdb
     •   柔軟なフェールオーバーポリシーの設定




17               SQLTO 第 3 回勉強会         2011/10/29
                 http://www.sqlto.net
Server Core



18     SQLTO 第 3 回勉強会         2011/10/29
       http://www.sqlto.net
Server Core に SQL Server をインストール
     パッチ適用時のダウンタイムの低減

     •Server Core は最小限の構成で動作する Windows Server のため、適用
      対象となるパッチの数が少ない

      •OS は Windows Server 2008 R2 SP1 の Server Core を使用


     SQL Server のフル機能は使用できない

     • クライアントツール (SSMS / BIDS), Reporting Services は使用
      できない
      • http://msdn.microsoft.com/ja-jp/library/hh231669(SQL.110).aspx


     GUI の機能は使用できないので管理は基本的にリモートで実施

     •サーバー上でSQLCMD コマンドラインツールで管理も可能


19                             SQLTO 第 3 回勉強会                            2011/10/29
                               http://www.sqlto.net
•   Server Core にインストールした SQL Server に接続




20                  SQLTO 第 3 回勉強会         2011/10/29
                    http://www.sqlto.net
AlwaysOn


       Contained (包含) Database


        Columnstore インデックス


       サーバーロールの作成


     管理ツールの機能強化


21                  SQLTO 第 3 回勉強会         2011/10/29
                    http://www.sqlto.net
Contained (包含) Database

     ログインの包含

     • ユーザーデータベースにログイン情報を含んだユーザーを作成


     照合順序の包含

     • 一時テーブルの作成時に tempdb の照合順序ではなくユーザー
      データベースの照合順序を使用




22              SQLTO 第 3 回勉強会         2011/10/29
                http://www.sqlto.net
ログインの包含
今までのログイン方式                 SQL Server

                                 master             User DB



             ログイン                           ユーザー
              認証                            マッピング   ユーザー
                 ログイン
クライアント
      ユーザーがデータベース内で完結しているので、
       データベースをまたいだクエリの実行が難しい
 ログインの包含                   SQL Server

                                 master             User DB



             ログイン
              認証                                    ユーザー
クライアント         +
             ユーザー
             マッピング


 23                  SQLTO 第 3 回勉強会                   2011/10/29
                     http://www.sqlto.net
バックアップ / リストアで見る
            Contained データベースの動作




24   SQLTO 第 3 回勉強会         2011/10/29
     http://www.sqlto.net
照合順序の包含
Non Contained Database

              tempdb                                            User DB

         Japanese_XJIS_100_CI_AS                                  Japanese_BIN2

                  一時テーブル                                        CREATE TABLE #tmp

 INSERT INTO #tmp (Col1) VALUES (N'A‘)
 SELECT * FROM #tmp WHERE Col1 = N‘a'         検索結果あり

  Contained Database


            tempdb                                         User DB

        Japanese_XJIS_100_CI_AS                                   Japanese_BIN2

                    一時テーブル                                  CREATE TABLE #tmp

 INSERT INTO #tmp (Col1) VALUES (N'A‘)
 SELECT * FROM #tmp WHERE Col1 = N‘a'
                                             検索結果なし

   25                                    SQLTO 第 3 回勉強会                             2011/10/29
                                         http://www.sqlto.net
一時テーブル使用時の照合順序の違い
            テーブル変数使用時の照合順序




26   SQLTO 第 3 回勉強会         2011/10/29
     http://www.sqlto.net
AlwaysOn


       Contained (包含) Database


        Columnstore インデックス


       サーバーロールの作成


     管理ツールの機能強化


27                  SQLTO 第 3 回勉強会         2011/10/29
                    http://www.sqlto.net
インデックスの種類

     Rowstore インデックス

     • 従来からのインデックス

     • 行を基本としてデータを格納


     Columnstore インデックス

     • Project “Appolo” と呼ばれていたもの

     • PowerPivot で使用されている VertiPack エンジンを採用

     • 列を基本としてデータを格納




28                     SQLTO 第 3 回勉強会         2011/10/29
                       http://www.sqlto.net
Columnstore インデックスの制限
     一部のデータ型を含めることができない

      •binary / varbinary / ntext / text / image / varchar(max) / nvarchar(max) / uniqueidentifier /
      timestamp / sql_variant/ decimal (18 桁以上) numeric (18 桁以上) / datetimeoffset (2 桁以上) /
      CLR 型 (hierarchyid / spatial types) / xml


     設定可能な列数

      •1023 列を含むインデックスが作成可能

      •テーブルの最大列数は 1024 なのでほぼすべての列をインデックスに含むことができる

      •クラスター化 / 非クラスター化インデックスの最大列数は 16

      •900 バイト以上のデータをインデックスに含むことができる

      •クラスター化 / 非クラスター化インデックスは、インデックス内に含める列のサイズの合計を 900
       バイト以内にする必要がある


     データの更新

      •Columnstore インデックスを設定している場合、テーブルを直接更新することはできない

      •パーティショニングと組み合わせてパーティションのスイッチをすることでデータの追加は可能




29                                        SQLTO 第 3 回勉強会                                          2011/10/29
                                          http://www.sqlto.net
Rowstore インデックス
ID       姓     名         性別
     1   井口    拓海        男
     2   平岡    頼子        女
     3   小畑    美樹        女
     4   小宮   喜一郎        男
     5   前川    涼子        女


B-Tree (Balanced Tree) 構造
                                                                                                    ページ


ルートノード                                                    ID


 中間ノード                            ID                                             ID


                ID   姓   名   性別         ID   姓   名   性別        ID   姓   名   性別        ID    姓   名   性別

リーフノード




 30                                    SQLTO 第 3 回勉強会                                      2011/10/29
                                       http://www.sqlto.net
Columnstore インデックス
ID         姓          名      性別
     1     井口        拓海       男
     2     平岡        頼子       女
     3     小畑        美樹       女
     4     小宮        喜一郎      男
     5     前川        涼子       女



 Columnstore インデックス


            Segment        Segment   Segment   Segment
                ID           姓         名         性別             内部構成
                 1           井口       拓海         男
Rowgroup         2           平岡       頼子         女
                 3           小畑       美樹         女
                 4
                 5
                             小宮
                             前川
                                      喜一郎
                                      涼子
                                                 男
                                                 女
                                                               Dictionary
                ID           姓         名         性別


Rowgroup
                                                               Segment



  31                                    SQLTO 第 3 回勉強会                      2011/10/29
                                        http://www.sqlto.net
•   Columnstore Index の制限を見てみる
     •   Rowstore インデックスと Columnstore インデックスの
                                      読み取りページ数の違い




32                   SQLTO 第 3 回勉強会            2011/10/29
                     http://www.sqlto.net
AlwaysOn


       Contained (包含) Database


        Columnstore インデックス


       サーバーロールの作成


     管理ツールの機能強化


33                  SQLTO 第 3 回勉強会         2011/10/29
                    http://www.sqlto.net
サーバーロール
     ログインの権限を定型化したもの

     • 特定の権限の集まりをロールとして定義し、SQL Server のログイン
      に一定の権限を付与することができる

     • SQL Server ではあらかじめ固定サーバーロールとして、一定の役割
      を持つロールが準備されている

      • sysadmin : SQL Server の管理者、サーバーに対してすべての操作
       ができる



               サーバーロール

                    sysadmin


                               ログイン


34                    SQLTO 第 3 回勉強会           2011/10/29
                      http://www.sqlto.net
ログインに対しての権限の設定
     SQL Server 2008 R2 まで

     • ユーザーが独自のサーバーロールを作成することはできなかった

     • データベースロールは作成可能だったがサーバーロールは作成できなかった

     • サーバーロールで設定できる一部の権限を付与したい場合は、ログインに直接
     権限を付与する必要があった

     • 複数のログインに同等の権限を付与したい場合、個別に権限付与をする必要
       があった


     SQL Server 2012

     • ユーザーが独自のサーバーロールを作成することが可能になった
     • ログインに対しての権限の管理性が向上している


35                     SQLTO 第 3 回勉強会         2011/10/29
                       http://www.sqlto.net
サーバーロールを使用した DB の表示制御




36     SQLTO 第 3 回勉強会         2011/10/29
       http://www.sqlto.net
AlwaysOn


       Contained (包含) Database


        Columnstore インデックス


       サーバーロールの作成


     管理ツールの機能強化


37                  SQLTO 第 3 回勉強会         2011/10/29
                    http://www.sqlto.net
管理ツールの機能強化


     SQL Serer Management Studio

     • リストア機能の強化

     • 拡張イベントの作成

     • コードスニペットが利用可能に




38                SQLTO 第 3 回勉強会         2011/10/29
                  http://www.sqlto.net
•   SQL Server 2012 の SSMS のリストア画面
     •   拡張イベントの作成
     •   コードスニペットの利用




39                  SQLTO 第 3 回勉強会         2011/10/29
                    http://www.sqlto.net
最後に
    SQL Server 2012 には他にもたくさんの機能が追加さ
     れています。

    CTP3 はどなたでもダウンロード可能ですので、みなさ
     んもどんどん触ってみてください。
        自習書がいつもながらのハイクオリティで提供されていますの
         で、とても参考になります。
            http://www.microsoft.com/japan/sqlserver/2008/r2/denali/
             movie.mspx
            SQL Server "Denali" CTP3 新機能ダイジェスト
            SQL Server "Denali" 新機能ダイジェスト (BI 編)
            SQL Server "Deanli" DWH (データ ウェアハウス) 関連の新機能
            SQL Server AlwaysOn による可用性の向上

    40                         SQLTO 第 3 回勉強会                2011/10/29
                               http://www.sqlto.net

More Related Content

PDF
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
PPTX
Sql server 2016 ctp 3.0 新機能
PDF
Sql server よく聞く設定とその効果
PDF
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
PPTX
DBA から開発者への情報提供
PDF
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
PPTX
SQL Server 入門
PDF
Sql server 構築 運用 tips
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
Sql server 2016 ctp 3.0 新機能
Sql server よく聞く設定とその効果
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
DBA から開発者への情報提供
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
SQL Server 入門
Sql server 構築 運用 tips

What's hot (20)

PDF
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
PDF
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
PDF
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
PDF
Oracle と sql server 比べてみよう (sql server)
PDF
SQL Server 2014 データベースエンジン新機能
PDF
Sql database managed instance overview and internals
PPTX
DBTS2015_B35_SQLServer2016
PPTX
Sql server 2014 新機能の紹介 改訂版
PPTX
Sql server 運用 101
PDF
Sql server data store data access internals
PDF
Data consistency 入門 data partitioning ガイダンス
PPTX
Sql server のバックアップとリストアの基礎
PDF
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
PDF
待ち事象から考える、Sql server の改善ポイント
PDF
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
PDF
COD2012 T2/T3 : 実機で試す SQL Server の現状取得 ハンズオンマニュアル
PDF
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
PDF
オンプレのDbaがazureのデータベースを使ってみた
PDF
SQL Server パフォーマンスカウンター
PDF
A25 sql server data page structure deep dive
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Oracle と sql server 比べてみよう (sql server)
SQL Server 2014 データベースエンジン新機能
Sql database managed instance overview and internals
DBTS2015_B35_SQLServer2016
Sql server 2014 新機能の紹介 改訂版
Sql server 運用 101
Sql server data store data access internals
Data consistency 入門 data partitioning ガイダンス
Sql server のバックアップとリストアの基礎
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
待ち事象から考える、Sql server の改善ポイント
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
COD2012 T2/T3 : 実機で試す SQL Server の現状取得 ハンズオンマニュアル
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
オンプレのDbaがazureのデータベースを使ってみた
SQL Server パフォーマンスカウンター
A25 sql server data page structure deep dive
Ad

Similar to Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介 (20)

PDF
Denali ctp3 always on availability groups 概要
PPTX
非公式PaaS勉強会~新宿d社会議室
PPTX
Windows Azure 基盤を支えるテクノロジー
PPTX
PDF
いよいよ SAP Business Suite 正式サポート! SAP on AWS
PDF
CloudStack Overview@OSC2012Fukuoka
PDF
Cloudian presentation for Cassandra Conference 2012 in Tokyo
PDF
C25 SQL Server 2012 概要と Microsoft の Self-Service BI by Tsuyosi Kitagawa
PDF
XenServer Overview
PDF
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
PDF
WindowsAzureで女子力アップ
PPTX
Microsoft Azure build & ignight update summary
PDF
事例から見る規模別クラウド・データベースの選び方 (Oracle Database) (Oracle Cloudウェビナーシリーズ: 2021年6月30日)
PPTX
2014年12月04日 ヒーロー島 Azureスペシャル
PDF
[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...
PDF
Heroshima "Cloud & Security Day" and Night
PPTX
今後のビジネス モデルに対応する Azure プラットフォーム技術の活用
PPTX
Mashup Award 7 Caravan in Fukuoka
PPTX
LAMP技術者でも無理なくツカエルWindowsAzureで運営するソーシャルアプリの裏側
Denali ctp3 always on availability groups 概要
非公式PaaS勉強会~新宿d社会議室
Windows Azure 基盤を支えるテクノロジー
いよいよ SAP Business Suite 正式サポート! SAP on AWS
CloudStack Overview@OSC2012Fukuoka
Cloudian presentation for Cassandra Conference 2012 in Tokyo
C25 SQL Server 2012 概要と Microsoft の Self-Service BI by Tsuyosi Kitagawa
XenServer Overview
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
WindowsAzureで女子力アップ
Microsoft Azure build & ignight update summary
事例から見る規模別クラウド・データベースの選び方 (Oracle Database) (Oracle Cloudウェビナーシリーズ: 2021年6月30日)
2014年12月04日 ヒーロー島 Azureスペシャル
[db tech showcase Tokyo 2017] E23: クラウド異種データベース(AWS)へのデータベース移行時の注意点 ~レプリケーション...
Heroshima "Cloud & Security Day" and Night
今後のビジネス モデルに対応する Azure プラットフォーム技術の活用
Mashup Award 7 Caravan in Fukuoka
LAMP技術者でも無理なくツカエルWindowsAzureで運営するソーシャルアプリの裏側
Ad

More from Masayuki Ozawa (12)

PDF
Power apps formula cheat sheet
PDF
K8s install (single cluster)
PDF
Managed Instance チートシート
PDF
Pacemaker 操作方法メモ
PDF
Windows エンジニア向け sql server on linux のためのスキルアップデート
PDF
Sql server 2016 always on 可用性グループ new features
PPTX
ここからはじめる SQL Server の状態取得
PDF
SQL Server 簡易診断サービス ご紹介資料
PDF
SQL Server 現状診断サービス ご紹介資料
PDF
Always on 可用性グループ 構築時のポイント
PDF
Sql database 基本構成と直近で追加されていた機能の紹介
PDF
和牛をおいしく食べるには
Power apps formula cheat sheet
K8s install (single cluster)
Managed Instance チートシート
Pacemaker 操作方法メモ
Windows エンジニア向け sql server on linux のためのスキルアップデート
Sql server 2016 always on 可用性グループ new features
ここからはじめる SQL Server の状態取得
SQL Server 簡易診断サービス ご紹介資料
SQL Server 現状診断サービス ご紹介資料
Always on 可用性グループ 構築時のポイント
Sql database 基本構成と直近で追加されていた機能の紹介
和牛をおいしく食べるには

Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介

  • 1. SQL Server 2012 の新機能を使ってみよう。 DB 管理者向け機能の紹介 小澤 真之 (@Masayuki_Ozawa) http://engineermemo.wordpress.com
  • 2. はじめに 本資料は Denali (SQL Server 2012) CTP3 をベース に作成しています。 そのため、製品版では動作が変わる可能性があります。 あらかじめご了承ください。 SQL Server 2012 RC0 は 2011 年末に提供開始予定 SQL Server 2012 の RTM は 2012 年 1H に提供開始予定 CTP : Community Technology Preview RC : Release Candidate (製品候補版) 2
  • 3. 本日の Agenda AlwaysOn Contained (包含) Database Columnstore インデックス サーバーロールの作成 管理ツールの機能強化 3 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 4. Denali 新機能ハイライト High Scalability & Security & Beyond Web & Business Enterprise Availability Performance Managebility Breadth Intelligence Information Relational Management PHP ドライバー Unified AlwaysOn 15,000の ユーザー定義 SSDT "Juneau" SSIS サーバー Semantic パーティション サーバーロール Model Win32 アクセス JDBC 4.0 柔軟性のある Data Quality Contained to ドライバー Project フェールオーバー Columnstore サービス インデックス Database Database Files "Crescent" ポリシー ローカル DB Master Data Distributed FileTable サービスの機能 FileStream インメモリ BI アプリケーション Replay UTF-16 拡張 中心の の速度向上 フェールオーバー Semantic Master Data OpsMgr セルフサービス Platform 結果セットの サービス Full Text Management アラート ページング Add-in for 読み取り可能な の速度向上 Pack for HA Full Globe Excel マルチセカンダリ ARM プロセッサ SSAS の Spatial 空間データの サポート Sysprep Change Data セカンダリを使用 サポート 速度向上 したバックアップ Capture オンライン操作 PowerPivot の for Oracle DAC の拡張 機能拡張 Windows HA for グループの SharePoint StreamInsight ODBC for Linux 既定のスキーマ 共有サービスで Server Core ハイブリッド レポーティング サポート Active Directory アプリケーション With SharePoint With For SSRS SQL Azure 4 参照資料 : Denali Overview What’s New Feature Technical Overview
  • 5. AlwaysOn Contained (包含) Database Columnstore インデックス サーバーロールの作成 管理ツールの機能強化 5 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 6. AlwaysOn Availability Groups • データベースミラーリングよりさらに上の可用性を提供 • 複数のセカンダリを保持することが可能 • 透過的な接続によるフェールオーバー “いつでも” “どこからでも” Failover Clustering 使えるように 柔軟な高可用性環境を提供 • マルチサブネットでクラスターを構築可能 • ファイルサーバーを使用した共有ディスク不要のクラスター •ただしファイルサーバーは Windows Server 2008 or R2 を使用する必要がある • tempdb に関してはローカルディスクに配置可能 • 柔軟性のあるフェールオーバーポリシー Server Core • Server Core 上での SQL Server のサポート 6 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 7. Availability Groups 7 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 8. 従来までの複製を保持した可用性環境  SQL Server 2008 R2 までのミラーリングの構成 プリンシパル ミラー (更新可能) (待機サーバー) ミラーリング エンドポイント ウィットネス (監視サーバー) プリンシパル : 1 台 ミラー : 1台 ウィットネス : 1 台 8 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 9. 従来までの複製を保持した可用性環境 SQL Server に対しての接続文字列を使用して プリンシパルとミラーを識別 プリンシパル ミラー プリンシパル ミラー Server=プリンシパルサーバー名; Failover Partner=ミラーサーバー名; Initial Catalog=ミラーリングデータベース名 9 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 10. Availability Group を使用した可用性環境 WSFC : Windows Server Failover Clustering 制御用 クラスターリソース プライマリ セカンダリ (更新可能) (読み取り可能な 複数の待機サーバー) ミラーリング エンドポイント プライマリ: 1 台 セカンダリ: 4 台 Active Directory 必須 10 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 11. Availability Group を使用した可用性環境 Availability Group リスナーを経由してプライマリ / セカンダリに接続 接続文字列はリスナーに対しての接続情報 プライマリ セカンダリ プライマリ セカンダリ リスナー リスナー Server=リスナー名; Initial Catalog=AlwaysOnデータベース名; ApplicationIntent=ReadOnly; 11 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 12. ミラーリングと Availability Group の接続の違い • セカンダリサーバーの利用 12 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 13. Failover Clustering 13 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 14. 従来までの一般的なクラスターの構成 サブネット 255.255.255.0 192.168.0.1/24 192.168.0.2/24 SELECT @@SERVERNAME で死活監視 共有ストレージ System DB User DB tempdb 14 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 15. SQL Server 2012 で可能なクラスターの構成 サブネット サブネット 255.255.255.0 255.255.0.0 192.168.0.1 172.23.0.1 sp_server_diagnosticsで インスタンスの死活監視 tempdb tempdb ファイルサーバー System DB User DB ※ローカルディスクを使用した tempdb については SQL Server 2008 R2 でも -T3615 を使用することで設定可能 15 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 16. 柔軟性のあるフェールオーバーポリシー SQL Server 2008 R2 までのクラスター • 定期的に [SELECT @@VERSION] を実行して、SQL Server の稼働状況を診断 SQL Server 2012 のクラスター •[sp_server_diagnostics] を使用して、以下の 5 つの観点から稼働状況を診断 •system / resource / query_processing /io_subsystem / events •FailureConditionLevel を変更することでフェールオーバーの条件を変更可能 •Failover Clustering では 0 ~ 5 の 6 段階で設定可能 •http://msdn.microsoft.com/en-us/library/ff878667(SQL.110).aspx •Availability Groups では 1 ~ 5 の 5 段階で設定可能 •http://msdn.microsoft.com/en-us/library/ff878601(SQL.110).aspx 16 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 17. 共有ディレクトリを使用した構成の確認 • ローカルディスクに配置した tempdb • 柔軟なフェールオーバーポリシーの設定 17 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 18. Server Core 18 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 19. Server Core に SQL Server をインストール パッチ適用時のダウンタイムの低減 •Server Core は最小限の構成で動作する Windows Server のため、適用 対象となるパッチの数が少ない •OS は Windows Server 2008 R2 SP1 の Server Core を使用 SQL Server のフル機能は使用できない • クライアントツール (SSMS / BIDS), Reporting Services は使用 できない • http://msdn.microsoft.com/ja-jp/library/hh231669(SQL.110).aspx GUI の機能は使用できないので管理は基本的にリモートで実施 •サーバー上でSQLCMD コマンドラインツールで管理も可能 19 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 20. Server Core にインストールした SQL Server に接続 20 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 21. AlwaysOn Contained (包含) Database Columnstore インデックス サーバーロールの作成 管理ツールの機能強化 21 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 22. Contained (包含) Database ログインの包含 • ユーザーデータベースにログイン情報を含んだユーザーを作成 照合順序の包含 • 一時テーブルの作成時に tempdb の照合順序ではなくユーザー データベースの照合順序を使用 22 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 23. ログインの包含 今までのログイン方式 SQL Server master User DB ログイン ユーザー 認証 マッピング ユーザー ログイン クライアント ユーザーがデータベース内で完結しているので、 データベースをまたいだクエリの実行が難しい ログインの包含 SQL Server master User DB ログイン 認証 ユーザー クライアント + ユーザー マッピング 23 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 24. バックアップ / リストアで見る Contained データベースの動作 24 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 25. 照合順序の包含 Non Contained Database tempdb User DB Japanese_XJIS_100_CI_AS Japanese_BIN2 一時テーブル CREATE TABLE #tmp INSERT INTO #tmp (Col1) VALUES (N'A‘) SELECT * FROM #tmp WHERE Col1 = N‘a' 検索結果あり Contained Database tempdb User DB Japanese_XJIS_100_CI_AS Japanese_BIN2 一時テーブル CREATE TABLE #tmp INSERT INTO #tmp (Col1) VALUES (N'A‘) SELECT * FROM #tmp WHERE Col1 = N‘a' 検索結果なし 25 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 26. 一時テーブル使用時の照合順序の違い テーブル変数使用時の照合順序 26 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 27. AlwaysOn Contained (包含) Database Columnstore インデックス サーバーロールの作成 管理ツールの機能強化 27 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 28. インデックスの種類 Rowstore インデックス • 従来からのインデックス • 行を基本としてデータを格納 Columnstore インデックス • Project “Appolo” と呼ばれていたもの • PowerPivot で使用されている VertiPack エンジンを採用 • 列を基本としてデータを格納 28 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 29. Columnstore インデックスの制限 一部のデータ型を含めることができない •binary / varbinary / ntext / text / image / varchar(max) / nvarchar(max) / uniqueidentifier / timestamp / sql_variant/ decimal (18 桁以上) numeric (18 桁以上) / datetimeoffset (2 桁以上) / CLR 型 (hierarchyid / spatial types) / xml 設定可能な列数 •1023 列を含むインデックスが作成可能 •テーブルの最大列数は 1024 なのでほぼすべての列をインデックスに含むことができる •クラスター化 / 非クラスター化インデックスの最大列数は 16 •900 バイト以上のデータをインデックスに含むことができる •クラスター化 / 非クラスター化インデックスは、インデックス内に含める列のサイズの合計を 900 バイト以内にする必要がある データの更新 •Columnstore インデックスを設定している場合、テーブルを直接更新することはできない •パーティショニングと組み合わせてパーティションのスイッチをすることでデータの追加は可能 29 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 30. Rowstore インデックス ID 姓 名 性別 1 井口 拓海 男 2 平岡 頼子 女 3 小畑 美樹 女 4 小宮 喜一郎 男 5 前川 涼子 女 B-Tree (Balanced Tree) 構造 ページ ルートノード ID 中間ノード ID ID ID 姓 名 性別 ID 姓 名 性別 ID 姓 名 性別 ID 姓 名 性別 リーフノード 30 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 31. Columnstore インデックス ID 姓 名 性別 1 井口 拓海 男 2 平岡 頼子 女 3 小畑 美樹 女 4 小宮 喜一郎 男 5 前川 涼子 女 Columnstore インデックス Segment Segment Segment Segment ID 姓 名 性別 内部構成 1 井口 拓海 男 Rowgroup 2 平岡 頼子 女 3 小畑 美樹 女 4 5 小宮 前川 喜一郎 涼子 男 女 Dictionary ID 姓 名 性別 Rowgroup Segment 31 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 32. Columnstore Index の制限を見てみる • Rowstore インデックスと Columnstore インデックスの 読み取りページ数の違い 32 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 33. AlwaysOn Contained (包含) Database Columnstore インデックス サーバーロールの作成 管理ツールの機能強化 33 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 34. サーバーロール ログインの権限を定型化したもの • 特定の権限の集まりをロールとして定義し、SQL Server のログイン に一定の権限を付与することができる • SQL Server ではあらかじめ固定サーバーロールとして、一定の役割 を持つロールが準備されている • sysadmin : SQL Server の管理者、サーバーに対してすべての操作 ができる サーバーロール sysadmin ログイン 34 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 35. ログインに対しての権限の設定 SQL Server 2008 R2 まで • ユーザーが独自のサーバーロールを作成することはできなかった • データベースロールは作成可能だったがサーバーロールは作成できなかった • サーバーロールで設定できる一部の権限を付与したい場合は、ログインに直接 権限を付与する必要があった • 複数のログインに同等の権限を付与したい場合、個別に権限付与をする必要 があった SQL Server 2012 • ユーザーが独自のサーバーロールを作成することが可能になった • ログインに対しての権限の管理性が向上している 35 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 36. サーバーロールを使用した DB の表示制御 36 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 37. AlwaysOn Contained (包含) Database Columnstore インデックス サーバーロールの作成 管理ツールの機能強化 37 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 38. 管理ツールの機能強化 SQL Serer Management Studio • リストア機能の強化 • 拡張イベントの作成 • コードスニペットが利用可能に 38 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 39. SQL Server 2012 の SSMS のリストア画面 • 拡張イベントの作成 • コードスニペットの利用 39 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net
  • 40. 最後に  SQL Server 2012 には他にもたくさんの機能が追加さ れています。  CTP3 はどなたでもダウンロード可能ですので、みなさ んもどんどん触ってみてください。  自習書がいつもながらのハイクオリティで提供されていますの で、とても参考になります。  http://www.microsoft.com/japan/sqlserver/2008/r2/denali/ movie.mspx  SQL Server "Denali" CTP3 新機能ダイジェスト  SQL Server "Denali" 新機能ダイジェスト (BI 編)  SQL Server "Deanli" DWH (データ ウェアハウス) 関連の新機能  SQL Server AlwaysOn による可用性の向上 40 SQLTO 第 3 回勉強会 2011/10/29 http://www.sqlto.net