2021/4/6 Data Engineering Study #7「Redshift最新アップデートと活用事例」の講演資料です
© 2021, Amazon Web Services, Inc. or its Affiliates.Daisuke HiramaSolutions Architect, AnalyticsAmazon Web Services Japan K.K.実演Amazon Redshift 最新機能
View Slide
© 2021, Amazon Web Services, Inc. or its Affiliates.⾃⼰紹介平間 ⼤輔アマゾン ウェブ サービス ジャパンソリューションアーキテクトアナリティクス分野の技術⽀援を担当好きなAWSサービス• Amazon Redshift• Amazon QuickSight• AWS Glue
© 2021, Amazon Web Services, Inc. or its Affiliates.お客様の要望に応じて進化し続ける Amazon RedshiftAnalyze all your dataLake house withAWS integrationLow cost & best valuePredictable costsData LakeExportFederatedQueryAmazonRedshiftSpectrum +Lake FormationAmazonRedshift MLLambda UDF PartnerconsoleintegrationAQUA HyperLogLogMaterializedviewsPerformance & scaleFast and self-tuningConcurrencyscalingData APIRA3 nodes &managed storageData sharingAutomaticworkloadmanagerCross-AZ clusterrecoveryPause andresumeBuilt-in securityfeaturesCost controlsSuper datatype withJSON support100K tablesPerformancetuning:automatedOn-demandand RIs
© 2021, Amazon Web Services, Inc. or its Affiliates.こんなときに新機能を使ってみよう
© 2021, Amazon Web Services, Inc. or its Affiliates.1. 朝イチでアクセスが集中してクエリの実⾏待ちが発⽣︕• Amazon Redshift のような DWH 向けの RDBMS は、複雑で⼤量のデータを処理するリソース⼤⾷いのクエリに合わせてチューニングされている• そのため、単⼀クエリに⼗分なリソースを割り当てられるように、同時実⾏クエリ数を少なめに抑えていることが多い• ⼀⽅、ユーザーが出社直後にBIダッシュボードを⼀⻫に閲覧するなど、同時実⾏クエリ数が⼀時的にスパイクすることはしばしば発⽣するAmazonRedshiftでは、どうすれば︖
© 2021, Amazon Web Services, Inc. or its Affiliates.ピーク時にコンピュートを⾃動拡張する Concurrency ScalingAmazonRedshift追加クラスター(1~10)メインクラスターディスパッチ+++Redshift にクエリが集中してクエリをさばくためのリソースが⾜りなくなった場合、裏で⾃動的に別のクラスターを⽴ち上げ、処理を待たせずに実⾏してくれる1⽇1時間は無償で使える上に、無償枠を超えないよう利⽤キャップもかけられる
© 2021, Amazon Web Services, Inc. or its Affiliates.Demo: Concurrency Scalingを効かせてみる• dc2.8xlarge x 2ノードのクラスタを2つ⽤意• ⽚側のみConcurrency Scalingを有効に設定(Max 5クラスタに設定)• その他の設定は2クラスタで同⼀• Auto WLM有効• ショートクエリアクセラレーション有効• リザルトキャッシュ無効• ベンチマークツール(※)を使って分析系のワークロードを20セッションから同時実⾏※ HammerDB : https://www.hammerdb.comAmazonRedshift広帯域ネットワーキングRedshift フォーマットデータメインクラスター追加クラスター(1~10) +++
© 2021, Amazon Web Services, Inc. or its Affiliates.2. 様々な場所にある、様々な形式のデータをAmazon Redshift で分析したいAmazon Redshift に取り込んでいるデータ以外にも、データレイクや基幹DBには、古いデータから最新のデータまで蓄積・更新されている。そのため、以下のような要望が出てきている• 基幹DB上にある当⽇の履歴データや最新マスターと Amazon Redshift 上のテーブルとを結合して分析したい• データレイク上の古いデータを取り込まずに検索したい• 他のシステムで作成されたJSONファイルを、形式を変えずに取り込みたいウェブ センサー ソーシャルデータレイクデバイス基幹DBAmazonRedshift
© 2021, Amazon Web Services, Inc. or its Affiliates.Amazon Redshift Federated Queryデータウェアハウス、データレイク、業務データベースにまたがったデータを統合して分析Amazon RDSPostgreSQL,MySQLAmazon AuroraPostgreSQL,MySQLAmazon S3Data lakeAmazon RedshiftJDBC / ODBCデータ移動なしに最新のデータを分析Amazon Redshift から Amazon RDS/AuroraPostgreSQL 上のデータに直接クエリすることが可能セキュアで⾼パフォーマンスなデータアクセスAmazon RDS/Aurora MySQL は2021/4/6 現在プレビューでのサポート
© 2021, Amazon Web Services, Inc. or its Affiliates.Redshift Spectrum でアーキテクチャをデータレイクに拡張AmazonRedshiftJDBC/ODBCオープンフォーマットファイル(Parquet, ORC, JSON, CSV etc)アプリケーションは、データウェアハウスとデータレイクの双⽅のデータに透過的にアクセスできるAmazon Redshift Spectrum• S3 上のファイルに対する並列クエリ実⾏エンジンデータレイク• ユーザー管理 S3 バケット
© 2021, Amazon Web Services, Inc. or its Affiliates.SUPER データ型半構造化データをスキーマ指定なしにテーブルに取り込み、クエリ可能ネイティブに半構造化データをサポートするSUPER データ型ネストされた JSON データの取り込みが従来のようにフラット化して取り込むよりも最⼤で 5 倍⾼速にSUPER 型のデータを Materialized View 化することによる⾼速な分析も容易直感的にわかりやすい SQL でスキーマレスなネストデータへの分析をかんたんに⾏えるようにPublicPreviewSELECT name.given AS firstname, ph.numFROM customers c, c.phones phWHERE ph.type = ’cell’;firstname | num----------+---------------"Jane" | 6505550101idINTEGERnameSUPERphonesSUPER1{"given":"Jane","family":"Doe"}[{"type":"work","num":"9255550100"},{"type":"cell","num": 6505550101} ]2{"given":„Richard","family":„Roe"},[{"type":"work","num": 5105550102}]
© 2021, Amazon Web Services, Inc. or its Affiliates.3. 複数のDWHクラスターで同じデータをシェアしたいそれぞれ別々な処理要件を持つ多様なユースケースに対して、個別に費⽤計算をしたいワークロードを分離して適切に費⽤計算⼀括管理せずにセルフサービスでグループやチームごとに、⾃分たちに必要な処理能⼒を独⽴して管理したいデータをシェアして第三者がデータ利⽤をしやすくしたい組織の枠を超えたデータ利⽤⾼度な分析や機械学習を利⽤可能に使⽤する分析ツールやフレームワークを⾃由に選べるようにしたいDWH クラスターが社内に複数⽴てられている環境では、クラスター間でデータをシェアしたいという要望があることが多い
© 2021, Amazon Web Services, Inc. or its Affiliates.Amazon Redshift Data SharingRedshift クラスター間でセキュアに簡単にデータを共有することが可能プロデューサークラスターコンピュートノードコンピュートノードコンピュートノードコンピュートノードリーダーノードコンシューマークラスターコンピュートノードコンピュートノードコンピュートノードリーダーノードコンピュートノードコンピュートノードAmazon Redshift マネージドストレージ共有データの読み込みプライベートデータの読み込みと書き込み• プロデューサークラスターが書き込んだ共有データを、データの移動なしにコンシューマークラスターに read only で共有することが可能• アクセス権の管理と共有状況の監査により、セキュアなデータ共有を実現RA3 インスタンス RA3 インスタンス
© 2021, Amazon Web Services, Inc. or its Affiliates.Demo: ワークロード別にクラスターを分けてみる• ETLクラスターのテーブルを、アドホッククエリ⽤のクラスター、ダッシュボード⽤のクラスターに共有する• 各クラスターでクエリを実⾏し、それぞれのクラスターが⾃分のリソースのみを使ってクエリを実⾏している様⼦を確認• ETLクラスターでテーブルを更新し、各クラスターで更新結果が反映されることを確認ETL クラスタダッシュボードクラスタ2-nodeRA3.4XL2-nodeRA3.4XL2–nodeRA3.4XLアドホッククエリクラスタ
© 2021, Amazon Web Services, Inc. or its Affiliates.まとめAmazon Redshift は現在も活発に新機能追加が進められています。以前はできないと思っていたことも、現在はできるようになっているかもしれません今回ご紹介した新機能はほんの⼀部です。Amazon Redshiftの最新機能をぜひお試しください︕
© 2021, Amazon Web Services, Inc. or its Affiliates.Thank you!