SlideShare una empresa de Scribd logo
1 de 38
Descargar para leer sin conexión
SQL Server および Azure SQL の
インストールと管理
SQL Beginners Day #1 (19th Jul 2020)
Yuji Masaoka (まっぴぃ⊿)
• ⻘いRの中の⼈
• リクルートグループの情シス担当
- SharePoint や SQL Server などを担当
- チーム内における DevOps 活動の推進なども担当
• Twitter: @mappie_kochi / GitHub: ymasaoka
• JSSUG Organizer
• JCDUG Organizer
• Perfume、Disney、ジグソーパズル🧩 etc. が趣味
• この資料は、2020/7/19 現在の情報に基づいて記載しています。
• この資料内の記述に誤りがないことは保証いたしかねます。
• この資料内にある記述は、Microsoft 社やその他、登壇者が所属する会社の公式⾒解ではありません。
3
はじめに
Agenda
• データベースについて
• SQL Server/Azure SQL Database のインストール
• SQL Server/Azure SQL Database のライセンス
• SQL Server Management Studio (SSMS) と
Azure Data Studio (ADS)
SQL Beginners Day #1
4
5
データベースについ
て
About Databases
データベースの種類
6
• 階層型
• データをヒエラルキー構造(⽊構造)で管理
• RDB(リレーショナルデータベース)
• ⼆次元表の形式でデータを管理(Excelのイメージ)
• OODB(オブジェクト指向データベース)
• XMLDB(XMLデータベース)
• NoSQL(Not-only SQL)
• SQLを使わずRDBにある⼀部の機能を捨ててパフォーマンスを追求
• NewSQL
RDB (Relational Database)
7
• ⽇本語︓リレーショナルデータベース
• 現在、主流となっているデータベース
• データ同⼠の関係性を⼆次元表で表現(関係モデル)
• 関係と呼ぶ概念でデータをモデル化
• 組(⾏)、属性(列)、定義域(ドメイン)、候補キー(主キー)、
外部キーなどで構成されている
• プログラミング⾔語でなくてもデータ操作が可能(SQL)
SQL (Structured Query Language) とは︖
データ操作のために備えている⾔語
• RDB に問い合わせを⾏うために利⽤する⾔語
• RDB に問い合わせ(クエリ)を実⾏し、結果を
返す
• データベース⾔語として規格が標準化されている
• ANSI(⽶国国家規格協会)
• ISO(国際標準化機構)
• さまざまな RDB 製品において、⽅⾔的な細かい
差は存在
• データベース⾔語(SQL)≠プログラミング⾔語
3つのSQL⽂法
• データ操作⾔語(DML)
• 検索(SELECT)
• 登録(INSERT)
• 更新(UPDATE)
• 削除(DELETE)
• データ定義議語(DDL)
• CREATE、DROP、ALTER、TRUNCATE
• データ制御⾔語(DCL)
• GRANT、REVOKE
8
DBMS とデータベースの違い
DBMS
• Database Management System
• データベース管理システム
• データベースの機能を提供するソフトウェアのこと
• リレーショナルデータベースのことに限定する場合は、
頭にRをつけてRDBMS
• つまり、データベースの機能や構造を表す抽象的
な概念を実現するために作られた具体的なソフト
ウェア(具体的実装)
データベース
• 機能や構造を表す抽象的な概念
• データベース > DBMS
• 抽象的な概念とは別にもう⼀つの意味もある
• SQL Serverの場合、階層構造の中にデータ
ベースの層がある
• インスタンス - データベース - スキーマ
9
SQL Server の
インストール
Install SQL Server & Azure SQL
10
11
SQL Server のインストール⼿段
Windows だけが SQL Server を利⽤できる → 過去の話に・・・
Windows Linux Kubernetes /
Container
Windows
従来通り Windows で SQL Server
• Windows OS上にGUIもしくはCUIで直接イ
ンストール
• オンプレミスやIaaSでSQL Serverを使うのであ
ればこの構成、という認識が多い
• Windowsフェールオーバークラスター(WSFC)
機能を使った冗⻑化構成(Always On) が構
築可能
• Active Directory を使った認証も可能
Linux
• SQL Server 2017 から Ubuntu に対応
• SQL Server 2019 で RHEL / SLES 対応
が追加
• Pacemaker を使⽤した冗⻑化構成
(Always On) が構築可能
• keytab を使⽤した Active Directory 認証
も使⽤可能
• ⼀部、Linux ではサポートされない機能もあり
※詳細は、こちら
RHEL / Ubuntu / SLES に対応
# 以下は RHEL の例
# Python 2 をインストール
sudo yum install python2 compat-openssl10
# リポジトリ構成ファイル取得
sudo curl -o /etc/yum.repos.d/mssql-server.repo
https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
# SQL Server インストール
sudo yum install -y mssql-server
# SQL Server のセットアップ
sudo /opt/mssql/bin/mssql-conf setup
コンテナー
• Docker Hub で公式のコンテナイメージが提供
されている
• SQL Server 2017 で Ubuntu ベースのコン
テナイイメージが登場
• SQL Server 2019 で RHEL ベースのコンテ
ナイメージが追加
Docker 上で SQL Server
# 何が pull 出来るかは https://hub.docker.com/_/microsoft-mssql-server
で確認
# RHEL ベースのイメージは mcr.Microsoft.com/mssql/rhel/server
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
# Docker Image 実⾏
sudo docker run ¥
-e "ACCEPT_EULA=Y” ¥
-e "SA_PASSWORD=<YourStrong@Passw0rd>" ¥
-e “MSSQL_PID=Developer” ¥
-p 1433:1433 --name mssql1 ¥
-d mcr.microsoft.com/mssql/server:2019-latest
Kubernetes
• Kubernetes上にSQL Serverを構築可能
• SQL Server、Spark、および HDFS コンテ
ナーのスケーラブルなクラスターを展開
• ビックデータの読み取りや書き込み、分析処理
などをリレーショナルデータと組み合わせて分析す
ることが可能
• 詳細は、こちら
SQL Server Big Data Clusters
もちろん Azure で SQL Server を利⽤することも可能
オンプレミスと同じ IaaS での利⽤
• Azure VM に SQL Server をインストール
• SQL Server on VMを利⽤
• OSやパッチの管理はこれまで通り⾃前で対応
• オンプレミス環境とほぼ同じ形式での運⽤が可能
PaaS のクラウドサービスとしての利⽤
• Azure SQL Database サービスを利⽤
• パッチは⾃動で適⽤され、常に最新バージョンの
SQL Databaseが利⽤可能
• サーバにログインしたり、SQL Serverの管理コマ
ンド実⾏が⼀部制限されている
• 単⼀データベースに加え、エラスティックプールや
Managed Instanceなどの種類が存在
• ⾃動バックアップやスケールアップなどにも対応
• 99.99%の SLA
16
17
SQL Database のデプロイモデル
• Single (単⼀) データベース
• Azure SQL Database の論理サーバ内にある個々のデータベースを利⽤する
• 1 SQL Server インスタンス 直下にある 1 データベースを利⽤するイメージ
• Elastic Pool
• Azure SQL Database の論理サーバ内に「エラスティック・プール」という領域を利⽤する
• エラスティック・プール内では、データベースを複数構築/管理できる
• Managed Instance
• 2020/5/13 Azure SQL Database 内のデプロイオプション扱いではなくなりました
• 新名称︓Azure SQL Managed Instance
Single、Elastic Pool、Managed Instance の3種類が存在
Azure SQL Managed Instance
• Azure SQL ファミリ内の1製品
• 旧 SQL Database Managed Instance
• Azure 上で SQL Server をインスタンス単位で利⽤で
き、PaaS のメリットも享受できる
• Azure ハイブリット特典も利⽤可能
19
SQL Server の
ライセンス
About SQL Server & Azure SQL licensing
SQL Server のライセンス形態
コア単位
• 物理OSの場合、物理サーバが搭載する全物理
コアに対してライセンスを適⽤
• 仮想OSの場合、仮想OSが認識する全仮想コア
に対してライセンスを適⽤
• 最⼩4コアライセンスからの適⽤が必要
• クライアントは無制限アクセスが可能 (CAL不要)
サーバ + CAL
• 物理または仮想OS環境毎にライセンスを適⽤
• 同⼀OS環境内で複数のSQL Serverインスタン
スを構築する場合は追加ライセンス不要
• クライアント端末またはユーザーに対してCALを購
⼊する必要あり(追加購⼊可能)
• クライアント端末=デバイスCAL
• ユーザー=ユーザーCAL
• CALを割り当てられた端末/ユーザーは、サーバラ
イセンスが適⽤されたすべてのSQL Server へ接
続が可能
20
インスタンスとデータベースの違い
インスタンス
• データベースを管理するマネージャー的な存在
• プロセス
• データベースを含めたSQL Server全体のサービ
スを動かすモノ
• SQL Serverでは、インスタンスの種類が2つある
• 既定のインスタンス=デフォルトで1つのみ作成
• 名前付きインスタンス=複数作成可能
データベース
• 表やデータ本体
• 物理ファイル
• SQL Serverでは、2種類のデータベースが存在
• システムデータベース
• インスタンスレベルのメタデータ(インスタンスレ
ベルの制御情報、ユーザー情報)や⼀時作
業領域として利⽤
• ユーザーデータベース
• ユーザーのデータを格納する領域として利⽤
Azure SQL Database のライセンス形態
Core モデル
• 独⽴したスケーラビリティ
• コンピューティング、ストレージ、IOリソースを別々に
選択可能
• 柔軟性、制御、透明性を重視
• Azureハイブリッド特典と併⽤可能
DTU モデル
• シンプルで事前設定済み
• コンピューティング、ストレージ、IOリソースをバンド
ル済み
• シンプルで事前設定されたリソースオプション
• DTUよりCoreの⽅が購⼊推奨となった
22
23
SQL Server / Azure SQL のエディション
24
SQL Server / Azure SQL のエディション
• Enterprise
• ハイエンドのエディション。⼤企業や⾼度な要求を処理するシステム向け。すべての機能が利⽤可能。
• Standard
• 通常タイプのエディション。企業部⾨や⼩規模組織向け。⼀部機能の利⽤が制限されている。
• Developer
• 開発者向けのエディション。Enterprise と同じくすべての機能を利⽤できるが、実稼働(運⽤)サーバでの利⽤
はライセンス違反。あくまで開発者利⽤。無償。
• Web
• Webホスティング業者およびWeb VAP向け専⽤のエディション。詳細はホスティングパートナーに問い合わせ。
• Express
• エントリレベルのエディション。学習や⼩規模サーバーでのアプリケーション向け。機能制限もあり。無償。
• Evaluation
• 評価版のエディション。Enterprise と同じくすべての機能を利⽤できるが、180⽇の利⽤制限あり。無償。
25
SQL Server の冗⻑化
• 稼働中のハードウェア(SQL Server)に障害が発⽣した時に、予備のハードウェア(SQL Server)に
切り替えることで少しでも早くシステムの復旧を⾏うことが⽬的
• Always On という名称がある
• Always On 可⽤性グループ
• Always On FCI
冗⻑化=ハードウェアの⼆重化(多重化)
26
SQL Server の関連ツール
• SSIS (SQL Server Integration Services)
• エンタープライズ レベルのデータ統合およびデータ変換ソリューションを構築するためのプラットフォーム
• ファイルのコピーやダウンロード、データ ウェアハウスの読み込み、データのクリーニングとマイニング、SQL Server のオ
ブジェクトやデータの管理などにより、複雑なビジネスの問題を解決できる
• XML データ ファイル、フラット ファイル、リレーショナル データ ソースなど、さまざまなソースのデータを抽出および変換
して、1 つ以上のターゲットに読み込むことが可能
• SSAS (SQL Server Analysis Services)
• 意思決定⽀援とビジネス分析に使⽤される分析データエンジン (Vertipaq)
• ビジネスインテリジェンス (BI)、データ分析、レポートアプリケーション (Power BI、Excel、Reporting Services、
その他のデータ視覚化ツールなど) のためのエンタープライズレベルのセマンティックデータモデル機能を提供
• SSRS (SQL Server Reporting Services)
• モバイルおよびページ分割されたレポートの作成、配置、管理を⾏う⼀連のオンプレミス ツールおよびサービスを提供
• プログラミング機能を使⽤して、レポート作成機能を拡張およびカスタマイズすることも可能
27
その他のオプション (⼀部)
• Machine Learning Services
• リレーショナル データを使⽤して Python および R スクリプトを実⾏できるようになる機能
• Extensibility Framework (⾔語の拡張)
• SQL Server の内部から外部⾔語ランタイム環境でコードを実⾏する機能
• Python と R に加え、SQL Server 2019 から Java が追加
• PolyBase
• 外部データ ソースからデータを読み取る Transact-SQL クエリを SQL Server インスタンスで処理できる
• SQL Server 2019 から、Hadoop と Azure Blob に加え、Oracle や MongoDB、Excel などが追加
• Master Data Services
• データをモデルに整理して、データを更新するためのルールを作成し、データを更新するユーザーを制御することで、
組織のデータのマスターセットを管理することが可能
• Windows 環境のみ対応 (Azure SQL Managed Instance でも対応)
SQL Server
への接続
Connecting SQL Server
28
29
SQL Server へ接続するツール
• 公式から配布されているもの
• sqlcmd
• SSMS (SQL Server Management Studio)
• ADS (Azure Data Studio)
• ライブラリ関連
• ADO.NET Entity Framework
• ODBC Driver for SQL Server
• Microsoft SQL Server ⽤ JDBC Driver など
• サードパーティ製ツール (⼀例)
• SI Object Browser ※有償(国産)
• DataRow ※有償(海外製、旧:TeamSQL)
• DBeaver Community ※OSS
公式配布のものやサードパーティ製など、さまざまなものが存在
SQL Server Management Studio と
Azure Data Studio
SQL Server Management Studio
• Windows 専⽤
• SQL Server から Azure SQL Database ま
で、SQL インフラストラクチャを管理するための統
合環境
• SQL Server とデータベースのインスタンスを構成、
監視、および管理するためのツールが組み込まれ
ている
• データ層コンポーネントを配置、監視、アップグレー
ドしたり、クエリとスクリプトを作成したりすることが可
能
Azure Data Studio
• Windows、macOS、Linux で利⽤可能
• オンプレミス プラットフォーム、クラウド データ プラッ
トフォームの Microsoft ファミリを使⽤するデータ
プロフェッショナルを対象にした、クロスプラットフォー
ム データベース ツール
• IntelliSense、コード スニペット、ソース管理の統
合、統合されたターミナルを含む最新のエディター
エクスペリエンスが提供
• SSMS と⽐較してできること、できないことについて
は こちら を参照
31
SSMS vs ADS
SSMS と ADS どっちを使えばいいの︖
• 結論:⾃分に合う⽅を使⽤
• SSMSでは出来ないこと、
ADSで出来ないことがありま
す。
SSMSでもビックデータクラスター内の
SQL Serverに接続は可能です。
ただし、 HDFSなどは操作できません。
32
SQL と管理コマンド
• sqlcmd
• Transact-SQL やスクリプトなどの実⾏、SQL Server の管理で使⽤
• 最も推奨される CUI 管理ツール
• 構⽂については、こちら を参照
• bcp
• バイナリ・データの⼀括コピーなどを⾏うユーティリティ
• sqlps
• PowerShell ベースの CUI 管理ツール
• 現在、⾮推奨で将来のバージョンで削除予定
• SQL Server 構成マネージャー
• SQL Server に関連付けられているサービスの管理、 SQL Server が使⽤するネットワーク プロトコルの設
定、 SQL Server クライアント コンピューターからのネットワーク接続の設定を⾏うためのGUIツール
• SQL Server Management Studio
SQL 実⾏ではなく SQL Server の管理をしたい
SQL Server に接続してみよう
• コネクション
• 通信を⾏う機器やソフトウェアの間に確⽴された仮想的な専⽤通信路
• データベース本体とデータベースに接続する端末(PC)などとの間にある、DB接続専⽤の通信経路のこと
• SQL Server へ接続
• サーバ名(ホスト名)やインスタンス名、ユーザー情報などを⼊⼒して接続
コネクションって何︖
試しにデータベースを作ってみよう
• GUI でも CUI でも作成可能
接続して CREATE DATABASE
# CUI (スクリプトで作成)
CREATE DATABASE database_name
[ CONTAINMENT = { NONE | PARTIAL } ]
[ ON
[ PRIMARY ] <filespec> [ ,...n ]
[ , <filegroup> [ ,...n ] ]
[ LOG ON <filespec> [ ,...n ] ] ]
[ COLLATE collation_name ]
[ WITH <option> [,...n ] ]
[;]
まとめ
SQL Server は どこでも動くRDB
• 昔は Windows 専⽤だったが、今は Linux や
Docker/Kubernetes 上でも動く
• SQL や Transact-SQL を使って操作
• Azure 上でも利⽤可能
• Azure PaaS の SQL Server
• SQL Database
• Azure SQL Managed Instance
SQL Server への接続やツール
• GUI で接続できる公式のツール
• SQL Server Management Studio
• Azure Data Studio
• 関連ツール (SSIS、SSAS、SSRS)
36
参考資料
• Editions and supported features of SQL Server 2019 (15.x)
• Linux 上の SQL Server
• クイック スタート: Docker を使⽤して SQL Server コンテナー イメージを実⾏する
• SQL Server ビッグ データ クラスターとは
• SQL Server on Linux に関してよく寄せられる質問 (FAQ)
• Windows Server フェールオーバー クラスタリングと SQL Server
• Always On 可⽤性グループとは
• SQL Server Integration Services
• Analysis Services とは
• SQL Server Reporting Services (SSRS) とは
Microsoft Docs
参考資料
• マスター データ サービスの概要 (MDS)
• SQL の機械学習のドキュメント
• PolyBase とは
• sqlcmd ユーティリティ
• SQL Server Management Studio (SSMS) のダウンロード
• Azure Data Studio とは
• SQL Server 構成マネージャー
• Entity Framework の概要
• Microsoft SQL Server ⽤ JDBC Driver のダウンロード
• ODBC Driver for SQL Server のダウンロード
Microsoft Docs
Y U J I M A S A O K A
@ m a p p i e _ k o c h i
お疲れ様でした︕︕

