SlideShare a Scribd company logo
1 of 32
Download to read offline
Azure SQL Database Ledger の概要
ブロックチェーンのパワーを SQL Server に
Jiayi Yang
Azure SQL Database ledger – SQL 内のブロックチェーン パワー
暗号化を通じたSQL デー
タの改ざん防止
暗号化証明による検証
を通じたすべての変更履
歴記録を提供可能
Azure と オンプレミスでお
なじみの SQL
What is a blockchain and how do they work?
SQL Server 2022 Ledger
参
考
What is a blockchain and how do they work?
データ
ハッシュ
一つ前のブロックのハッシュ
SQL Server 2022 Ledger
参
考
What is a blockchain and how do they work?
データ
From
To
Amount
SQL Server 2022 Ledger
参
考
What is a blockchain and how do they work?
ハッシュ
・・・9bc34549d565d9505b287de0cd20ac77be1d3f2c・・・
SQL Server 2022 Ledger
参
考
What is a blockchain and how do they work?
一つ前のブロックのハッシュ
前後関係性を安全に保つ
SQL Server 2022 Ledger
参
考
What is a blockchain and how do they work?
① ② ③
ハッシュ:
1Z8F
一つ前ハッシュ:0000
ハッシュ:
6BQ1
一つ前ハッシュ: 1Z8F
ハッシュ:
3H4Q
一つ前ハッシュ: 6BQ1
SQL Server 2022 Ledger
参
考
What is a blockchain and how do they work?
① ② ③
ハッシュ:
1Z8F
一つ前ハッシュ:0000
ハッシュ:
6BQ1
一つ前ハッシュ: 1Z8F
ハッシュ:
3H4Q
一つ前ハッシュ: 6BQ1
H62Y
SQL Server 2022 Ledger
参
考
SQL Server 2022 Ledger works
トランザクション1 (n) トランザクション2 (n) トランザクション3 (n)
Tran1の暗号化されたハッシュ
値がTran2と関連付け
+
Tran1の暗号化されたハッシュ
Tran2の暗号化されたハッシュ
値がTran3と関連付け
+
Tran2の暗号化されたハッシュ
データベースダイジェスト
不変ストレージ (Azure
Blob Storage) Or
Azure Confidential
Ledger
1ブロックに1Tranではなくて、
(n) Tranが含まれる。
データベースの検証
自動または手動
ダイジェスト比較
SQL Server 2022 Ledger
参
考
Ledger テーブル - 更新可能 と 追記専用
o 更新可能なLedgerテーブルは、更新と削除を可能にする標準の SQL テーブル
です
o 更新または削除された行の履歴は、履歴テーブルおよび照会しやすいLedger
ビューに保持されます
o 更新可能テーブルと履歴テーブルの整合性は、データベースLedgerからの暗号リ
ンクを通じて維持されます
o システムは定期的にデジタルレシートを、お客様が構成した信頼できるストレージ
サービスにアップロードします
o お客様はデジタルレシートを使用してデータの整合性を検証できます
o 追記専用Ledgerテーブルは、API での UPDATE/DELETE をブロックし、履歴
テーブルが必要なくなります
追加専用Ledger
テーブル
信頼できる
ストレージ
データベース Ledger
ブロック N ブロック N-1 ブロックN-2
更新可能な
Ledgerテーブル
履歴テーブル
Ledgerビュー
データベース ダイジェスト用の記憶域
不変 BLOB ストレージ (Azure SQL Database & SQL Server 2022)
• ポリシーに基づいて、一回の書き込み、読み取り可能
状態でデータを保存
• 作成されたデータ BLOB は、ユーザー指定の間隔で
読み取り専用モードに設定可能
• ポリシーに基づいてデータが機能的にロックまたは保
持
• 監査ログのサポートを提供可能だが、ログの作成者
を信頼する必要あり
• マイクロソフトは信頼できるコンピューティング ベース
Azure Confidential Ledger (ACL) (Azure SQL Database)
• データを一回書き込み、永続的に読み取り可能な状
態に
• Ledgerに書き込まれたデータ BLOB は変更不可
• 改ざん防止保証を提供する機密エンクレーブで実行
• お客様が検証できる暗号構造を含むトランザクション レシー
トと、シリアル化された Ledger ファイルを作成
• マイクロソフトは TCB の外にあります。Ledger ソースコードは
オープンソース (CCF)
例
更新可能な Ledger テーブル
勘定残高の更新可能な Ledger テーブルの作成
CREATE TABLE [Account].[Balance]
(
[CustomerID] INT NOT NULL PRIMARY KEY CLUSTERED,
[LastName] VARCHAR (50) NOT NULL,
[FirstName] VARCHAR (50) NOT NULL,
[Balance] DECIMAL (10,2) NOT NULL
)
WITH
(
SYSTEM_VERSIONING = ON,
LEDGER = ON
);
GO
2 つの個別トランザクションに 4 つのアカウントを追加
Tx1: 初期残高 $50 で Nick を追加
Tx2: John、 Joe 、Mary を追加
1. 各トランザクションは固有のトランザクショ
ン ID を持つ
2. Tx2 は 3 行を修正し、それぞれが
Ledger シーケンス番号で追跡
更新可能な Ledger テーブル
Nick の残高を $50 から $100 に更新
更新可能な Ledger テーブル ー Nick の残高は現在 $100
履歴テーブル ー Nick の期首残高を含む行の履歴値を表示
Ledger ビュー ー Nick の削除は更新として扱われ、その後に挿入として表示される
データベース Ledger
sys.database_ledger_transactions ー データベース内の各トランザクションのテーブル・ハッシュと、トラン
ザクションを発行したユーザーを記録
sys.database_ledger_blocks ー データベースに作成された各ブロックのハッシュと、ブロック内のトランザク
ションの数を記録
実際のデプロイ UI
Azure ポータルでの作成と管理の
エクスペリエンス
[作成] ペインに新たに[セキュリティ] タブが表示
Ledger 構成は既定で無効
すべてのテーブルが更新可能な Ledger テーブル
にする「Ledger データベース」が有効になっている
ことを確認
• 選択されていない場合でも、ユーザーは T-SQL でLedger
テーブルを作成可能
ダイジェストを自動的に生成し、Azure ストレージ
または ACL にアップロードする
• 選択しない場合、顧客は手動でダイジェストを生成して保存
する必要あり
ダイジェストは不変ポリシーによって保護されるべき
である警告表示
Ledger は管理エクスペリエンスの [セキュリティ]
セクションにあります
作成後に Ledger データベースを無効にすることは
できません
• 作成中に有効化しなかった場合、後で有効にすることはでき
ません
• ユーザーは T-SQL を使用して Ledger テーブルを作成できます
ダイジェストストレージに ACL を選択した場合、プ
レビューでは無料ですが、GA (価格未定) で課金
されることに注意
データベース検証を実行する T-SQL スクリ
プトがデータベースによって生成される
クエリ エディター、Azure Data Studio また
は SQL Server Management Studio で
実行する T-SQL をコピーします
実行すると、ダイジェストストレージの
場所と結果が表示されます
digest_locations が開かれ、検証が
ダイジェストを抽出した場所が表示さ
れます
"false" は、ダイジェストストレージの以
前の構成を示す
"true" は、ダイジェスト ストレージの現
在の構成を示す
SQL Server 2022 エディション単位の新機能比較表
SQL Server 2022 新機能 Express Standard Enterprise
コンピューティングと
ストレージ
最大コア数 4 24 OS Max
インスタンスあたりの最大メモリ使用量 1.41 GB 128 GB OS Max
最大ディスクサイズ 10 GB 524 PB 524 PB
Azure 対応
Synapse Link
SQL Ledger
Link feature for Azure SQL Managed Instance Link
Link feature for Azure SQL Managed Instance Link (基本的な可用性グループ)
Microsoft Purview ポリシー
言語と
プラットフォームの選択
JSON T-SQL 強化
モダン T-SQL 機能拡張
業界をリードする
パフォーマンスと
可用性
Query Store by default for new databases
組み込みのクエリ インテリジェンス: CE Feedback
組み込みのクエリ インテリジェンス: Parameter Sensitive Plan (PSP) Optimization
組み込みのクエリ インテリジェンス: DOP feedback
クエリストア:リードレプリカのサポート
バッファプールの並列スキャン
(2スレッドに制
限、64GBを超える
メモリのみ)
Peer to peer LWW レプリケーション
Intel QATバックアップの機能強化
(ソフトウェアのみ
)
(ハードウェア +
ソフトウェア)
時系列のサポート
安全性と
信頼性
セキュリティで保護されたエンクレーブが設定された Always Encrypted- 新機能
動的データマスキングの詳細な権限
SQL Server 2022
パフォーマンスとセキュリティのイノベーションを継続する Azure 対応の SQL Server
TPC データはすべて 2022 年 11 月 10 日現在のものである。
1米国国立標準技術研究所 (NIST) Comprehensive Vulnerability Database 2 http://www.tpc.org/4087; 3 http://www.tpc.org/3374; 4 http://www.tpc.org/3380; 5 https://tpc.org/3383; 6 http://www.tpc.org/3364; 7 https://tpc.org/3382;
オンプレミスのオペレーショナル
データに対するシームレスな分析
過去 10 年間にわたり
最も安全1
業界をリードする
パフォーマンスと可用性
データ資産全体の
可視性
Azure による
ビジネス継続性
No. 1 の OLTP パフォーマンス2
No. 1 の非クラスター化 DW の
パフォーマンス (1 TB3、3 TB4、
10 TB5、30 TB6、100 TB7)
Azure SQL Managed
Instance のリンク機能
Azure Synapse Link Microsoft Purview の統合 組み込みのクエリ インテリジェンス
SQL Server Ledger
Azure Arc 対応データ サービス Azure SQL
エッジからクラウド
Azure SQL Edge
主な機能
+
最も一貫性のあるデータ プラットフォーム
0
50
100
150
200
250
300
350
400
450
500
脆弱性
(2010
~
2020)
ポリシー
インサイト
Microsoft Purview
系列
SQL Server Ledger (台帳)の使用方法
台帳履歴の表示 台帳の確認
台帳テーブルを作成する
変更を加える
ダイジェストを保存する
更新可能タイプ
または追加のみタイプ
INSERT / UPDATE / DELETE
(更新可能タイプのみ)
手動または自動
* 台帳データベースも作成できます
SQL Server Ledger (台帳)
自動ダイジェストの作成方法と自動ダイジェストを使ったデータ信頼性の確認
Azure Blob ストレージか、ADLS Gen2を作成する
sqldbledgerdigests という container を作成する
SQL Server 2022に、Azure Blob ストレージにアクセス
する資格情報を作成する
自動ダイジェストのエンドポイントを指定する
データを変更する
ダイジェストで信頼性を確認する
ALTER DATABASE SCOPED CONFIGURATION
SET LEDGER_DIGEST_STORAGE_ENDPOINT = 'your
endpoint'
GO
DECLARE @digest_locations NVARCHAR (MAX) =
(SELECT * FROM sys.database_ledger_digest_locations
FOR JSON AUTO, INCLUDE_NULL_VALUES)
SELECT @digest_locations as digest_locations
BEGIN TRY
EXEC
sys.sp_verify_database_ledger_from_digest_storage
@digest_locations;
SELECT 'Ledger verification succeeded.' AS Result
END TRY
BEGIN CATCH
THROW
END CATCH
デモ (データ改ざん)
SQL Server 2022 Ledger
N
o
-
R
e
c
o
r
d
i
n
g
Ledgerテーブルのシナリオ
監査の合理化
暗号化を用いた証明データは、外部または内部 (監査人または規制当局) を問わず、他の当
事者に改ざんされていないことを証明できます
マルチパーティ ビジネスプロセス
ソリューションを中心とした一元化されたシステムのブロックチェーンに代替可能(信頼するが検証も
する)
ブロックチェーン向け信頼済みオフチェーンストア
ブロックチェーンソリューションは通常、チェーンデータを従来のデータベースに「オフチェーン」で複
製します。Ledger テーブルはブロックチェーンデータの整合性を維持します
リソース
アナウンス ブログ
https://aka.ms/sql-ledger-blog
Azure SQL Database Ledger のドキュメント
https://aka.ms/sql-ledger-docs
ホワイトペーパー
https://aka.ms/sql-ledger-whitepaper

