Slide 1

Slide 1 text

大髙 領介 | 中里 浩之 Cloud Solution Architect & Data Engineer & Data Scientist Microsoft Japan 撮影OK Tweet OK

Slide 2

Slide 2 text

Data + Analytics

Slide 3

Slide 3 text

Data + Analytics

Slide 4

Slide 4 text

Data + Analytics

Slide 5

Slide 5 text

Big Data または Relational Data Data Lake Data warehouse 使いやすさ 迅速な探索 すぐに利用開始 実証済みのセキュリティ 鉄壁のプライバシー 信頼性の高いパフォーマンス

Slide 6

Slide 6 text

使いやすさ 迅速な探索 すぐに利用開始 実証済みのセキュリティ 鉄壁のプライバシー 信頼性の高いパフォーマンス

Slide 7

Slide 7 text

制限のない世界へようこそ データ ウェアハウス と ビッグ データ分析を 1 つのサービスに統合 Azure Synapse Analytics

Slide 8

Slide 8 text

Azure Synapse Analytics 無限のスケール 強力な分析 統合環境 強固な セキュリティ Provisioned Data Warehouse GENERALLY AVAILABLE On-demand Query as a Service PREVIEW

Slide 9

Slide 9 text

データ分析のための無制限のデータウェアハウス Store Azure Data Lake Storage SQL Analytics Runtimes Synapse Studio Unified experience Integration Management Monitoring Security Cloud data SaaS data On-premises data Devices data Power BI Azure Synapse Analytics

Slide 10

Slide 10 text

Synapse Studio

Slide 11

Slide 11 text

開発ハブ/SQL スクリプト  SQL スクリプト

Slide 12

Slide 12 text

Synapse Studio – PySpark (Python)

Slide 13

Slide 13 text

オンデマンド での DataLake 参照 SELECT TOP 100 * FROM OPENROWSET( BULK 'https:///path/to/files/*.parquet’, FORMAT = 'Parquet’ ) AS [r] Data Lake SQL on-demand Client

Slide 14

Slide 14 text

13X SQL Analytics Data Lake 統合 ParquetDirect

Slide 15

Slide 15 text