Más contenido relacionado

La actualidad más candente

S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
Microsoft Azure Japan
 
Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介
Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介
Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介
Masayuki Ozawa
 
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみようSql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Masayuki Ozawa
 
Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介
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
 
COD2012 九州会場 Active Directory 障害対策
COD2012 九州会場 Active Directory 障害対策COD2012 九州会場 Active Directory 障害対策
COD2012 九州会場 Active Directory 障害対策
wintechq
 
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
Masayuki Ozawa
 
Webアプリケーションの パフォーマンス向上のコツ 概要編
 Webアプリケーションの パフォーマンス向上のコツ 概要編 Webアプリケーションの パフォーマンス向上のコツ 概要編
Webアプリケーションの パフォーマンス向上のコツ 概要編
Masahiro Nagano
 
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Masayuki Ozawa
 
DBA から開発者への情報提供
DBA から開発者への情報提供DBA から開発者への情報提供
DBA から開発者への情報提供
Masayuki Ozawa
 
Sql server 構築 運用 tips
Sql server 構築 運用 tipsSql server 構築 運用 tips
Sql server 構築 運用 tips
Masayuki Ozawa
 
S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行
S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行
S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行
Microsoft Azure Japan
 

La actualidad más candente (20)

S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
 
Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介
Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介
Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介
 
S16 Microsoft Azure 上での Chef 環境の構成
S16 Microsoft Azure 上での Chef 環境の構成S16 Microsoft Azure 上での Chef 環境の構成
S16 Microsoft Azure 上での Chef 環境の構成
 
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみようSql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
 
Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介
 
SQL Server コンテナ入門(Kubernetes編)
SQL Server コンテナ入門(Kubernetes編)SQL Server コンテナ入門(Kubernetes編)
SQL Server コンテナ入門(Kubernetes編)
 
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
 
COD2012 九州会場 Active Directory 障害対策
COD2012 九州会場 Active Directory 障害対策COD2012 九州会場 Active Directory 障害対策
COD2012 九州会場 Active Directory 障害対策
 
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
 
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 徹底分析 - 最新アーキテクチャの特徴を理解する
 
Sql server 2014 新機能の紹介
Sql server 2014 新機能の紹介Sql server 2014 新機能の紹介
Sql server 2014 新機能の紹介
 
Webアプリケーションの パフォーマンス向上のコツ 概要編
 Webアプリケーションの パフォーマンス向上のコツ 概要編 Webアプリケーションの パフォーマンス向上のコツ 概要編
Webアプリケーションの パフォーマンス向上のコツ 概要編
 
Couchbaseの紹介 2015/03/05
Couchbaseの紹介 2015/03/05Couchbaseの紹介 2015/03/05
Couchbaseの紹介 2015/03/05
 
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
 
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
 
DBA から開発者への情報提供
DBA から開発者への情報提供DBA から開発者への情報提供
DBA から開発者への情報提供
 
