Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

SQLServer

SQLServerの無償版(Express版)の制限について+Enterprise版やStandard版との比較

投稿日:2020年11月20日 更新日:

<目次>

(1) SQL Serverの無償版(Express版)の制限について
 (1-1) 無償版(Express版)の主な制限について
 (1-2) Enterprise版やStandard版との比較
 (1-3) 比較項目の補足説明

(1) SQL Serverの無償版(Express版)の制限について

SQL Serverの無償エディションである「Express版」について「Enterprise版」や「Standard版」と比較した際の制限事項について記載します。

(1-1) 無償版(Express版)の主な制限について

(表)Express版の代表的な制約事項
特にデータベースの容量が10GBに制限されている点など、大きな制約事項があります。

【CPU系】 以下のいずれか少ない方
①1ソケット
②4コア
【メモリ】 1.4GBの制限あり
【ストレージ系】 10GBの制限あり
【運用系】 SQL Server Agentが使用不可
(※ジョブスケジューラ機能など)
【セキュリティ系】
データベースの暗号化
×(なし)
【災対・可用性】
AlwaysOn可用性グループ
=AlwaysOn Availability Group
×(なし)

目次にもどる

(1-2) Enterprise版やStandard版との比較

上記の通り、Express版に大きな制約がありますが、参考までに上位のStandard版やEnterprise版との、より詳細な比較表も掲載します。

(表)

比較項目 Enterprize
(法人向け)
Standard Express Edition
【料金】 有償 有償 無償
【運用系】
SQL Server Agent機能
○(あり) ○(あり) ×(なし)
【CPU系】
計算容量制限(インスタンス当たり)
=Max Compute Capacity
OSの上限まで 以下のいずれか少ない方
①4ソケット
②24コア
以下のいずれか少ない方
①1ソケット
②4コア
【メモリ系】
最大バッファプールメモリ
=Max Buffer Pool Memory
OSの上限まで 128GB 1410MB
【メモリ系】
最大カラムストアキャッシュ
=Maximum Columnstore segment cache per instance 
無制限 32GB 352MB
【メモリ系】
最大メモリ最適化テーブルのデータサイズ
=Max Memory-Optimized Data Size
無制限 32GB 352MB
【メモリ系】
バッファプール拡張
=Buffer Pool Extension
○(あり) ○(あり) ×(なし)
【リソース管理系】
リソースがバナー
=Resource Governer
○(あり) ×(なし) ×(なし)
【ストレージ系】
データベース容量制限
524PB
=524,000TB
=524,000,000GB
524PB
=524,000TB
=524,000,000GB
10GB
【セキュリティ系】
データベースの暗号化
○(あり) ○(あり) ×(なし)
【災対・可用性】
ログ配布
=Log Shipping
○(あり) ○(あり) ×(なし)
【災対・可用性】
ミラーリング
=Mirroring
○(あり) ○(あり) ×(なし)
※2019版は○(あり)
【災対・可用性】
AlwaysOn可用性グループ
=AlwaysOn Availability Group
○(あり) △(一部あり)
⇒(※注1)
×(なし)
【災対・可用性】
ピア ツー ピア レプリケーション
=Peer-to-Peer – Transactional Replication
○(あり) ×(なし) ×(なし)
【便利系】
フルテキスト検索
=Full Text Search
○(あり) ○(あり) ×(なし)

(※注1)
Standard版の場合はSQLServer 2016 Standard Editionより導入された「AlwaysOn BAG(基本可用性グループ)」機能が利用可能です。これはEnterprise版の「AlwaysOn AG(可用性グループ)」を制限付きで利用できるものになります。制約の例として、例えば「可用性グループに含められる対象DBが1つのみ(グループ:DB=1:1対応)」といったものがあります。具体的な制約事項は以下のMicrosoftの公式ドキュメントをご参照頂けたらと思います。

目次にもどる

(1-3) 比較項目の補足説明

上記の各比較項目の概要についても、表にまとめて整理します。

(表)