More Related Content

Similar to Azure SQL Database Ledger & SQL Server 2022 Ledger

クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応Ryoma Nagata
 
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)日本マイクロソフト株式会社
 
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編日本マイクロソフト株式会社
 
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]日本マイクロソフト株式会社
 
SQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data PlatformSQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data PlatformDaiyu Hatakeyama
 
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介Microsoft
 
Oracle Cloud Infrastructure:2022年6月度サービス・アップデート
Oracle Cloud Infrastructure:2022年6月度サービス・アップデートOracle Cloud Infrastructure:2022年6月度サービス・アップデート
Oracle Cloud Infrastructure:2022年6月度サービス・アップデートオラクルエンジニア通信
 
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...Building asp.net core blazor and elasticsearch elasticsearch using visual stu...
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...Shotaro Suzuki
 
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策Atsuo Yamasaki
 
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~Naoki (Neo) SATO
 
2011/12/3 わんくま同盟
2011/12/3 わんくま同盟2011/12/3 わんくま同盟
2011/12/3 わんくま同盟貴仁 大和屋
 
Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果Masayuki Ozawa
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理junichi anno
 
Azure Antenna はじめての Azure Data Lake
Azure Antenna はじめての Azure Data LakeAzure Antenna はじめての Azure Data Lake
Azure Antenna はじめての Azure Data LakeHideo Takagi
 