Sql server 構築 運用 tips
Sql server 構築 運用 tipsSql server 構築 運用 tips
Sql server 構築 運用 tips
 
Azure sql database 入門 2014年10月版
Azure sql database 入門 2014年10月版Azure sql database 入門 2014年10月版
Azure sql database 入門 2014年10月版
 
S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行
S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行
S12 Windows Server 2003 SQL Server 2000 SQL Server 2005 を Azure 仮想マシンへ移行
 
Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能
 

Similar a SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理

2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟
貴仁 大和屋
 
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
Microsoft
 
2012年1月技術ひろば
2012年1月技術ひろば2012年1月技術ひろば
2012年1月技術ひろば
貴仁 大和屋
 

Similar a SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理 (20)

Sql azure入門
Sql azure入門Sql azure入門
Sql azure入門
 
2011/11/26 Dot netlab
2011/11/26 Dot netlab2011/11/26 Dot netlab
2011/11/26 Dot netlab
 
2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟
 
SQL Azure Management and Security
SQL Azure Management and SecuritySQL Azure Management and Security
SQL Azure Management and Security
 
Microsoft Azure build & ignight update summary
Microsoft Azure build & ignight update summary Microsoft Azure build & ignight update summary
Microsoft Azure build & ignight update summary
 
Start SQL Server with Docker
Start SQL Server with DockerStart SQL Server with Docker
Start SQL Server with Docker
 
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
 
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザイン
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザインオープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザイン
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザイン
 
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
 
2012年1月技術ひろば
2012年1月技術ひろば2012年1月技術ひろば
2012年1月技術ひろば
 
オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用オンプレでもクラウドでも データベースサーバの運用
オンプレでもクラウドでも データベースサーバの運用
 
おいしいフルマネージドデータベース はじめました
おいしいフルマネージドデータベース はじめましたおいしいフルマネージドデータベース はじめました
おいしいフルマネージドデータベース はじめました
 
20180216 sapporo techbar_db_migration
20180216 sapporo techbar_db_migration20180216 sapporo techbar_db_migration
20180216 sapporo techbar_db_migration
 
Windows環境でのMySQL
Windows環境でのMySQLWindows環境でのMySQL
Windows環境でのMySQL
 
MicrosoftのOSSへの取り組み
MicrosoftのOSSへの取り組みMicrosoftのOSSへの取り組み
MicrosoftのOSSへの取り組み
 
はじめての Azure 開発
はじめての Azure 開発はじめての Azure 開発
はじめての Azure 開発
 
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティス
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティスDBP-008_SQL Server on Azure VM 最新情報とベスト プラクティス
DBP-008_SQL Server on Azure VM 最新情報とベスト プラクティス
 
【de:code 2020】 Azure インフラ 最新アップデート!!
【de:code 2020】 Azure インフラ 最新アップデート!!【de:code 2020】 Azure インフラ 最新アップデート!!
【de:code 2020】 Azure インフラ 最新アップデート!!
 
20181120 HowtoFlow
20181120 HowtoFlow20181120 HowtoFlow
20181120 HowtoFlow
 
Sparkにプルリク投げてみた
Sparkにプルリク投げてみたSparkにプルリク投げてみた
Sparkにプルリク投げてみた
 

Más de Oshitari_kochi

Más de Oshitari_kochi (20)

Azure SQL MI Link で移行も DR もポチッとな、の時代へ
Azure SQL MI Link で移行も DR もポチッとな、の時代へAzure SQL MI Link で移行も DR もポチッとな、の時代へ
Azure SQL MI Link で移行も DR もポチッとな、の時代へ
 
Azure Policy + Azure RBAC の導入に際して得たアレコレ
Azure Policy + Azure RBAC の導入に際して得たアレコレAzure Policy + Azure RBAC の導入に際して得たアレコレ
Azure Policy + Azure RBAC の導入に際して得たアレコレ
 
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選
SPS 開発から SPO 開発に変わる際に気をつけなければならないポイント 3 選
 
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
 
試験スキルのアウトラインから得たMCP試験受験のコツ
試験スキルのアウトラインから得たMCP試験受験のコツ試験スキルのアウトラインから得たMCP試験受験のコツ
試験スキルのアウトラインから得たMCP試験受験のコツ
 
PySpark Intro Part.2 with SQL Graph
PySpark Intro Part.2 with SQL GraphPySpark Intro Part.2 with SQL Graph
PySpark Intro Part.2 with SQL Graph
 
ここから始めましょう、イチからーーいいえ、Cosmosから!
ここから始めましょう、イチからーーいいえ、Cosmosから!ここから始めましょう、イチからーーいいえ、Cosmosから!
ここから始めましょう、イチからーーいいえ、Cosmosから!
 
Azure Cosmos DB で始める Java + NoSQL 開発
Azure Cosmos DB で始める Java + NoSQL 開発Azure Cosmos DB で始める Java + NoSQL 開発
Azure Cosmos DB で始める Java + NoSQL 開発
 
Azure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについてAzure Cosmos DB の整合性レベルについて
Azure Cosmos DB の整合性レベルについて
 
Azure Cosmos DB のエンティティについて
Azure Cosmos DB のエンティティについてAzure Cosmos DB のエンティティについて
Azure Cosmos DB のエンティティについて
 
About entities of Azure Cosmos DB
About entities of Azure Cosmos DBAbout entities of Azure Cosmos DB
About entities of Azure Cosmos DB
 
Azure Synapse Link for Azure Cosmos DB
Azure Synapse Link for Azure Cosmos DBAzure Synapse Link for Azure Cosmos DB
Azure Synapse Link for Azure Cosmos DB
 
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
 
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
 
Start learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse LinkStart learning Azure Cosmos DB with Azure Synapse Link
Start learning Azure Cosmos DB with Azure Synapse Link
 
Get started with future C# .Net development with Docker
Get started with future C# .Net development with DockerGet started with future C# .Net development with Docker
Get started with future C# .Net development with Docker
 
Start Cosmos DB with VSCode Extension
Start Cosmos DB with VSCode ExtensionStart Cosmos DB with VSCode Extension
Start Cosmos DB with VSCode Extension
 
Summary of SQL Database Updates
Summary of SQL Database UpdatesSummary of SQL Database Updates
Summary of SQL Database Updates
 
Summary of SQL Server 2019 new features
Summary of SQL Server 2019 new featuresSummary of SQL Server 2019 new features
Summary of SQL Server 2019 new features
 
Explains Microsoft Extensibility SDK for Java for SQL Server
Explains Microsoft Extensibility SDK for Java for SQL ServerExplains Microsoft Extensibility SDK for Java for SQL Server
Explains Microsoft Extensibility SDK for Java for SQL Server
 

SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理

  • 1. SQL Server および Azure SQL の インストールと管理 SQL Beginners Day #1 (19th Jul 2020)
  • 2. Yuji Masaoka (まっぴぃ⊿) • ⻘いRの中の⼈ • リクルートグループの情シス担当 - SharePoint や SQL Server などを担当 - チーム内における DevOps 活動の推進なども担当 • Twitter: @mappie_kochi / GitHub: ymasaoka • JSSUG Organizer • JCDUG Organizer • Perfume、Disney、ジグソーパズル🧩 etc. が趣味
  • 3. • この資料は、2020/7/19 現在の情報に基づいて記載しています。 • この資料内の記述に誤りがないことは保証いたしかねます。 • この資料内にある記述は、Microsoft 社やその他、登壇者が所属する会社の公式⾒解ではありません。 3 はじめに
  • 4. Agenda • データベースについて • SQL Server/Azure SQL Database のインストール • SQL Server/Azure SQL Database のライセンス • SQL Server Management Studio (SSMS) と Azure Data Studio (ADS) SQL Beginners Day #1 4
  • 6. データベースの種類 6 • 階層型 • データをヒエラルキー構造(⽊構造)で管理 • RDB(リレーショナルデータベース) • ⼆次元表の形式でデータを管理(Excelのイメージ) • OODB(オブジェクト指向データベース) • XMLDB(XMLデータベース) • NoSQL(Not-only SQL) • SQLを使わずRDBにある⼀部の機能を捨ててパフォーマンスを追求 • NewSQL
  • 7. RDB (Relational Database) 7 • ⽇本語︓リレーショナルデータベース • 現在、主流となっているデータベース • データ同⼠の関係性を⼆次元表で表現(関係モデル) • 関係と呼ぶ概念でデータをモデル化 • 組(⾏)、属性(列)、定義域(ドメイン)、候補キー(主キー)、 外部キーなどで構成されている • プログラミング⾔語でなくてもデータ操作が可能(SQL)
  • 8. SQL (Structured Query Language) とは︖ データ操作のために備えている⾔語 • RDB に問い合わせを⾏うために利⽤する⾔語 • RDB に問い合わせ(クエリ)を実⾏し、結果を 返す • データベース⾔語として規格が標準化されている • ANSI(⽶国国家規格協会) • ISO(国際標準化機構) • さまざまな RDB 製品において、⽅⾔的な細かい 差は存在 • データベース⾔語(SQL)≠プログラミング⾔語 3つのSQL⽂法 • データ操作⾔語(DML) • 検索(SELECT) • 登録(INSERT) • 更新(UPDATE) • 削除(DELETE) • データ定義議語(DDL) • CREATE、DROP、ALTER、TRUNCATE • データ制御⾔語(DCL) • GRANT、REVOKE 8
  • 9. DBMS とデータベースの違い DBMS • Database Management System • データベース管理システム • データベースの機能を提供するソフトウェアのこと • リレーショナルデータベースのことに限定する場合は、 頭にRをつけてRDBMS • つまり、データベースの機能や構造を表す抽象的 な概念を実現するために作られた具体的なソフト ウェア(具体的実装) データベース • 機能や構造を表す抽象的な概念 • データベース > DBMS • 抽象的な概念とは別にもう⼀つの意味もある • SQL Serverの場合、階層構造の中にデータ ベースの層がある • インスタンス - データベース - スキーマ 9
  • 10. SQL Server の インストール Install SQL Server & Azure SQL 10
  • 11. 11 SQL Server のインストール⼿段 Windows だけが SQL Server を利⽤できる → 過去の話に・・・ Windows Linux Kubernetes / Container
  • 12. Windows 従来通り Windows で SQL Server • Windows OS上にGUIもしくはCUIで直接イ ンストール • オンプレミスやIaaSでSQL Serverを使うのであ ればこの構成、という認識が多い • Windowsフェールオーバークラスター(WSFC) 機能を使った冗⻑化構成(Always On) が構 築可能 • Active Directory を使った認証も可能
  • 13. Linux • SQL Server 2017 から Ubuntu に対応 • SQL Server 2019 で RHEL / SLES 対応 が追加 • Pacemaker を使⽤した冗⻑化構成 (Always On) が構築可能 • keytab を使⽤した Active Directory 認証 も使⽤可能 • ⼀部、Linux ではサポートされない機能もあり ※詳細は、こちら RHEL / Ubuntu / SLES に対応 # 以下は RHEL の例 # Python 2 をインストール sudo yum install python2 compat-openssl10 # リポジトリ構成ファイル取得 sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo # SQL Server インストール sudo yum install -y mssql-server # SQL Server のセットアップ sudo /opt/mssql/bin/mssql-conf setup
  • 14. コンテナー • Docker Hub で公式のコンテナイメージが提供 されている • SQL Server 2017 で Ubuntu ベースのコン テナイイメージが登場 • SQL Server 2019 で RHEL ベースのコンテ ナイメージが追加 Docker 上で SQL Server # 何が pull 出来るかは https://hub.docker.com/_/microsoft-mssql-server で確認 # RHEL ベースのイメージは mcr.Microsoft.com/mssql/rhel/server sudo docker pull mcr.microsoft.com/mssql/server:2019-latest # Docker Image 実⾏ sudo docker run ¥ -e "ACCEPT_EULA=Y” ¥ -e "SA_PASSWORD=<YourStrong@Passw0rd>" ¥ -e “MSSQL_PID=Developer” ¥ -p 1433:1433 --name mssql1 ¥ -d mcr.microsoft.com/mssql/server:2019-latest
  • 15. Kubernetes • Kubernetes上にSQL Serverを構築可能 • SQL Server、Spark、および HDFS コンテ ナーのスケーラブルなクラスターを展開 • ビックデータの読み取りや書き込み、分析処理 などをリレーショナルデータと組み合わせて分析す ることが可能 • 詳細は、こちら SQL Server Big Data Clusters
  • 16. もちろん Azure で SQL Server を利⽤することも可能 オンプレミスと同じ IaaS での利⽤ • Azure VM に SQL Server をインストール • SQL Server on VMを利⽤ • OSやパッチの管理はこれまで通り⾃前で対応 • オンプレミス環境とほぼ同じ形式での運⽤が可能 PaaS のクラウドサービスとしての利⽤ • Azure SQL Database サービスを利⽤ • パッチは⾃動で適⽤され、常に最新バージョンの SQL Databaseが利⽤可能 • サーバにログインしたり、SQL Serverの管理コマ ンド実⾏が⼀部制限されている • 単⼀データベースに加え、エラスティックプールや Managed Instanceなどの種類が存在 • ⾃動バックアップやスケールアップなどにも対応 • 99.99%の SLA 16
  • 17. 17 SQL Database のデプロイモデル • Single (単⼀) データベース • Azure SQL Database の論理サーバ内にある個々のデータベースを利⽤する • 1 SQL Server インスタンス 直下にある 1 データベースを利⽤するイメージ • Elastic Pool • Azure SQL Database の論理サーバ内に「エラスティック・プール」という領域を利⽤する • エラスティック・プール内では、データベースを複数構築/管理できる • Managed Instance • 2020/5/13 Azure SQL Database 内のデプロイオプション扱いではなくなりました • 新名称︓Azure SQL Managed Instance Single、Elastic Pool、Managed Instance の3種類が存在
  • 18. Azure SQL Managed Instance • Azure SQL ファミリ内の1製品 • 旧 SQL Database Managed Instance • Azure 上で SQL Server をインスタンス単位で利⽤で き、PaaS のメリットも享受できる • Azure ハイブリット特典も利⽤可能
  • 19. 19 SQL Server の ライセンス About SQL Server & Azure SQL licensing
  • 20. SQL Server のライセンス形態 コア単位 • 物理OSの場合、物理サーバが搭載する全物理 コアに対してライセンスを適⽤ • 仮想OSの場合、仮想OSが認識する全仮想コア に対してライセンスを適⽤ • 最⼩4コアライセンスからの適⽤が必要 • クライアントは無制限アクセスが可能 (CAL不要) サーバ + CAL • 物理または仮想OS環境毎にライセンスを適⽤ • 同⼀OS環境内で複数のSQL Serverインスタン スを構築する場合は追加ライセンス不要 • クライアント端末またはユーザーに対してCALを購 ⼊する必要あり(追加購⼊可能) • クライアント端末=デバイスCAL • ユーザー=ユーザーCAL • CALを割り当てられた端末/ユーザーは、サーバラ イセンスが適⽤されたすべてのSQL Server へ接 続が可能 20
  • 21. インスタンスとデータベースの違い インスタンス • データベースを管理するマネージャー的な存在 • プロセス • データベースを含めたSQL Server全体のサービ スを動かすモノ • SQL Serverでは、インスタンスの種類が2つある • 既定のインスタンス=デフォルトで1つのみ作成 • 名前付きインスタンス=複数作成可能 データベース • 表やデータ本体 • 物理ファイル • SQL Serverでは、2種類のデータベースが存在 • システムデータベース • インスタンスレベルのメタデータ(インスタンスレ ベルの制御情報、ユーザー情報)や⼀時作 業領域として利⽤ • ユーザーデータベース • ユーザーのデータを格納する領域として利⽤
  • 22. Azure SQL Database のライセンス形態 Core モデル • 独⽴したスケーラビリティ • コンピューティング、ストレージ、IOリソースを別々に 選択可能 • 柔軟性、制御、透明性を重視 • Azureハイブリッド特典と併⽤可能 DTU モデル • シンプルで事前設定済み • コンピューティング、ストレージ、IOリソースをバンド ル済み • シンプルで事前設定されたリソースオプション • DTUよりCoreの⽅が購⼊推奨となった 22
  • 23. 23 SQL Server / Azure SQL のエディション
  • 24. 24 SQL Server / Azure SQL のエディション • Enterprise • ハイエンドのエディション。⼤企業や⾼度な要求を処理するシステム向け。すべての機能が利⽤可能。 • Standard • 通常タイプのエディション。企業部⾨や⼩規模組織向け。⼀部機能の利⽤が制限されている。 • Developer • 開発者向けのエディション。Enterprise と同じくすべての機能を利⽤できるが、実稼働(運⽤)サーバでの利⽤ はライセンス違反。あくまで開発者利⽤。無償。 • Web • Webホスティング業者およびWeb VAP向け専⽤のエディション。詳細はホスティングパートナーに問い合わせ。 • Express • エントリレベルのエディション。学習や⼩規模サーバーでのアプリケーション向け。機能制限もあり。無償。 • Evaluation • 評価版のエディション。Enterprise と同じくすべての機能を利⽤できるが、180⽇の利⽤制限あり。無償。
  • 25. 25 SQL Server の冗⻑化 • 稼働中のハードウェア(SQL Server)に障害が発⽣した時に、予備のハードウェア(SQL Server)に 切り替えることで少しでも早くシステムの復旧を⾏うことが⽬的 • Always On という名称がある • Always On 可⽤性グループ • Always On FCI 冗⻑化=ハードウェアの⼆重化(多重化)
  • 26. 26 SQL Server の関連ツール • SSIS (SQL Server Integration Services) • エンタープライズ レベルのデータ統合およびデータ変換ソリューションを構築するためのプラットフォーム • ファイルのコピーやダウンロード、データ ウェアハウスの読み込み、データのクリーニングとマイニング、SQL Server のオ ブジェクトやデータの管理などにより、複雑なビジネスの問題を解決できる • XML データ ファイル、フラット ファイル、リレーショナル データ ソースなど、さまざまなソースのデータを抽出および変換 して、1 つ以上のターゲットに読み込むことが可能 • SSAS (SQL Server Analysis Services) • 意思決定⽀援とビジネス分析に使⽤される分析データエンジン (Vertipaq) • ビジネスインテリジェンス (BI)、データ分析、レポートアプリケーション (Power BI、Excel、Reporting Services、 その他のデータ視覚化ツールなど) のためのエンタープライズレベルのセマンティックデータモデル機能を提供 • SSRS (SQL Server Reporting Services) • モバイルおよびページ分割されたレポートの作成、配置、管理を⾏う⼀連のオンプレミス ツールおよびサービスを提供 • プログラミング機能を使⽤して、レポート作成機能を拡張およびカスタマイズすることも可能
  • 27. 27 その他のオプション (⼀部) • Machine Learning Services • リレーショナル データを使⽤して Python および R スクリプトを実⾏できるようになる機能 • Extensibility Framework (⾔語の拡張) • SQL Server の内部から外部⾔語ランタイム環境でコードを実⾏する機能 • Python と R に加え、SQL Server 2019 から Java が追加 • PolyBase • 外部データ ソースからデータを読み取る Transact-SQL クエリを SQL Server インスタンスで処理できる • SQL Server 2019 から、Hadoop と Azure Blob に加え、Oracle や MongoDB、Excel などが追加 • Master Data Services • データをモデルに整理して、データを更新するためのルールを作成し、データを更新するユーザーを制御することで、 組織のデータのマスターセットを管理することが可能 • Windows 環境のみ対応 (Azure SQL Managed Instance でも対応)
  • 29. 29 SQL Server へ接続するツール • 公式から配布されているもの • sqlcmd • SSMS (SQL Server Management Studio) • ADS (Azure Data Studio) • ライブラリ関連 • ADO.NET Entity Framework • ODBC Driver for SQL Server • Microsoft SQL Server ⽤ JDBC Driver など • サードパーティ製ツール (⼀例) • SI Object Browser ※有償(国産) • DataRow ※有償(海外製、旧:TeamSQL) • DBeaver Community ※OSS 公式配布のものやサードパーティ製など、さまざまなものが存在
  • 30. SQL Server Management Studio と Azure Data Studio SQL Server Management Studio • Windows 専⽤ • SQL Server から Azure SQL Database ま で、SQL インフラストラクチャを管理するための統 合環境 • SQL Server とデータベースのインスタンスを構成、 監視、および管理するためのツールが組み込まれ ている • データ層コンポーネントを配置、監視、アップグレー ドしたり、クエリとスクリプトを作成したりすることが可 能 Azure Data Studio • Windows、macOS、Linux で利⽤可能 • オンプレミス プラットフォーム、クラウド データ プラッ トフォームの Microsoft ファミリを使⽤するデータ プロフェッショナルを対象にした、クロスプラットフォー ム データベース ツール • IntelliSense、コード スニペット、ソース管理の統 合、統合されたターミナルを含む最新のエディター エクスペリエンスが提供 • SSMS と⽐較してできること、できないことについて は こちら を参照
  • 31. 31 SSMS vs ADS SSMS と ADS どっちを使えばいいの︖ • 結論:⾃分に合う⽅を使⽤ • SSMSでは出来ないこと、 ADSで出来ないことがありま す。 SSMSでもビックデータクラスター内の SQL Serverに接続は可能です。 ただし、 HDFSなどは操作できません。
  • 32. 32 SQL と管理コマンド • sqlcmd • Transact-SQL やスクリプトなどの実⾏、SQL Server の管理で使⽤ • 最も推奨される CUI 管理ツール • 構⽂については、こちら を参照 • bcp • バイナリ・データの⼀括コピーなどを⾏うユーティリティ • sqlps • PowerShell ベースの CUI 管理ツール • 現在、⾮推奨で将来のバージョンで削除予定 • SQL Server 構成マネージャー • SQL Server に関連付けられているサービスの管理、 SQL Server が使⽤するネットワーク プロトコルの設 定、 SQL Server クライアント コンピューターからのネットワーク接続の設定を⾏うためのGUIツール • SQL Server Management Studio SQL 実⾏ではなく SQL Server の管理をしたい
  • 33. SQL Server に接続してみよう • コネクション • 通信を⾏う機器やソフトウェアの間に確⽴された仮想的な専⽤通信路 • データベース本体とデータベースに接続する端末(PC)などとの間にある、DB接続専⽤の通信経路のこと • SQL Server へ接続 • サーバ名(ホスト名)やインスタンス名、ユーザー情報などを⼊⼒して接続 コネクションって何︖
  • 34. 試しにデータベースを作ってみよう • GUI でも CUI でも作成可能 接続して CREATE DATABASE # CUI (スクリプトで作成) CREATE DATABASE database_name [ CONTAINMENT = { NONE | PARTIAL } ] [ ON [ PRIMARY ] <filespec> [ ,...n ] [ , <filegroup> [ ,...n ] ] [ LOG ON <filespec> [ ,...n ] ] ] [ COLLATE collation_name ] [ WITH <option> [,...n ] ] [;]
  • 35. まとめ SQL Server は どこでも動くRDB • 昔は Windows 専⽤だったが、今は Linux や Docker/Kubernetes 上でも動く • SQL や Transact-SQL を使って操作 • Azure 上でも利⽤可能 • Azure PaaS の SQL Server • SQL Database • Azure SQL Managed Instance SQL Server への接続やツール • GUI で接続できる公式のツール • SQL Server Management Studio • Azure Data Studio • 関連ツール (SSIS、SSAS、SSRS)
  • 36. 36 参考資料 • Editions and supported features of SQL Server 2019 (15.x) • Linux 上の SQL Server • クイック スタート: Docker を使⽤して SQL Server コンテナー イメージを実⾏する • SQL Server ビッグ データ クラスターとは • SQL Server on Linux に関してよく寄せられる質問 (FAQ) • Windows Server フェールオーバー クラスタリングと SQL Server • Always On 可⽤性グループとは • SQL Server Integration Services • Analysis Services とは • SQL Server Reporting Services (SSRS) とは Microsoft Docs
  • 37. 参考資料 • マスター データ サービスの概要 (MDS) • SQL の機械学習のドキュメント • PolyBase とは • sqlcmd ユーティリティ • SQL Server Management Studio (SSMS) のダウンロード • Azure Data Studio とは • SQL Server 構成マネージャー • Entity Framework の概要 • Microsoft SQL Server ⽤ JDBC Driver のダウンロード • ODBC Driver for SQL Server のダウンロード Microsoft Docs
  • 38. Y U J I M A S A O K A @ m a p p i e _ k o c h i お疲れ様でした︕︕