【運用系】
SQL Server Agent機能
ジョブをスケジューリングや、自動処理を担当するSQLServerのコンポーネントです。
Windowsのサービスとして実行されるため、OS起動と同時に起動させる事もできます。
【CPU系】
計算容量制限(インスタンス当たり)
=Max Compute Capacity
使用できるCPUコアやソケットを制限する機能です。
エディションが高度な程、制限が緩和されていきます。
【メモリ系】
最大バッファプールメモリ
=Max Buffer Pool Memory
データをメモリ上の「バッファキャッシュ」にキャッシュする際の上限容量です。
【メモリ系】
最大カラムストアキャッシュ
=Maximum Columnstore segment cache per instance 
SQLServer2012より導入された新しいインデックスの機能です。従来のインデックスは行ベース(行単位でデータを保持する)だったのに対して、カラムストア(Column Store)では列ベース(列単位でデータを保持する)になっているのが特徴です。
「最大カラムストアキャッシュ」はカラムストアインデックスにおいて利用できる領域で、バッファプールとは別に確保されます。
【メモリ系】
最大メモリ最適化テーブルのデータサイズ
=Max Memory-Optimized Data Size
「メモリ最適化テーブル」はSQLServerが確保しているメモリ上にテーブルのデータを常駐させる事で、ディスクIOを減らして高速化するための機能で、その保持データ容量の上限値です。
【メモリ系】
バッファプール拡張
=Buffer Pool Extension
バッファプールメモリを拡張するための機能で、SSDディスク上に拡張ファイルを作る事で、物理メモリの制限を超えて、バッファプールを拡張する事ができます。
【リソース管理系】
リソースがバナー
=Resource Governer
CPUやメモリやIOPS(1秒当たりのディスクIO)を制限する事でリソースの消費量を管理する機能です。
【災対・可用性】
ログ配布
=Log Shipping
プライマリDBにてトランザクションログのバックアップを自動で取得し、セカンダリDB(1つ~複数)にコピー&適用する機能です。
【災対・可用性】
ミラーリング
=Mirroring
可用性(停止せずに稼働し続ける能力)の向上のための機能で、同期or非同期でプライマリインスタンス⇒ミラーインスタンスへのミラーリング(≒遠隔地コピー)を行います。
ただし、近年では上位機能である「AlwaysOn可用性グループ」の利用が推奨されているため、Microsoftもそちらを使うように推奨しています。
【災対・可用性】
AlwaysOn可用性グループ
=AlwaysOn Availability Group
下記の記事を参照。
https://rainbow-engine.com/oracle-vs-sqlserver-redundancy/
【災対・可用性】
ピア ツー ピア レプリケーション
=Peer-to-Peer – Transactional Replication
複数のサーバーインスタンス間でデータの「レプリケーション」(データベースオブジェクトを複数コピーする)を行う事で可用性を高める機能です。
【便利系】
フルテキスト検索
=Full Text Search
通常のSQLでは非常に時間が掛かり困難な「テキスト検索」をテーブルに対して実行する機能です。

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-SQLServer

執筆者:


  1. 通りすがり より:

    AlwaysOn可用性グループ ですが、Standard版では制限があります。
    対象DBが1つだけなど。

    • RainbowEngine より:

      貴重なフィードバックを頂きありがとうございます。また確認およびご返信が遅れ申し訳ございませんでした。

      本件、ご指摘頂いた通りStandard版のAlwaysOn可用性グループは制限付きでの利用が可能のため、「×」ではなく「△」に修正し、注釈にも補記をいたしました。

      ご指摘頂きありがとうございました。

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

バッチファイルでSQLServerに接続する方法~sqlcmdの各オプション挙動を実例で紹介~

<目次> (1) バッチファイルでSQLServerに接続する方法  (1-1) 構文  (1-2) オプションの説明  (1-3) 各オプションの挙動をサンプルで確認 (1) バッチファイルでSQL …

SQLServerのインスタンスとは?インスタンス名の取得方法も併せてご紹介

<目次> (1) SQLServerのインスタンスとは?インスタンス名の取得方法も併せてご紹介  (1-1) インスタンスの概要  (1-2) インスタンスの種類  (1-3) インスタンスの確認方法 …

SQL Serverで起きる「ハンドシェイクエラー」の原因について

<目次> (1) SQL Serverで起きる「ハンドシェイクエラー」の原因について  (1-1) 発生状況・エラーメッセージ  (1-2) 原因  (1-3) 参考:SSPIとは? (1) SQL …

データベースのインデックスの基本と種類とOracleやSQL Serverでの特長について

(0)目次&概説 (1) データベースのインデックスとは (2) インデックスはどのような場面で使う? (3) インデックスの主要な方式  (3-1) B木  (3-2) B+木  (3-3) ビット …

SQLServerでクエリの履歴のトレースログを出力する方法

  <目次> (1) SQLServerでクエリの履歴のトレースログを出力する方法  (1-1) 概要  (1-2) 手順  (1-3) (参考)トレースの出力状況の確認方法  (1-4) …

  • English (United States)
  • 日本語
Top