JAZUG #26 AKS backup with Velero
JAZUG #26 AKS backup with VeleroJAZUG #26 AKS backup with Velero
JAZUG #26 AKS backup with VeleroTetsuya Sodo
 
Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428Shotaro Suzuki
 
Microsoft Ignite 2019 最新アップデート - Azure Big Data Services を俯瞰的に眺める
Microsoft Ignite 2019 最新アップデート - Azure Big Data Services を俯瞰的に眺めるMicrosoft Ignite 2019 最新アップデート - Azure Big Data Services を俯瞰的に眺める
Microsoft Ignite 2019 最新アップデート - Azure Big Data Services を俯瞰的に眺めるDaiyu Hatakeyama
 

Similar to Azure SQL Database Ledger & SQL Server 2022 Ledger (20)

クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
 
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
【de:code 2020】 Azure Synapse Analytics 技術編 ~ 最新の統合分析プラットフォームによる新しい価値の創出(前編)
 
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編
【de:code 2020】 今すぐはじめたい SQL Database のかしこい使い分け術 前編
 
[Japan Tech summit 2017] DAL 003
[Japan Tech summit 2017] DAL 003[Japan Tech summit 2017] DAL 003
[Japan Tech summit 2017] DAL 003
 
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
 
SQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data PlatformSQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data Platform
 
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
 
Oracle Cloud Infrastructure:2022年6月度サービス・アップデート
Oracle Cloud Infrastructure:2022年6月度サービス・アップデートOracle Cloud Infrastructure:2022年6月度サービス・アップデート
Oracle Cloud Infrastructure:2022年6月度サービス・アップデート
 
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...Building asp.net core blazor and elasticsearch elasticsearch using visual stu...
Building asp.net core blazor and elasticsearch elasticsearch using visual stu...
 
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策過去事例から学ぶ SharePoint パフォーマンス問題とその対策
過去事例から学ぶ SharePoint パフォーマンス問題とその対策
 
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
 
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 server よく聞く設定とその効果
Sql server よく聞く設定とその効果Sql server よく聞く設定とその効果
Sql server よく聞く設定とその効果
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理
 
Azure Antenna はじめての Azure Data Lake
Azure Antenna はじめての Azure Data LakeAzure Antenna はじめての Azure Data Lake
Azure Antenna はじめての Azure Data Lake
 
JAZUG #26 AKS backup with Velero
JAZUG #26 AKS backup with VeleroJAZUG #26 AKS backup with Velero
JAZUG #26 AKS backup with Velero
 
Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428Elastic7.12 release-new-features-on-0428
Elastic7.12 release-new-features-on-0428
 
Microsoft Ignite 2019 最新アップデート - Azure Big Data Services を俯瞰的に眺める
Microsoft Ignite 2019 最新アップデート - Azure Big Data Services を俯瞰的に眺めるMicrosoft Ignite 2019 最新アップデート - Azure Big Data Services を俯瞰的に眺める
Microsoft Ignite 2019 最新アップデート - Azure Big Data Services を俯瞰的に眺める
 
Azure Arc 概要
Azure Arc 概要Azure Arc 概要
Azure Arc 概要
 

More from Microsoft

SQL Server 2022 New Features Explain Japanese
SQL Server 2022 New Features Explain JapaneseSQL Server 2022 New Features Explain Japanese
SQL Server 2022 New Features Explain JapaneseMicrosoft
 
Synapse Link for SQL
Synapse Link for SQLSynapse Link for SQL
Synapse Link for SQLMicrosoft
 
SQL Server チューニング基礎
SQL Server チューニング基礎SQL Server チューニング基礎
SQL Server チューニング基礎Microsoft
 
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスAzure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスMicrosoft
 
Microsoft Ignite Fall 2021 Data Platform Update Topics
Microsoft Ignite Fall 2021 Data Platform Update TopicsMicrosoft Ignite Fall 2021 Data Platform Update Topics
Microsoft Ignite Fall 2021 Data Platform Update TopicsMicrosoft
 
Microsoft Build 2021 前夜祭 LT#4
Microsoft Build 2021 前夜祭 LT#4Microsoft Build 2021 前夜祭 LT#4
Microsoft Build 2021 前夜祭 LT#4Microsoft
 
Azure Data Studio
Azure Data StudioAzure Data Studio
Azure Data StudioMicrosoft
 
SQLServer 2019 on Linux Replication StepbyStep Using AzureVM
SQLServer 2019 on Linux Replication StepbyStep Using AzureVMSQLServer 2019 on Linux Replication StepbyStep Using AzureVM
SQLServer 2019 on Linux Replication StepbyStep Using AzureVMMicrosoft
 
Sql serve2019 staticdatamaskting
Sql serve2019 staticdatamasktingSql serve2019 staticdatamaskting
Sql serve2019 staticdatamasktingMicrosoft
 
Index tuning
Index tuningIndex tuning
Index tuningMicrosoft
 
Polybase scale outgroups
Polybase scale outgroupsPolybase scale outgroups
Polybase scale outgroupsMicrosoft
 

More from Microsoft (11)

SQL Server 2022 New Features Explain Japanese
SQL Server 2022 New Features Explain JapaneseSQL Server 2022 New Features Explain Japanese
SQL Server 2022 New Features Explain Japanese
 
Synapse Link for SQL
Synapse Link for SQLSynapse Link for SQL
Synapse Link for SQL
 
SQL Server チューニング基礎
SQL Server チューニング基礎SQL Server チューニング基礎
SQL Server チューニング基礎
 
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスAzure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL Poolベストプラクティス
 
Microsoft Ignite Fall 2021 Data Platform Update Topics
Microsoft Ignite Fall 2021 Data Platform Update TopicsMicrosoft Ignite Fall 2021 Data Platform Update Topics
Microsoft Ignite Fall 2021 Data Platform Update Topics
 
Microsoft Build 2021 前夜祭 LT#4
Microsoft Build 2021 前夜祭 LT#4Microsoft Build 2021 前夜祭 LT#4
Microsoft Build 2021 前夜祭 LT#4
 
Azure Data Studio
Azure Data StudioAzure Data Studio
Azure Data Studio
 
SQLServer 2019 on Linux Replication StepbyStep Using AzureVM
SQLServer 2019 on Linux Replication StepbyStep Using AzureVMSQLServer 2019 on Linux Replication StepbyStep Using AzureVM
SQLServer 2019 on Linux Replication StepbyStep Using AzureVM
 
Sql serve2019 staticdatamaskting
Sql serve2019 staticdatamasktingSql serve2019 staticdatamaskting
Sql serve2019 staticdatamaskting
 
Index tuning
Index tuningIndex tuning
Index tuning
 
Polybase scale outgroups
Polybase scale outgroupsPolybase scale outgroups
Polybase scale outgroups
 

Azure SQL Database Ledger & SQL Server 2022 Ledger

  • 1. Azure SQL Database Ledger の概要 ブロックチェーンのパワーを SQL Server に Jiayi Yang
  • 2. Azure SQL Database ledger – SQL 内のブロックチェーン パワー 暗号化を通じたSQL デー タの改ざん防止 暗号化証明による検証 を通じたすべての変更履 歴記録を提供可能 Azure と オンプレミスでお なじみの SQL
  • 3. What is a blockchain and how do they work? SQL Server 2022 Ledger 参 考
  • 4. What is a blockchain and how do they work? データ ハッシュ 一つ前のブロックのハッシュ SQL Server 2022 Ledger 参 考
  • 5. What is a blockchain and how do they work? データ From To Amount SQL Server 2022 Ledger 参 考
  • 6. What is a blockchain and how do they work? ハッシュ ・・・9bc34549d565d9505b287de0cd20ac77be1d3f2c・・・ SQL Server 2022 Ledger 参 考
  • 7. What is a blockchain and how do they work? 一つ前のブロックのハッシュ 前後関係性を安全に保つ SQL Server 2022 Ledger 参 考
  • 8. What is a blockchain and how do they work? ① ② ③ ハッシュ: 1Z8F 一つ前ハッシュ:0000 ハッシュ: 6BQ1 一つ前ハッシュ: 1Z8F ハッシュ: 3H4Q 一つ前ハッシュ: 6BQ1 SQL Server 2022 Ledger 参 考
  • 9. What is a blockchain and how do they work? ① ② ③ ハッシュ: 1Z8F 一つ前ハッシュ:0000 ハッシュ: 6BQ1 一つ前ハッシュ: 1Z8F ハッシュ: 3H4Q 一つ前ハッシュ: 6BQ1 H62Y SQL Server 2022 Ledger 参 考
  • 10. SQL Server 2022 Ledger works トランザクション1 (n) トランザクション2 (n) トランザクション3 (n) Tran1の暗号化されたハッシュ 値がTran2と関連付け + Tran1の暗号化されたハッシュ Tran2の暗号化されたハッシュ 値がTran3と関連付け + Tran2の暗号化されたハッシュ データベースダイジェスト 不変ストレージ (Azure Blob Storage) Or Azure Confidential Ledger 1ブロックに1Tranではなくて、 (n) Tranが含まれる。 データベースの検証 自動または手動 ダイジェスト比較 SQL Server 2022 Ledger 参 考
  • 11. Ledger テーブル - 更新可能 と 追記専用 o 更新可能なLedgerテーブルは、更新と削除を可能にする標準の SQL テーブル です o 更新または削除された行の履歴は、履歴テーブルおよび照会しやすいLedger ビューに保持されます o 更新可能テーブルと履歴テーブルの整合性は、データベースLedgerからの暗号リ ンクを通じて維持されます o システムは定期的にデジタルレシートを、お客様が構成した信頼できるストレージ サービスにアップロードします o お客様はデジタルレシートを使用してデータの整合性を検証できます o 追記専用Ledgerテーブルは、API での UPDATE/DELETE をブロックし、履歴 テーブルが必要なくなります 追加専用Ledger テーブル 信頼できる ストレージ データベース Ledger ブロック N ブロック N-1 ブロックN-2 更新可能な Ledgerテーブル 履歴テーブル Ledgerビュー
  • 12. データベース ダイジェスト用の記憶域 不変 BLOB ストレージ (Azure SQL Database & SQL Server 2022) • ポリシーに基づいて、一回の書き込み、読み取り可能 状態でデータを保存 • 作成されたデータ BLOB は、ユーザー指定の間隔で 読み取り専用モードに設定可能 • ポリシーに基づいてデータが機能的にロックまたは保 持 • 監査ログのサポートを提供可能だが、ログの作成者 を信頼する必要あり • マイクロソフトは信頼できるコンピューティング ベース Azure Confidential Ledger (ACL) (Azure SQL Database) • データを一回書き込み、永続的に読み取り可能な状 態に • Ledgerに書き込まれたデータ BLOB は変更不可 • 改ざん防止保証を提供する機密エンクレーブで実行 • お客様が検証できる暗号構造を含むトランザクション レシー トと、シリアル化された Ledger ファイルを作成 • マイクロソフトは TCB の外にあります。Ledger ソースコードは オープンソース (CCF)
  • 14. 勘定残高の更新可能な Ledger テーブルの作成 CREATE TABLE [Account].[Balance] ( [CustomerID] INT NOT NULL PRIMARY KEY CLUSTERED, [LastName] VARCHAR (50) NOT NULL, [FirstName] VARCHAR (50) NOT NULL, [Balance] DECIMAL (10,2) NOT NULL ) WITH ( SYSTEM_VERSIONING = ON, LEDGER = ON ); GO
  • 15. 2 つの個別トランザクションに 4 つのアカウントを追加 Tx1: 初期残高 $50 で Nick を追加 Tx2: John、 Joe 、Mary を追加 1. 各トランザクションは固有のトランザクショ ン ID を持つ 2. Tx2 は 3 行を修正し、それぞれが Ledger シーケンス番号で追跡 更新可能な Ledger テーブル
  • 16. Nick の残高を $50 から $100 に更新 更新可能な Ledger テーブル ー Nick の残高は現在 $100 履歴テーブル ー Nick の期首残高を含む行の履歴値を表示 Ledger ビュー ー Nick の削除は更新として扱われ、その後に挿入として表示される
  • 17. データベース Ledger sys.database_ledger_transactions ー データベース内の各トランザクションのテーブル・ハッシュと、トラン ザクションを発行したユーザーを記録 sys.database_ledger_blocks ー データベースに作成された各ブロックのハッシュと、ブロック内のトランザク ションの数を記録
  • 20. すべてのテーブルが更新可能な Ledger テーブル にする「Ledger データベース」が有効になっている ことを確認 • 選択されていない場合でも、ユーザーは T-SQL でLedger テーブルを作成可能 ダイジェストを自動的に生成し、Azure ストレージ または ACL にアップロードする • 選択しない場合、顧客は手動でダイジェストを生成して保存 する必要あり ダイジェストは不変ポリシーによって保護されるべき である警告表示
  • 21. Ledger は管理エクスペリエンスの [セキュリティ] セクションにあります 作成後に Ledger データベースを無効にすることは できません • 作成中に有効化しなかった場合、後で有効にすることはでき ません • ユーザーは T-SQL を使用して Ledger テーブルを作成できます ダイジェストストレージに ACL を選択した場合、プ レビューでは無料ですが、GA (価格未定) で課金 されることに注意
  • 23. クエリ エディター、Azure Data Studio また は SQL Server Management Studio で 実行する T-SQL をコピーします
  • 26. SQL Server 2022 エディション単位の新機能比較表 SQL Server 2022 新機能 Express Standard Enterprise コンピューティングと ストレージ 最大コア数 4 24 OS Max インスタンスあたりの最大メモリ使用量 1.41 GB 128 GB OS Max 最大ディスクサイズ 10 GB 524 PB 524 PB Azure 対応 Synapse Link SQL Ledger Link feature for Azure SQL Managed Instance Link Link feature for Azure SQL Managed Instance Link (基本的な可用性グループ) Microsoft Purview ポリシー 言語と プラットフォームの選択 JSON T-SQL 強化 モダン T-SQL 機能拡張 業界をリードする パフォーマンスと 可用性 Query Store by default for new databases 組み込みのクエリ インテリジェンス: CE Feedback 組み込みのクエリ インテリジェンス: Parameter Sensitive Plan (PSP) Optimization 組み込みのクエリ インテリジェンス: DOP feedback クエリストア:リードレプリカのサポート バッファプールの並列スキャン (2スレッドに制 限、64GBを超える メモリのみ) Peer to peer LWW レプリケーション Intel QATバックアップの機能強化 (ソフトウェアのみ ) (ハードウェア + ソフトウェア) 時系列のサポート 安全性と 信頼性 セキュリティで保護されたエンクレーブが設定された Always Encrypted- 新機能 動的データマスキングの詳細な権限
  • 27. SQL Server 2022 パフォーマンスとセキュリティのイノベーションを継続する Azure 対応の SQL Server TPC データはすべて 2022 年 11 月 10 日現在のものである。 1米国国立標準技術研究所 (NIST) Comprehensive Vulnerability Database 2 http://www.tpc.org/4087; 3 http://www.tpc.org/3374; 4 http://www.tpc.org/3380; 5 https://tpc.org/3383; 6 http://www.tpc.org/3364; 7 https://tpc.org/3382; オンプレミスのオペレーショナル データに対するシームレスな分析 過去 10 年間にわたり 最も安全1 業界をリードする パフォーマンスと可用性 データ資産全体の 可視性 Azure による ビジネス継続性 No. 1 の OLTP パフォーマンス2 No. 1 の非クラスター化 DW の パフォーマンス (1 TB3、3 TB4、 10 TB5、30 TB6、100 TB7) Azure SQL Managed Instance のリンク機能 Azure Synapse Link Microsoft Purview の統合 組み込みのクエリ インテリジェンス SQL Server Ledger Azure Arc 対応データ サービス Azure SQL エッジからクラウド Azure SQL Edge 主な機能 + 最も一貫性のあるデータ プラットフォーム 0 50 100 150 200 250 300 350 400 450 500 脆弱性 (2010 ~ 2020) ポリシー インサイト Microsoft Purview 系列
  • 28. SQL Server Ledger (台帳)の使用方法 台帳履歴の表示 台帳の確認 台帳テーブルを作成する 変更を加える ダイジェストを保存する 更新可能タイプ または追加のみタイプ INSERT / UPDATE / DELETE (更新可能タイプのみ) 手動または自動 * 台帳データベースも作成できます
  • 29. SQL Server Ledger (台帳) 自動ダイジェストの作成方法と自動ダイジェストを使ったデータ信頼性の確認 Azure Blob ストレージか、ADLS Gen2を作成する sqldbledgerdigests という container を作成する SQL Server 2022に、Azure Blob ストレージにアクセス する資格情報を作成する 自動ダイジェストのエンドポイントを指定する データを変更する ダイジェストで信頼性を確認する ALTER DATABASE SCOPED CONFIGURATION SET LEDGER_DIGEST_STORAGE_ENDPOINT = 'your endpoint' GO DECLARE @digest_locations NVARCHAR (MAX) = (SELECT * FROM sys.database_ledger_digest_locations FOR JSON AUTO, INCLUDE_NULL_VALUES) SELECT @digest_locations as digest_locations BEGIN TRY EXEC sys.sp_verify_database_ledger_from_digest_storage @digest_locations; SELECT 'Ledger verification succeeded.' AS Result END TRY BEGIN CATCH THROW END CATCH
  • 30. デモ (データ改ざん) SQL Server 2022 Ledger N o - R e c o r d i n g
  • 31. Ledgerテーブルのシナリオ 監査の合理化 暗号化を用いた証明データは、外部または内部 (監査人または規制当局) を問わず、他の当 事者に改ざんされていないことを証明できます マルチパーティ ビジネスプロセス ソリューションを中心とした一元化されたシステムのブロックチェーンに代替可能(信頼するが検証も する) ブロックチェーン向け信頼済みオフチェーンストア ブロックチェーンソリューションは通常、チェーンデータを従来のデータベースに「オフチェーン」で複 製します。Ledger テーブルはブロックチェーンデータの整合性を維持します
  • 32. リソース アナウンス ブログ https://aka.ms/sql-ledger-blog Azure SQL Database Ledger のドキュメント https://aka.ms/sql-ledger-docs ホワイトペーパー https://aka.ms/sql-ledger-whitepaper