SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

直近開催のイベントはこちら!

EnterpriseZine編集部ではイベントを随時開催しております

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

今さら聞けないSQL Serverのメモリ最適化テクノロジーと、押さえておきたいSQL Serverのデータベースセキュリティ

H/Wの進化を活かしきるSQL Serverのインメモリテクノロジー

 前回は、SQL Serverがもつ広範な適応能力を皆様にご紹介する目的でSQL Server入門シリーズを連載しました。こちらの記事を読んで頂いた方々は、SQL Serverという製品がリレーショナルデータベースという単体機能だけでなく、データを取り巻くあらゆる物事を実現する為の総合的なデータプラットフォームであるということを理解頂けたものと思います。今回の連載では、今一度原点に立ち返り、SQL Serverのデータベースエンジンに絞って、ここ数年のお客様との会話で話題にあがることが多い”インメモリ”と“セキュリティ”に関して取り上げていきたいと思います。どちらも背景にはパフォーマンスの向上や情報漏洩の防止といった観点があるわけですが、ある種、二律背反の関係にあるこの両者はデータベースを使ったシステムの開発、保守、運用をしていく中で特に重要な要素です。今回の連載では、SQL Serverが持つインメモリ関連テクノロジーに関して本稿含めて全3回、セキュリティに関して1回の全4回でお届けします。

 日々のSQL Serverの商談活動でお客様と会話する際に「”インメモリ”だから早いんでしょ?」という質問をよく頂きます。”インメモリ” = 速い という漠然としたイメージが読者の皆さんの中、ひいてはこの業界の中に植え付けられているように感じています。

 これはこれで間違いではないのですが、今回の記事ではSQL Serverとメモリ関連テクノロジーを少し掘り下げてみたいと思います。

 SQL Serverに限らず古今東西の様々なリレーショナルデータベースは基本的にメモリが今よりもはるかに高価で貴重なものだった時代に設計されています。よって、データは処理に必要な時にメモリに読み出し、通常はディスクに置いておくのに最適なアーキテクチャーを取っています。

 しかし、この30年でメモリの価格は大幅に下がり、CPUはマルチコアが当たり前の世の中になってきました。実際に今日、CPUが40コア、搭載メモリが1TBというような一昔前のモンスターマシンは500万円以下で手に入るようになってきています。

 我々は、”インメモリだから速いですよ”と一口に片付けてしまうのではなく、お客様が実行するワークロードに最適なテクノロジーをご提供したいと考えています。SQL Serverではそれぞれのワークロードに応じて最適な選択ができるよう、2種類のメモリ関連テクノロジー(Hekaton、xVelocity)を様々に組み合わせた実装を行っています。

SQL Serverにおけるメモリ関連テクノロジーの実装
SQL Serverにおけるメモリ関連テクノロジーの実装

 ここでメモリを活用した技術アプローチと本連載において使用する用語について簡単に整理しておきます。

インメモリ型(メモリ常駐型)

 メモリの大容量化・低価格化により、数TBのメモリを搭載したサーバーを安価に導入できるようになりましたが、それに伴って市場には”インメモリ(データのメモリ常駐型)データベース”が登場してきました。ストレージよりも高速なメモリ上にデータを常駐させておくことで、従来のディスクベースのデータベースに比べ、処理によっては数十倍も高速になるケースも出てきました。しかし、導入に際してはまだ考慮すべき点があります。

  •  メモリよりもデータが大きくなった(データがメモリに収まらない)場合、システムは動作しなくなる。また、起動時のメモリへのデータロードに時間がかかる
  •  メモリにデータを載せただけでは従来のオンメモリ型と大きく変わらないが、関連するテクノロジーの改良により驚異的なパフォーマンス向上を可能とする

オンメモリ型(メモリ最適化型)

 近年、メモリの大容量化・低価格化だけでなく、CPUの高集積化・高速化も飛躍的な進歩を遂げています。メモリ最適化テクノロジーは、単にデータをメモリにロードして高速化しようとするだけでなく、高度な符号化・圧縮テクノロジーでより効率的にメモリを使用すると共に、CPUのマイクロアーキテクチャに適した命令やキャッシュ活用したテクノロジーです。

  •  メモリにデータが収まる場合にはインメモリテクノロジーと同等のスピードが得られる
  •  メモリにデータが収まらない場合でも、従来のデータベースに比べて高速処理が実現できる

インメモリ+α型(メモリ常駐が基本、但し動作モード変更が可能)

 SQL Server の分析データベース機能である Analysis Services 表形式モードは、マイクロソフトが開発したメモリ最適化データ管理テクノロジーであるxVelocity を利用したインメモリ型(メモリ常駐型)分析データベースです。ただし、Analysis Services 表形式モードにおいて扱うデータがメモリに収まらない場合や、データソースへリアルタイムアクセスする必要がある場合には DirectQuery 機能によりメモリへのロードを回避することもできるようになっています。

 これらのテクノロジーは、SQL Serverを利用して下さる皆さんにとって使い難い、一部の人しか使えないものであっては意味がありません。我々マイクロソフトは、ライセンスやソフトウェアコンポーネントといった側面においてもSQL Serverという製品を購入頂ければ追加で何かを必要とすることなく全てのインメモリ関連テクノロジーをご利用頂けるようにしています。

次のページ
 搭載可能メモリ量の増大と価格の下落

この記事は参考になりましたか?

  • Facebook
  • Twitter
  • Pocket
  • note
今さら聞けないSQL Serverのメモリ最適化テクノロジーと、押さえておきたいSQL Serverのデータベースセキュリティ連載記事一覧

もっと読む

この記事の著者

坂本禎尚(サカモト ヨシヒサ)

日本マイクロソフト株式会社 日本マイクロソフトでSQL Serverを中心としたデータプラットフォーム製品群の技術営業を担当しているチームに所属しています。データベースのコアスキルはDB2、Oracleで学び、SQL Serverはマイクロソフトに入社してから勉強し10年を超えたところで、BI/BA領域はもちろん、Azureのデータプラットフォームサービス含めた領域が現在の担当範囲です。技術営業を担当しているチームのブログ https://blogs.msdn.microsoft.com/dataplatjp/ にも投稿していますので、こちらも是非フォロー下さい。  

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/8532 2016/10/11 06:00

Job Board

AD

おすすめ

アクセスランキング

アクセスランキング

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング