Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Ignite 2019 Update Microsoft Data Platform

Ignite 2019 Update Microsoft Data Platform

Transcript

  1. 大髙 領介 | 中里 浩之 Cloud Solution Architect & Data

    Engineer & Data Scientist Microsoft Japan 撮影OK Tweet OK
  2. Data + Analytics

  3. Data + Analytics

  4. Data + Analytics

  5. Big Data または Relational Data Data Lake Data warehouse 使いやすさ

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

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

    Analytics
  8. Azure Synapse Analytics 無限のスケール 強力な分析 統合環境 強固な セキュリティ Provisioned Data

    Warehouse GENERALLY AVAILABLE On-demand Query as a Service PREVIEW
  9. データ分析のための無制限のデータウェアハウス 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
  10. Synapse Studio

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

  12. Synapse Studio – PySpark (Python)

  13. オンデマンド での DataLake 参照 SELECT TOP 100 * FROM OPENROWSET(

    BULK 'https://<storage>/path/to/files/*.parquet’, FORMAT = 'Parquet’ ) AS [r] Data Lake SQL on-demand Client
  14. 13X SQL Analytics Data Lake 統合 ParquetDirect

  15. 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 = '<my_account>' , SECRET = '<azure_storage_account_key>' ; -- 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 );
  16. データの読み込み  概要  ストレージ アカウントから目的のリンクされた サービスにデータを読み込む機能を提供 パイプラインの手動実行または調整による データの読み込み 

    利点  一般的な読み込みパターンをサポート  Polybase による規模に応じたデータの読み込み
  17. データの準備と変換  データフローのマッピング  コード不要の規模に応じたデータ変換 データフローのラングリング コード不要の規模に応じたデータ準備

  18. Developing Composite Models wit Power BI

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

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

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

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

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

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

    日付 従業員 再販業者の 売り上げ 顧客 地理 商品 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]
  26. Data + Analytics

  27. Azure Machine Learning – Data Store

  28.  サポートされている集計関数: 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
  29. 275 5 0 50 100 150 200 250 300 No

    Materialized View With Materialized View Seconds クエリー実行時間 Petabytes への スケール Materialized Views
  30. -- 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
  31. --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 機械学習の 推論組み込み
  32. None
  33. Azure Arc Announcing PREVIEW

  34. None
  35. https://aka.ms/azure-arc https://aka.ms/azure-arc

  36. None
  37. 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
  38. None
  39. Data + Analytics

  40. Planet-scale data

  41. Column-family Document Graph 地球規模でのデータ分散 迅速なスケールアウト 高速なスループット 99%の低遅延保障 業界随一の SLAs 5段階のトランザクションモデル

    Table API Key-value 地球規模での分散、更なるスケーラ ビリティ、マルチモデル Cosmos DB’s API for MongoDB Azure Cosmos DB
  42. 集合関数と GROUP BY 句のパフォーマンス改善

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

    に適用
  44. 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 の分類
  45. 組み込み Jupyter Notebooks & with Apache Spark

  46. 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
  47. Data + Analytics

  48. Announcing

  49. 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
  50. 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 の機能強化 互換性のある最新のプラットフォームを選択 暗号化テキスト プレーンテキスト エンクレーブ
  51. 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
  52. 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
  53. 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
  54. ! 企業のデータベースに必要とされる セキュリティ機能 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
  55. 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
  56. Private Link PaaS services

  57. Data without limits

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

    / 導入方法)
  59. 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) 統一された展開 / ガバナンス およびツールを使用したシンプルな管理と分析により 保有しているすべてのデータを情報 / 資産として活用
  60. SQL Database PostgreSQL MySQL Azure Hyperscale Databases スケールする Relational Databases

    100 Tran / sec GB 100万 Tran / Sec 100TB
  61. Announcing

  62. ハイパースケール(Citus) を使用した 数百のコアにわたる 水平方向のスケーリング Postgresデータベースを複数のノードにまたがって シャーディング メモリ、コンピューティング、ストレージを増やす ワーカー ノードを簡単に追加して水平スケール 最大

    100 個のノードまで拡張 Coordinator Table metadata それぞれのノードに PostgreSQL と Citus がインストールされている 1 shard = 1 PostgreSQL table 複数ノードにデータをシャーディング
  63. None
  64. あらゆる スケール あらゆる Data API あらゆる データモデル あらゆる ハードウェア あらゆる

    クラウド
  65. © Copyright Microsoft Corporation. All rights reserved.

  66. Appendix

  67. Azure Analytics Power BI

  68. 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