CREATE EXTERNAL TABLE AS SELECT -- Create a database master key if one does not already exist CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'S0me!nfo' ; -- Create a database scoped credential with Azure storage account key as the secret. CREATE DATABASE SCOPED CREDENTIAL AzureStorageCredential WITH IDENTITY = '' , SECRET = '' ; -- Create an external data source with CREDENTIAL option. CREATE EXTERNAL DATA SOURCE MyAzureStorage WITH ( LOCATION = 'wasbs://daily@logs.blob.core.windows.net/' , CREDENTIAL = AzureStorageCredential , TYPE = HADOOP ) -- Create an external file format CREATE EXTERNAL FILE FORMAT MyAzureCSVFormat WITH (FORMAT_TYPE = DELIMITEDTEXT, FORMAT_OPTIONS( FIELD_TERMINATOR = ',', FIRST_ROW = 2) --Create an external table CREATE EXTERNAL TABLE dbo.FactInternetSalesNew WITH( LOCATION = '/files/Customer', DATA_SOURCE = MyAzureStorage, FILE_FORMAT = MyAzureCSVFormat ) AS SELECT T1.* FROM dbo.FactInternetSales T1 JOIN dbo.DimCustomer T2 ON ( T1.CustomerKey = T2.CustomerKey ) OPTION ( HASH JOIN );

Slide 16

Slide 16 text

データの読み込み  概要  ストレージ アカウントから目的のリンクされた サービスにデータを読み込む機能を提供 パイプラインの手動実行または調整による データの読み込み  利点  一般的な読み込みパターンをサポート  Polybase による規模に応じたデータの読み込み

Slide 17

Slide 17 text

データの準備と変換  データフローのマッピング  コード不要の規模に応じたデータ変換 データフローのラングリング コード不要の規模に応じたデータ準備

Slide 18

Slide 18 text

Developing Composite Models wit Power BI

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

売り上げ 日付 顧客 商品 従業員 地理 再販業者の 売り上げ DirectQuery 売り上げ 日付 顧客 商品 従業員 地理 再販業者の 売り上げ

Slide 21

Slide 21 text

売り上げ 売り上げ 商品 顧客 地理 日付 従業員 再販業者の 売り上げ DirectQuery 日付 従業員 再販業者の 売り上げ 顧客 地理 商品

Slide 22

Slide 22 text

売り上げ集計 売り上げ 商品 顧客 地理 日付 従業員 再販業者の 売り上げ 日付 従業員 再販業者の 売り上げ 顧客 地理 商品 DirectQuery

Slide 23

Slide 23 text

売り上げ 商品 売上集計 顧客 地理 日付 従業員 再販業者の 売り上げ 集計 日付 従業員 再販業者の 売り上げ 顧客 地理 商品

Slide 24

Slide 24 text

売り上げ 商品 売上集計 顧客 地理 日付 従業員 再販業者の 売り上げ 集計 日付 従業員 再販業者の 売り上げ 顧客 地理 商品 SummarizeColumns( Date[Year], Geography[City], "Sales", Sum(Sales[Amount]) )

Slide 25

Slide 25 text

売り上げ 商品 売上集計 顧客 地理 日付 従業員の 再販業者の 売り上げ 集計 日付 従業員 再販業者の 売り上げ 顧客 地理 商品 SummarizeColumns( Date[Year], Customer[Name], "Sales", Sum(Sales[Amount]) ) SELECT [Year], [Name], SUM([Amount]) AS [Amount] FROM [Sales] INNER JOIN [Date] ON ... INNER JOIN [Customer] ON ... GROUP BY [Year], [Name]

Slide 26

Slide 26 text

Data + Analytics

Slide 27

Slide 27 text

Azure Machine Learning – Data Store

Slide 28

Slide 28 text

 サポートされている集計関数: MAX、MIN、AVG、COUNT、 COUNT_BIG、SUM、VAR、STDEV CREATE MATERIALIZED VIEW Sales.vw_Orders WITH ( DISTRIBUTION = ROUND_ROBIN | HASH(ProductID) ) AS SELECT SUM(UnitPrice*OrderQty) AS Revenue, OrderDate, ProductID, COUNT_BIG(*) AS OrderCount FROM Sales.SalesOrderDetail GROUP BY OrderDate, ProductID; GO Petabytes への スケール Materialized Views

Slide 29

Slide 29 text

275 5 0 50 100 150 200 250 300 No Materialized View With Materialized View Seconds クエリー実行時間 Petabytes への スケール Materialized Views

Slide 30

Slide 30 text

-- Turn on/off result-set caching for a database -- Must be run on the MASTER database ALTER DATABASE {database_name} SET RESULT_SET_CACHING { ON | OFF } -- Turn on/off result-set caching for a client session -- Run on target data warehouse SET RESULT_SET_CACHING {ON | OFF} -- Check result-set caching setting for a database -- Run on target data warehouse SELECT is_result_set_caching_on FROM sys.databases WHERE name = {database_name} -- Return all query requests with cache hits -- Run on target data warehouse SELECT * FROM sys.dm_pdw_request_steps WHERE command like '%DWResultCacheDb%' AND step_index = 0 Petabytes への スケール Result Set の Cache

Slide 31

Slide 31 text

--T-SQL syntax for scoring data in SQL DW SELECT d.*, p.Score FROM PREDICT(MODEL = @onnx_model, DATA = dbo.mytable AS d) WITH (Score float) AS p; Upload models T-SQL Language Data Warehouse Data + Score models Model Create models Predictions = SQL Analytics 機械学習の 推論組み込み

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

Azure Arc Announcing PREVIEW

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

https://aka.ms/azure-arc https://aka.ms/azure-arc

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

Management experiences Azure Portal Azure CLI Azure SDK Azure Arc technologies: Azure Arc Azure Identity RBAC Policy Index Groups Etc. Azure Resource Manager Azure Arc data RP Container registry Azure Arc K8s RP Azure Arc server RP Azure Data Services Wave 1 • SQL • PostgreSQL Azure Arc data controller Kubernetes Azure PaaS Control K8s Cluster Azure Arc data agent GitOps Manager Azure Arc K8s agent Servers Linux Windows Server Azure Arc server agent Resource specific tools Azure Data Studio Cluster provisioning​ Cluster upgrade and patch management​ Cluster lifecycle management​ Cluster monitoring K8s Native Tools Server Admin Tools Customer locations

Slide 38

Slide 38 text

No content

Slide 39

Slide 39 text

Data + Analytics

Slide 40

Slide 40 text

Planet-scale data

Slide 41

Slide 41 text

Column-family Document Graph 地球規模でのデータ分散 迅速なスケールアウト 高速なスループット 99%の低遅延保障 業界随一の SLAs 5段階のトランザクションモデル Table API Key-value 地球規模での分散、更なるスケーラ ビリティ、マルチモデル Cosmos DB’s API for MongoDB Azure Cosmos DB

Slide 42

Slide 42 text

集合関数と GROUP BY 句のパフォーマンス改善

Slide 43

Slide 43 text

Auto Pilot Containers 最小限のキャパシティープラン オートスケール 全ての Azure Cosmos DB API に適用

Slide 44

Slide 44 text

Azure Cosmos DB と Azure Synapse の連携 Global distribution, elastic scale, low latency, intuitive consistency modes, 99.999 SLA Multi-model Key-value Column-family Document Graph SQL Cassandra MongoDB Gremlin Table API ETCD Jupyter Notebooks Azure Synapse - Spark Transactional store (rows) Analytical store (columns) Jupyter Notebooks 組み込み Analytical store 組み込み Azure Synapse の Spark Analytics 時間のかかる ETL’s 不要 Transactional と Analytical Storage の分類

Slide 45

Slide 45 text

組み込み Jupyter Notebooks & with Apache Spark

Slide 46

Slide 46 text

Analytical Storage Select * from Block N where column1 > column2 Select * from Block N where column1 > column2 Select * from Block N where column1 > column2 Snapshot Tn https://docs.microsoft.com/ja-jp/azure/cosmos-db/globally-distributed-transactional-analytical-storage

Slide 47

Slide 47 text

Data + Analytics

Slide 48

Slide 48 text

Announcing

Slide 49

Slide 49 text

SQL Server の進化 Performance and productivity Self-service BI Cloud-ready Mission Critical and cloud performance Built-in ML Docker & Linux Intelligence over all data SQL Server 2008 SQL Server 2008 R2 SQL Server 2012 SQL Server 2014 SQL Server 2016 SQL Server 2017 SQL Server 2019 Power Pivot (In-Memory) / SharePoint 統合 / Master Data サービス データ圧縮 / ポリシーベース管理 / プログラマビリティ AlwaysOn / In-Memory 列ストア (非クラスター化列ストア) / Data Quality サービス / Power View / クラウド 業界をリードするパフォーマンス / 機械学習 (R) / PolyBase / ハイブリッドクラウドの最適化 / クラウドエンジニアリングファースト / クラウド BI 業界をリードするパフォーマンス / グラフデータベース / 機械学習 (R / Python) / 言語とプラットフォームの選択肢の強化 / クラウドへのシンプルな移行 ワークロード全体のインメモリ化 (In-Memory OLTP / クラスター化列ストアインデックス) / ハイブリッドクラウドの最適化 / クラウド BI すべてのデータに対するインテリジェンス / Spark と HDFS を備えたBig Data Cluster / 機械学習 (R / Python / Java) / データ分類とコンプライアンス追跡 / Azure Data Studio

Slide 50

Slide 50 text

R SQL 1 0 1 0 0 1 0 1 0 1 1 0 SQL Server 2019 PolyBase と Big Data Cluster による データ仮想化 Intelligent Query Processing および インメモリデータベース エンクレーブで常に暗号化されたセキュリティの強化と データの分類による監査機能の強化 可用性グループの機能強化と 高速データベース復旧などの新しい HA 機能 Java による ML Service の機能強化 互換性のある最新のプラットフォームを選択 暗号化テキスト プレーンテキスト エンクレーブ

Slide 51

Slide 51 text

Adaptive Query Processing (SQL Server 2017) Adaptive Query Processing Batch Mode Memory Grant Feedback Batch Mode Adaptive Join Interleaved Execution Adaptive query processing in SQL databases https://docs.microsoft.com/en-us/sql/relational-databases/performance/adaptive-query-processing?view=sql-server-ver15

Slide 52

Slide 52 text

Intelligent Query Processing 行ストア Intelligent QP Adaptive QP Adaptive Joins Batch Mode Interleaved Execution Memory Grant Feedback Batch Mode Row Mode Table Variable Deferred Compilation Batch Mode on Row Store Approximate QP Approximate Count Distinct Scalar UDF Inlining Intelligent query processing in SQL databases https://docs.microsoft.com/en-us/sql/relational-databases/performance/intelligent-query-processing?view=sql-server-ver15

Slide 53

Slide 53 text

Intelligent Query Processing 行ストア Intelligent QP Adaptive QP Adaptive Joins Batch Mode Interleaved Execution Memory Grant Feedback Batch Mode Row Mode Table Variable Deferred Compilation Batch Mode on Row Store Approximate QP Approximate Count Distinct Scalar UDF Inlining Intelligent query processing in SQL databases https://docs.microsoft.com/en-us/sql/relational-databases/performance/intelligent-query-processing?view=sql-server-ver15

Slide 54

Slide 54 text

! 企業のデータベースに必要とされる セキュリティ機能 Security management Data protection Network security Monitoring, logging & auditing Identity & access management 認証オプション: Azure AD SQL Auth Windows Auth Azure RBAC Encryption-in-flight via TLS Encryption at-rest via TDE (SQL Server Standard) VNET Injection (VNET) Firewall Rules, NSG Advanced Threat Detection (SQL IaaS も対象に) Vulnerability Assessment (SQL IaaS も対象に) Row-level security Encryption in-use via Always Encrypted (.NET Core support) (Always Encrypted with secure enclaves) SQL Audit (Log Analytics と Event Hubs 連携) Data Discovery & Classification (GA, SQL Server 2019) Dynamic Data Masking Azure Security Center Roles & Permissions User-managed keys (GA in managed instance) Private Link New

Slide 55

Slide 55 text

Always Encrypted with セキュア エンクレーブ 操作 エンクレーブを使用しない エンクレーブを使用する ランダム暗号化 決定的暗号化 ランダム暗号化 決定的暗号化 インプレース暗号化 非サポート 非サポート サポート サポート 等価による比較 非サポート サポート サポート サポート 不等号による比較 非サポート 非サポート サポート 非サポート LIKE 非サポート 非サポート サポート 非サポート Always Encrypted with Secure Enclaves https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/always-encrypted-enclaves Tutorial: Getting started with Always Encrypted with secure enclaves using SSMS https://docs.microsoft.com/en-us/sql/relational-databases/security/tutorial-getting-started-with-always-encrypted-enclaves

Slide 56

Slide 56 text

Private Link PaaS services

Slide 57

Slide 57 text

Data without limits

Slide 58

Slide 58 text

SQL Server 2019 の利用形態 Big Data Cluster (BDC) スケーラブルな大規模データ分析基盤 (新しい構成 / 導入方法)

Slide 59

Slide 59 text

SQL Server 2019 Big Data Clusters データ仮想化 データを移動 / 複製せず、多数のソースのデータを組み合わせる パフォーマンスを向上させるため、計算とキャッシュのプールを スケールアウト T-SQL 分析 アプリ ODBC NoSQL DRAMS HDFS SQL Server 外部テーブル コンピュートプール / データプール 完全な AI プラットフォーム 多数のソースから統合したデータを、機械学習の モデルの訓練に容易に活用することができる データの取り込みと準備 (前処理) を行い、モデルの訓練 / 保存 / 運用を一つのシステムで実行 外部データソース SQL Server ML Services Spark & Spark ML HDFS モデル用の REST API コンテナー Managed SQL Server / Spark Data Lake 大量のデータを Data Lake に保存し、SQL または Spark を 使用して容易にアクセス 管理されたサービス, ダッシュボード, および統合された セキュリティより、すべての管理を容易に実施 SQL Server Spark ダッシュボードと管理されたサービス 統合されたAD ベースのセキュリティ スケーラブル, 共有ストレージ (HDFS) 統一された展開 / ガバナンス およびツールを使用したシンプルな管理と分析により 保有しているすべてのデータを情報 / 資産として活用

Slide 60

Slide 60 text

SQL Database PostgreSQL MySQL Azure Hyperscale Databases スケールする Relational Databases 100 Tran / sec GB 100万 Tran / Sec 100TB

Slide 61

Slide 61 text

Announcing

Slide 62

Slide 62 text

ハイパースケール(Citus) を使用した 数百のコアにわたる 水平方向のスケーリング Postgresデータベースを複数のノードにまたがって シャーディング メモリ、コンピューティング、ストレージを増やす ワーカー ノードを簡単に追加して水平スケール 最大 100 個のノードまで拡張 Coordinator Table metadata それぞれのノードに PostgreSQL と Citus がインストールされている 1 shard = 1 PostgreSQL table 複数ノードにデータをシャーディング

Slide 63

Slide 63 text

No content

Slide 64

Slide 64 text

あらゆる スケール あらゆる Data API あらゆる データモデル あらゆる ハードウェア あらゆる クラウド

Slide 65

Slide 65 text

© Copyright Microsoft Corporation. All rights reserved.

Slide 66

Slide 66 text

Appendix

Slide 67

Slide 67 text

Azure Analytics Power BI

Slide 68

Slide 68 text

SQL Analytics 2019/11 リリースの新機能 GA した機能 : ⚫ 性能 : Resultset Caching ⚫ 性能 : Materialized View ⚫ 性能 : Ordered ColumnStore ⚫ データタイプ : JSON サポート ⚫ セキュリティ : Dynamic Data Masking ⚫ CI & CD : SSDT (SQL Server Data Tools) サポート ⚫ SQL 言語 : Read committed snapshot isolation パブリック プレビュー機能 : ⚫ ワークロード管理 : Workload Isolation ⚫ データ取込み : COPY ステートメント ⚫ データ共有 : Azure Data Share によるデータ共有 ⚫ セキュリティ : Private LINK のサポート プライベート プレビュー機能 : ⚫ データ取込み : Streaming Ingestion & Analytics ⚫ ビルトイン ML : ネイティブな予測/スコアリング ⚫ Data Lake 統合 : Parquet ファイルへのダイレクトクエリ ⚫ SQL 言語 : 更新可能分散カラム ⚫ SQL 言語 : JOIN を伴う FROM 句 ⚫ SQL 言語 : 複数カラムによる分散 ⚫ Note: private preview features require whitelisting