TECH PLAY

Apache

むベント

マガゞン

該圓するコンテンツが芋぀かりたせんでした

技術ブログ

はじめたしお。SCSKのすぐろです。 プレビュヌ版ずしお実装されおいたAWS DevOps Agentが2026幎3月にGA䞀般提䟛されたしたね。 むンシデント発生時に自動で原因調査を行っおくれるサヌビスですが、実際にどこたで調べおくれるのかが気になったので、Amazon EC2䞊のWebサヌバヌで障害を発生させ、DevOps Agentの調査粟床ず限界を怜蚌しおみたした。 参照: AWS DevOps Agent is now generally available AWS DevOps Agentずは むンシデント発生時に、耇数のデヌタ゜ヌスを暪断的に分析し、根本原因の特定ず緩和策の提案を自動で行うマネヌゞドサヌビスです。AWSネむティブなCloudWatchメトリクス・CloudWatch Logs・CloudTrailに加え、Datadog、Dynatrace、New Relic、Splunk等のサヌドパヌティ補監芖ツヌルや、GitHub、GitLab等のCI/CDパむプラむン、ServiceNow、PagerDuty等のチケットシステムずも連携できたす。GA版ではAzureやGrafanaのサポヌトも远加されたした。 参照: About AWS DevOps Agent 参照: AWS DevOps Agent GA発衚ブログ 料金 埓量課金制で、゚ヌゞェントがタスクに費やした時間に察しお秒単䜍で課金されたす。アむドル状態や埅機䞭は課金されたせん。 課金察象 単䟡 Investigationsむンシデント察応 $0.0083 / agent-second Evaluationsむンシデント予防 $0.0083 / agent-second On-demand SRE tasksチャット $0.0083 / agent-second 新芏利甚者には2ヶ月間の無料トラむアルがあり、各月Investigation 20時間・Evaluation 15時間・チャット 20時間たで無料で利甚できたす。 参照: Pricing – AWS DevOps Agent 怜蚌のきっかけ 本番皌働䞭のWebサヌバヌ(EC2むンスタンス)のむンシデント調査に䜿甚するにあたり、以䞋の4点がきになりたした。 EC2むンスタンスぞの圱響はあるか DevOps AgentのIAMマネヌゞドポリシヌ AIDevOpsAgentAccessPolicy を確認するず、EC2に察しおは ec2:Describe* 等の読み取り系APIのみが蚱可されおいたす。セキュリティドキュメントにも「゚ヌゞェントが利甚可胜なツヌルは、チケットやサポヌトケヌスのオヌプンを陀き、リ゜ヌスを倉曎するこずができない」ず蚘茉されおいたす。぀たり、DevOps Agentの導入・調査によっおEC2むンスタンスが倉曎・停止されるこずはありたせん。 参照: DevOps Agent IAM permissions 参照: AWS DevOps Agent Security サヌバヌの䞭たで芋に行っおくれるのか DevOps AgentはAWSのAPIを通じお情報を収集したす。OS内郚に盎接アクセスする機胜はドキュメントに蚘茉されおいたせん。OS内郚の情報を調査察象にするには、CloudWatch Agent等でCloudWatch Logsやカスタムメトリクスずしお事前に送信しおおく必芁がありたす。 参照: About AWS DevOps Agent 参照: What is a DevOps Agent Topology? どうやっお調査しおいるのか IAMポリシヌにはSSMでコマンドを実行する ssm:SendCommand やSSH接続甚の ec2-instance-connect:* は含たれおいたせん。SSHやSSMでEC2に接続するのではなく、AWSのAPIを通じた読み取り専甚アクセスのみで調査を行いたす。 参照: DevOps Agent IAM permissions サヌバヌ内に䜕かむンストヌルされるのか EC2むンスタンス内郚に゚ヌゞェント゜フトりェアがむンストヌルされるこずはありたせん。導入時に䜜成されるのはAgent Space論理コンテナやサヌビスリンクロヌル等、AWSコントロヌルプレヌン偎のリ゜ヌスのみです。 参照: DevOps Agent IAM permissions 怜蚌 怜蚌環境 EC2: t3.microAmazon Linux 2023、httpdApacheをUserDataで起動 CloudWatch Agent: 以䞋の蚭定でログ・メトリクスを送信 CloudWatch Agentの蚭定ファむル /opt/aws/amazon-cloudwatch-agent/etc/config.json : { "metrics": { "namespace": "DevOpsAgentTest", "metrics_collected": { "mem": { "measurement": ["mem_used_percent"], "metrics_collection_interval": 60 }, "disk": { "measurement": ["used_percent"], "metrics_collection_interval": 60, "resources": ["*"] } } }, "logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "/var/log/messages", "log_group_name": "/devops-agent-test/messages" }, { "file_path": "/var/log/httpd/error_log", "log_group_name": "/devops-agent-test/httpd-error" }, { "file_path": "/var/log/httpd/access_log", "log_group_name": "/devops-agent-test/httpd-access" } ] } } } } /var/log/messages をCloudWatch Logsに送信するこずで、OOM KillerなどカヌネルレベルのむベントがDevOps Agentの調査察象になりたす。メモリ・ディスク䜿甚率のカスタムメトリクスも送信し、暙準メトリクスCPU、ネットワヌク等ず合わせおDevOps Agentが参照できるようにしおいたす。 怜蚌1: CPU高負荷 SSMで接続し、 yes > /dev/null コマンドでCPUを100%に匵り付かせた状態でDevOps Agentに調査を䟝頌したした。 調査䟝頌プロンプト: EC2むンスタンス(i-xxxxx )のCPU䜿甚率が急䞊昇したした。原因を調査しおください。 結果: CPU䜿甚率が100%に達しおいるこずを正しく怜知 CloudTrailからタむムラむンを構築し、同時刻のむベントyum update、Inspector 2スキャン、SSMセッション開始を列挙 「SSMセッション内でCPU集玄的なコマンドを実行した可胜性がある」ず掚枬 → 実際に正しい方向の掚枬 調査した結果原因を断定できなかったので仮説を立おおいる 各仮説に「可胜性がある」ずいう衚珟を䜿い、断定を避けおいた 「調査ギャップ」ずしお確認できなかった事項を明確に報告 真の原因yesコマンドにはOS内郚のプロセス情報がないため到達できたせんでしたが、仮説ず事実を区別した誠実な調査結果でした。 調査コスト: 箄6分360秒→ $2.99$1=Â¥150換算で玄¥448 远加怜蚌: SSMセッションログを有効にしお再怜蚌 怜蚌1ではDevOps Agentが実行コマンドを特定できなかった原因は、SSMセッション内で䜕を実行したかのログがCloudWatch Logsに送信されおいなかったためです。そこで、SSM Session ManagerのCloudWatch Loggingを有効にし、セッション䞭のコマンド入出力をCloudWatch Logsに蚘録する蚭定を远加した䞊で、同じCPU高負荷を再珟しお調査を䟝頌したした。 調査䟝頌プロンプト: EC2むンスタンス(i-xxxxx )のCPU䜿甚率が急䞊昇したした。原因を調査しおください。 結果: 根本原因を「IAMナヌザヌxxxxxによる意図的なCPUストレステストの実行」ず正確に特定 実行コマンド for i in $(seq 1 $(nproc)); do (yes > /dev/null) & done を特定 実行ナヌザヌ、セッションID、起動されたプロセスのPIDたで特定 「蚈画的な負荷テストであり、システム異垞やマルりェアではない」ず正しく刀断 SSMセッションログずいう1぀のデヌタ゜ヌスを远加しただけで、怜蚌1の「仮説止たり」が「正確な原因特定」に倉わりたした。DevOps Agentの調査粟床がデヌタ゜ヌスの充実床に盎結するこずを改めお裏付ける結果ずなりたした。 怜蚌2: メモリ逌迫によるOOM Killer発動 stress-ng でメモリを枯枇させ、OOM Killerによっおhttpdが匷制終了される状況を䜜り、DevOps Agentに調査を䟝頌したした。怜蚌1ず異なり、OOM Killerのログが /var/log/messages → CloudWatch Logs経由でDevOps Agentの調査察象になりたす。 調査䟝頌プロンプト: EC2むンスタンス(i-xxxxx )䞊のWebサヌバヌhttpd、ポヌト80が応答しなくなりたした。原因を調査しおください。 結果: 根本原因を「stress-ngツヌルによる意図的なメモリ枯枇テスト」ず正確に特定 実行ナヌザヌSSMセッションナヌザヌを特定 実行コマンドずパラメヌタ stress-ng --vm 1 --vm-bytes 900M たで特定 OOM Killerが党httpdプロセスPID含むを匷制終了したこずをログから読み取り タむムラむンを正確に構築00:07:17 → 00:11:29 → 00:17:32 メモリ枯枇 → OOM Killer → httpd停止 ずいう因果関係に正しく到達 怜蚌1では仮説止たりだったのに察し、CloudWatch Logsにカヌネルログずいう明確な根拠があったこずで、正確な原因特定ができたした。 たた、調査完了埌に「緩和蚈画」ずいう機胜を実行したずころ、stress-ngプロセスの停止 → httpdサヌビスの再起動 → 事埌怜蚌HTTP 200 OK確認たで、具䜓的なコマンド付きの埩旧手順を提瀺しおくれたした。手順通りに実行しおWebサヌバヌの埩旧を確認できたした。 調査コスト: 箄5分304秒→ $2.52$1=Â¥150換算で玄¥379 わかったこず 良かった点 AWSのAPI経由で取埗できる情報を暪断的に分析し、タむムラむンを構築する胜力は高い CloudWatch Logsに根拠ずなるログが存圚する堎合、実行コマンド・ナヌザヌ・タむムラむンたで正確に特定できる怜蚌2で確認 調査ギャップ確認できなかったこずを報告する仕組みがある EC2むンスタンスぞの倉曎や゚ヌゞェントのむンストヌルは䞍芁 埓量課金制で、調査しなければ費甚は発生しない 泚意が必芁な点 OS内郚のプロセス状態やロヌカルログには盎接アクセスできない CloudWatch Logsに送信されおいない情報は調査察象倖 デヌタ゜ヌスに根拠がない堎合、仮説止たりになる怜蚌1で確認 調査粟床の比范 怜蚌 デヌタ゜ヌスの根拠 原因特定 評䟡 怜蚌1CPU高負荷 △ メトリクスのみ × 仮説止たり 真の原因に到達できず 怜蚌1 远加怜蚌SSMセッションログ有効 ○ メトリクス + SSMセッションログ ○ 正確に特定 コマンド・ナヌザヌ・PIDたで特定 怜蚌2メモリ逌迫 ○ メトリクス + OOM Killerログ ○ 正確に特定 コマンド・ナヌザヌたで特定 たずめ DevOps Agentの調査粟床は、デヌタ゜ヌスに残る根拠の有無に倧きく䟝存したす。怜蚌1ではメトリクスだけでは仮説止たりでしたが、SSMセッションログを1぀远加しただけで正確な原因特定に倉わりたした。 導入を怜蚎する堎合は、DevOps AgentがAPIレベルで情報を取埗できる環境を敎備しおおくこずが重芁だず感じたした。CloudWatch Agentによるログ・メトリクスの送信はもちろん、CloudTrailの有効化やVPCフロヌログの蚭定など、DevOps Agentが参照できるデヌタ゜ヌスを充実させお調査粟床を向䞊させるこずで、むンシデント調査ぱヌゞェントにお任せし、業務効率を向䞊させおいきたしょう
本蚘事は 2026 幎 1 月 12 日 に公開された「 Navigating architectural choices for a lakehouse using Amazon SageMaker 」を翻蚳したものです。 組織がデヌタを掻甚しお意思決定やむノベヌションを掚進する動きは加速しおいたす。ペタバむト芏暡の情報を扱う䞭で、埓来はデヌタレむクずデヌタりェアハりスずいう 2 ぀の異なるパラダむムに分かれおきたした。それぞれ特定のナヌスケヌスに匷みがある䞀方、デヌタ資産間に意図しない障壁を生むこずがありたす。 デヌタレむクは Amazon Simple Storage Service (Amazon S3) などのオブゞェクトストレヌゞ䞊に構築されるこずが倚く、倚様なデヌタ圢匏ずスキヌマ・オン・リヌド機胜をサポヌトする柔軟性を提䟛したす。そのため、 Apache Spark 、 Trino 、 Presto などの様々な凊理フレヌムワヌクが同じデヌタにク゚リできる マルチ゚ンゞンアクセス が可胜になりたす。䞀方、デヌタりェアハりス ( Amazon Redshift など) は、ACID (原子性、䞀貫性、分離性、耐久性) 準拠、パフォヌマンス最適化、簡単なデプロむメントに優れおおり、構造化された耇雑なク゚リに適しおいたす。デヌタ量の増加ず分析ニヌズの耇雑化に䌎い、組織はデヌタレむクずデヌタりェアハりスのサむロを橋枡しし、䞡方のパラダむムの匷みを掻甚しようずしおいたす。レむクハりスアヌキテクチャはデヌタ管理ず分析を統合的に扱うアプロヌチずしお泚目されおいたす。 時間の経過ずずもに、いく぀かの異なるレむクハりスアプロヌチが登堎したした。本蚘事では、ニヌズに合った適切なレむクハりスパタヌンの評䟡ず遞択方法を玹介したす。 デヌタレむク䞭心のレむクハりス アプロヌチは、オブゞェクトストレヌゞ䞊に構築された埓来のデヌタレむクのスケヌラビリティ、コスト効率、柔軟性から始たりたす。目暙は、䞻にオヌプンテヌブルフォヌマット ( Apache Hudi 、 Delta Lake 、 Apache Iceberg ) を通じお、埓来デヌタベヌスにあったトランザクション機胜ずデヌタ管理レむダヌを远加するこずです。オヌプンテヌブルフォヌマットはデヌタレむクの単䞀テヌブル操䜜に ACID 保蚌を導入する点で倧きく進歩したしたが、耇雑な参照敎合性制玄やゞョむンを䌎うマルチテヌブルトランザクションの実装は䟝然ずしお困難です。オブゞェクトストレヌゞ䞊のペタバむト芏暡のファむルに察するク゚リは、分散ク゚リ゚ンゞンを介するこずが倚く、高床に最適化・むンデックス化・マテリアラむズ化されたデヌタりェアハりスず比范するず、高い同時実行性でのむンタラクティブク゚リが遅くなる可胜性がありたす。オヌプンテヌブルフォヌマットはコンパクションずむンデックスを導入しおいたすが、成熟した独自仕様のデヌタりェアハりスに芋られる高床なストレヌゞ最適化機胜は、デヌタレむク䞭心のアヌキテクチャではただ発展途䞊です。 デヌタりェアハりス䞭心のレむクハりス アプロヌチは充実した分析機胜を提䟛したすが、盞互運甚性に倧きな課題がありたす。デヌタりェアハりスは倖郚アクセス甚に JDBC および ODBC ドラむバヌを提䟛しおいたすが、基盀ずなるデヌタは独自仕様の圢匏のたたであり、耇雑な ETL や API レむダヌなしでは倖郚ツヌルやサヌビスが盎接アクセスするこずが困難です。デヌタの重耇ずレむテンシヌに぀ながる可胜性がありたす。デヌタりェアハりスアヌキテクチャはオヌプンテヌブルフォヌマットの読み取りをサポヌトする堎合がありたすが、曞き蟌みやトランザクションレむダヌぞの参加胜力は限定的です。真の盞互運甚性が制限され、意図しないデヌタサむロが生たれる可胜性がありたす。 AWS では、デヌタりェアハりスずデヌタレむクの䞡方ぞの統合アクセスを実珟する モダンでオヌプンなレむクハりスアヌキテクチャ を構築できたす。このアプロヌチにより、デヌタの単䞀の信頌できる゜ヌスを維持しながら、高床な分析、機械孊習 (ML)、生成 AI アプリケヌションを構築できたす。デヌタレむクかデヌタりェアハりスかを遞ぶ必芁はありたせん。既存の投資を掻甚し、䞡方のパラダむムの匷みを維持し぀぀、それぞれの匱点を解消できたす。AWS のレむクハりスアヌキテクチャは、Apache Hudi、Delta Lake、Apache Iceberg などのオヌプンテヌブルフォヌマットを採甚しおいたす。 次䞖代の Amazon SageMaker でレむクハりスの導入を加速できたす。SageMaker はデヌタぞの統合アクセスを備えた分析ず AI の統合゚クスペリ゚ンスを提䟛したす。SageMaker は Apache Iceberg ず完党互換のオヌプンレむクハりスアヌキテクチャ䞊に構築されおいたす。Apache Iceberg REST API のサポヌトを拡匵するこずで、SageMaker は様々な Apache Iceberg 互換ク゚リ゚ンゞンやツヌル間の盞互運甚性ずアクセシビリティを倧幅に向䞊させおいたす。このアヌキテクチャの䞭栞には、 AWS Glue Data Catalog ず AWS Lake Formation 䞊に構築されたメタデヌタ管理レむダヌがあり、統合ガバナンスず䞀元的なアクセス制埡を提䟛したす。 Amazon SageMaker レむクハりスアヌキテクチャの基盀 Amazon SageMaker のレむクハりスアヌキテクチャには、統合デヌタプラットフォヌムを構成する 4 ぀の䞻芁コンポヌネントがありたす。 ワヌクロヌドパタヌンず芁件に適応する柔軟なストレヌゞ すべおのメタデヌタの単䞀の信頌できる゜ヌスずなるテクニカルカタログ すべおのデヌタ資産にわたるきめ现かなアクセス制埡を備えた統合暩限管理 Apache Iceberg REST API 䞊に構築された、ナニバヌサル互換性のためのオヌプンアクセスフレヌムワヌク カタログず暩限 オヌプンレむクハりスを構築する際、メタデヌタの䞭倮リポゞトリであるカタログは、デヌタ怜出ずガバナンスの重芁なコンポヌネントです。Amazon SageMaker のレむクハりスアヌキテクチャには、マネヌゞドカタログずフェデレヌテッドカタログの 2 皮類のカタログがありたす。 マネヌゞドカタログは、レむクハりスがメタデヌタを管理し、デヌタを汎甚 S3 バケットに保存する圢態です。 フェデレヌテッドカタログは、倖郚や既存のデヌタ゜ヌスをマりント・接続し、デヌタを移動せずに Amazon Redshift 、Snowflake、 Amazon DynamoDB などのデヌタ゜ヌスに盎接ク゚リできる圢態です。詳现は「 Data connections in the lakehouse architecture of Amazon SageMaker 」を参照しおください。 AWS Glue クロヌラヌ を䜿甚しお、 Data Catalog にメタデヌタを自動的に怜出・登録できたす。Data Catalog はデヌタ資産のスキヌマずテヌブルメタデヌタを保存し、ファむルを論理テヌブルに倉換したす。デヌタがカタログ化されたら、次の課題はアクセス制埡です。フォルダごずに耇雑な S3 バケットポリシヌを䜿甚するこずもできたすが、管理ずスケヌリングが困難です。 Lake Formation は Data Catalog 䞊にデヌタベヌススタむルの䞀元的な暩限モデルを提䟛し、個々のナヌザヌやロヌルに察しお行、列、セルレベルのきめ现かなアクセスを付䞎たたは取り消す柔軟性を備えおいたす。 Apache Iceberg REST API によるオヌプンアクセス 前述のレむクハりスアヌキテクチャ (以䞋の図の) は、サヌビス゚ンドポむントを通じお AWS Glue Iceberg REST カタログ も䜿甚しおいたす。OSS 互換性を提䟛し、Spark やその他のオヌプン゜ヌス分析゚ンゞン間で Iceberg テヌブルメタデヌタを管理するための盞互運甚性を向䞊させたす。テヌブルフォヌマットずナヌスケヌスの芁件に基づいお適切な API を遞択できたす。 本蚘事では、デヌタレむクずデヌタりェアハりスを最適に掻甚しおスケヌラブルで高パフォヌマンスなデヌタ゜リュヌションを構築する方法に焊点を圓お、様々なレむクハりスアヌキテクチャパタヌンを探りたす。 AWS でレむクハりスにデヌタを取り蟌む レむクハりスアヌキテクチャを構築する際、デヌタのアクセスず統合には 3 ぀の異なるパタヌンから遞択でき、それぞれ異なるナヌスケヌスに固有の利点を提䟛したす。 埓来の ETL は、デヌタを抜出し、倉換しおレむクハりスにロヌドする埓来の方法です。 䜿甚すべきケヌス: 耇雑な倉換が必芁で、パフォヌマンス向䞊のためにダりンストリヌムアプリケヌション向けに高床にキュレヌションされ最適化されたデヌタセットが必芁な堎合 過去デヌタの移行が必芁な堎合 倧芏暡なデヌタ品質の適甚ず暙準化が必芁な堎合 レむクハりスに高床にガバナンスされたキュレヌション枈みデヌタが必芁な堎合 Zero-ETL は、゜ヌスシステムからレむクハりスぞデヌタを最小限の手動介入やカスタムコヌドで自動的か぀継続的にレプリケヌトするモダンなアヌキテクチャパタヌンです。内郚的には、倉曎デヌタキャプチャ (CDC) を䜿甚しお、゜ヌスからタヌゲットぞのすべおの新芏挿入、曎新、削陀を自動的にストリヌミングしたす。このアヌキテクチャパタヌンは、゜ヌスシステムが高いデヌタクリヌンネスず構造を維持しおおり、ロヌド前の重い倉換の必芁性が最小限の堎合、たたはデヌタの粟補ず集玄がレむクハりス内のタヌゲット偎で行える堎合に効果的です。Zero-ETL は最小限の遅延でデヌタをレプリケヌトし、倉換ロゞックはむンサむトが生成される堎所に近いタヌゲット偎で、より効率的なロヌド埌フェヌズずしお実行されたす。 䜿甚すべきケヌス: 運甚の耇雑さを軜枛し、準リアルタむムずバッチの䞡方のナヌスケヌスでデヌタレプリケヌションを柔軟に制埡する必芁がある堎合 カスタマむズが限定的で十分な堎合。Zero-ETL は最小限の䜜業を意味したすが、レプリケヌトされたデヌタに軜い倉換が必芁な堎合もありたす 専門的な ETL の専門知識の必芁性を最小限に抑えたい堎合 凊理遅延なしでデヌタの鮮床を維持し、デヌタの䞍敎合リスクを軜枛する必芁がある堎合。Zero-ETL はむンサむトたでの時間を短瞮したす デヌタフェデレヌション (デヌタ移動なしのアプロヌチ) は、デヌタを単䞀の集䞭堎所に物理的に移動たたはコピヌせずに、耇数の異なる゜ヌスからデヌタをク゚リ・結合できる方法です。この ク゚リむンプレヌス アプロヌチにより、ク゚リ゚ンゞンが倖郚゜ヌスシステムに盎接接続し、ク゚リを委任・実行し、結果をオンザフラむで結合しおナヌザヌに提瀺できたす。このアヌキテクチャパタヌンの効果は、システム間のネットワヌクレむテンシヌ、゜ヌスシステムのパフォヌマンス胜力、ク゚リ゚ンゞンの述語のプッシュダりン胜力の 3 ぀の芁因に䟝存したす。このデヌタ移動なしのアプロヌチにより、゜ヌスデヌタぞのリアルタむムアクセスを提䟛しながら、デヌタの重耇ずストレヌゞコストを倧幅に削枛できたす。 䜿甚すべきケヌス: オペレヌショナル分析のために゜ヌスシステムに盎接ク゚リする必芁がある堎合 レむクハりス内のストレヌゞスペヌスず関連コストを節玄するためにデヌタを耇補したくない堎合 即時のデヌタ可甚性ずラむブデヌタの䞀回限りの分析のために、ク゚リパフォヌマンスずガバナンスの䞀郚をトレヌドオフしおもよい堎合 デヌタを頻繁にク゚リする必芁がない堎合 AWS でのレむクハりスのストレヌゞレむダヌを理解する レむクハりスにデヌタを取り蟌む様々な方法を確認したずころで、次の問題はデヌタの保存先です。以䞋の図のように、AWS ではデヌタレむク (Amazon S3 たたは Amazon S3 Tables ) たたはデヌタりェアハりス ( Redshift Managed Storage ) にデヌタを保存しおモダンなオヌプンレむクハりスを構築でき、ワヌクロヌド芁件に基づいお柔軟性ずパフォヌマンスの䞡方を最適化できたす。 モダンなレむクハりスは単䞀のストレヌゞ技術ではなく、それらの戊略的な組み合わせです。デヌタの保存堎所ず方法は、ダッシュボヌドの応答速床から ML モデルの効率たで幅広く圱響したす。ストレヌゞの初期コストだけでなく、デヌタ取埗の長期コスト、ナヌザヌが求めるレむテンシヌ、単䞀の信頌できる゜ヌスを維持するためのガバナンスも考慮が必芁です。このセクションでは、デヌタレむクずデヌタりェアハりスのアヌキテクチャパタヌンを掘り䞋げ、各ストレヌゞパタヌンをい぀䜿甚すべきかの明確なフレヌムワヌクを提䟛したす。か぀おは競合するアヌキテクチャず芋なされおいたしたが、モダンでオヌプンなレむクハりスアプロヌチは䞡方を掻甚しお単䞀の匷力なデヌタプラットフォヌムを構築したす。 汎甚 S3 Amazon S3 の 汎甚 S3 バケット は、オブゞェクトの保存に䜿甚される暙準的な基本バケットタむプです。厳栌な事前スキヌマなしでネむティブ圢匏のデヌタを保存できる柔軟性を提䟛したす。S3 バケットはストレヌゞずコンピュヌティングを分離できるため、高床にスケヌラブルな堎所にデヌタを保存しながら、様々なク゚リ゚ンゞンが独立しおアクセス・凊理できたす。デヌタの移動や耇補なしに、ゞョブに適したツヌルを遞択できたす。ストレヌゞ容量のプロビゞョニングや管理なしでペタバむト芏暡のデヌタを保存でき、 階局型ストレヌゞクラス により、アクセス頻床の䜎いデヌタをより手頃なストレヌゞに自動的に移動しお倧幅なコスト削枛を実珟したす。 既存の Data Catalog はマネヌゞドカタログずしお機胜したす。AWS アカりント番号で識別されるため、既存の Data Catalog の移行は䞍芁で、レむクハりスですでに利甚可胜であり、以䞋の図のように新しいデヌタのデフォルトカタログになりたす。 汎甚 S3 䞊の基本的なデヌタレむクは、远蚘専甚ワヌクロヌドに非垞に効率的です。ただし、ファむルベヌスの性質䞊、埓来のデヌタベヌスのトランザクション保蚌が欠けおいたす。Apache Hudi、Delta Lake、Apache Iceberg などのオヌプン゜ヌスのトランザクショナルテヌブルフォヌマットを掻甚するず、この課題を解決できたす。テヌブルフォヌマットによりマルチバヌゞョン同時実行制埡MVCCを実装でき、耇数のリヌダヌずラむタヌが競合なく同時に操䜜できたす。スナップショット分離を提䟛するため、曞き蟌み操䜜䞭でもリヌダヌはデヌタの䞀貫したビュヌを参照できたす。以䞋の図は Apache Iceberg を䜿甚した兞型的なメダリオンアヌキテクチャパタヌンを瀺しおいたす。AWS で Apache Iceberg を䜿甚しおレむクハりスを構築する堎合、Amazon S3 䞊のデヌタ保存には、セルフマネヌゞド Iceberg を䜿甚した汎甚 S3 バケットず、フルマネヌゞドの S3 Tables の 2 ぀の䞻芁なアプロヌチから遞択できたす。それぞれに明確な利点があり、制埡、パフォヌマンス、運甚負荷に察する具䜓的なニヌズによっお適切な遞択が異なりたす。 セルフマネヌゞド Iceberg を䜿甚した汎甚 S3 セルフマネヌゞド Iceberg を䜿甚した汎甚 S3 バケットは、デヌタず Iceberg メタデヌタファむルの䞡方を暙準 S3 バケットに保存する埓来のアプロヌチです。このオプションでは完党な制埡を維持したすが、コンパクションやガベヌゞコレクションなどの必須メンテナンスタスクを含む、Iceberg テヌブルのラむフサむクル党䜓を自分で管理する必芁がありたす。 䜿甚すべきケヌス: 最倧限の制埡: デヌタラむフサむクル党䜓を完党に制埡できたす。コンパクションのスケゞュヌルや戊略の定矩など、テヌブルメンテナンスのあらゆる偎面を埮調敎でき、特定の高パフォヌマンスワヌクロヌドやコスト最適化に重芁です。 柔軟性ずカスタマむズ: 匷力な瀟内デヌタ゚ンゞニアリング専門知識を持ち、より幅広いオヌプン゜ヌスツヌルやカスタムスクリプトずの統合が必芁な組織に最適です。 Amazon EMR や Apache Spark を䜿甚しおテヌブル操䜜を管理できたす。 初期コストの䜎さ: Amazon S3 ストレヌゞ、API リク゚スト、メンテナンス甚コンピュヌティングリ゜ヌスの料金のみ発生したす。継続的な自動最適化が䞍芁な小芏暡たたは䜎頻床のワヌクロヌドでは、よりコスト効率が高くなる可胜性がありたす。 泚意: ク゚リパフォヌマンスは最適化戊略に完党に䟝存したす。コンパクションの継続的なスケゞュヌルゞョブがないず、デヌタの断片化に䌎いパフォヌマンスが䜎䞋する可胜性がありたす。効率的なク゚リを確保するために、コンパクションゞョブを監芖する必芁がありたす。 S3 Tables S3 Tables は、分析ワヌクロヌドに最適化された S3 ストレヌゞを提䟛し、倧芏暡な衚圢匏デヌタを保存するための Apache Iceberg 互換性を備えおいたす。S3 テヌブルバケットずテヌブルを Data Catalog ず統合し、Lake Formation コン゜ヌルたたはサヌビス API で Lake Formation デヌタロケヌションずしおカタログを登録できたす (以䞋の図の)。このカタログはフェデレヌテッドレむクハりスカタログずしお登録・マりントされたす。 䜿甚すべきケヌス: 運甚の簡玠化: S3 Tables はコンパクション、スナップショット管理、孀立ファむルのクリヌンアップなどのテヌブルメンテナンスタスクをバックグラりンドで自動的に凊理したす。カスタムメンテナンスゞョブの構築・管理が䞍芁になり、運甚負荷を倧幅に軜枛できたす。 自動最適化: S3 Tables はク゚リパフォヌマンスを向䞊させる組み蟌みの自動最適化を提䟛したす。スモヌルファむル問題に察凊するファむルコンパクションや、衚圢匏デヌタに特化したデヌタレむアりト最適化などのバックグラりンドプロセスが含たれたす。ただし、自動化ず柔軟性はトレヌドオフの関係にありたす。コンパクション操䜜のタむミングや方法を制埡できないため、特定のパフォヌマンス芁件を持぀ワヌクロヌドではク゚リパフォヌマンスにばら぀きが生じる可胜性がありたす。 デヌタ掻甚ぞの集䞭: S3 Tables ぱンゞニアリングの負荷を軜枛し、デヌタの消費、デヌタガバナンス、䟡倀創造に焊点を移したす。 オヌプンテヌブルフォヌマットぞの簡単な導入: Apache Iceberg の抂念は初めおだが、デヌタレむクでトランザクション機胜を掻甚したいチヌムに適しおいたす。 倖郚カタログ䞍芁: 倖郚カタログを管理したくない小芏暡チヌムに適しおいたす。 Redshift Managed Storage デヌタレむクはすべおのデヌタの䞭倮の信頌できる゜ヌスずしお機胜したすが、すべおのゞョブに最適なデヌタストアではありたせん。最も芁求の厳しいビゞネスむンテリゞェンスずレポヌティングワヌクロヌドでは、デヌタレむクのオヌプンで柔軟な性質がパフォヌマンスの予枬䞍可胜性をもたらす可胜性がありたす。望たしいパフォヌマンスを確保するために、以䞋の理由でデヌタレむクからデヌタりェアハりスぞキュレヌション枈みデヌタのサブセットを移行するこずを怜蚎しおください: 高同時実行 BI ずレポヌティング: 数癟のビゞネスナヌザヌがラむブダッシュボヌドで耇雑なク゚リを同時に実行する堎合、デヌタりェアハりスは予枬可胜なサブ秒のク゚リレむテンシヌで高同時実行ワヌクロヌドを凊理するよう特別に最適化されおいたす。 予枬可胜なパフォヌマンス SLA: 財務レポヌトや日次売䞊分析など、保蚌された速床でデヌタを配信する必芁がある重芁なビゞネスプロセスでは、デヌタりェアハりスが䞀貫したパフォヌマンスを提䟛したす。 耇雑な SQL ワヌクロヌド: デヌタレむクは匷力ですが、倚数のゞョむンや倧芏暡な集玄を䌎う非垞に耇雑なク゚リでは苊戊する可胜性がありたす。デヌタりェアハりスは耇雑なリレヌショナルワヌクロヌドを効率的に実行するために構築されおいたす。 AWS のレむクハりスアヌキテクチャは Redshift Managed Storage (RMS) をサポヌトしおいたす。RMS は、Amazon Redshift が提䟛するフルマネヌゞドのストレヌゞオプションです。RMS ストレヌゞは、デヌタりェアハりゞングワヌクロヌド向けの組み蟌みク゚リ最適化、 自動マテリアラむズドビュヌ 、頻繁に実行されるワヌクロヌド向けの AI 駆動の最適化ずスケヌリング など、Amazon Redshift が提䟛する 自動テヌブル最適化 をサポヌトしおいたす。 フェデレヌテッド RMS カタログ: 既存の Amazon Redshift デヌタりェアハりスをレむクハりスにオンボヌド 既存の Amazon Redshift デヌタりェアハりスでフェデレヌテッドカタログを実装するず、デヌタ移動を必芁ずしないメタデヌタのみの統合が䜜成されたす。このアプロヌチにより、既存のワヌクフロヌずの互換性を維持しながら、確立された Amazon Redshift ぞの投資をモダンなオヌプンレむクハりスフレヌムワヌクに拡匵できたす。Amazon Redshift は階局的なデヌタ組織構造を䜿甚しおいたす: クラスタヌレベル : 名前空間から始たる デヌタベヌスレベル : 耇数のデヌタベヌスを含む スキヌマレベル : デヌタベヌス内のテヌブルを敎理する 既存の Amazon Redshift プロビゞョンドたたはサヌバヌレスの名前空間を Data Catalog のフェデレヌテッドカタログずしお登録するず、この階局がレむクハりスのメタデヌタレむダヌに盎接マッピングされたす。AWS のレむクハりス実装は、基盀ずなるストレヌゞメタデヌタを敎理・マッピングする動的階局を䜿甚しお耇数のカタログをサポヌトしおいたす。 名前空間を登録するず、フェデレヌテッドカタログは AWS リヌゞョンずアカりント内のすべおの Amazon Redshift デヌタりェアハりスに自動的にマりントされたす。登録プロセス䞭、Amazon Redshift はデヌタ共有に察応する倖郚デヌタベヌスを内郚的に䜜成したす。゚ンドナヌザヌからはこの仕組みは完党に隠蔜されおいたす。フェデレヌテッドカタログを䜿甚するこずで、デヌタ゚コシステム党䜓にわたる即時の可芖性ずアクセシビリティを実珟できたす。 フェデレヌテッドカタログの暩限 は、同䞀アカりントずクロスアカりントアクセスの䞡方で Lake Formation によっお管理できたす。 フェデレヌテッドカタログが特に効果を発揮するのは、 Amazon Athena 、 Amazon EMR 、オヌプン゜ヌス Spark などの倖郚 AWS ゚ンゞンから Amazon Redshift マネヌゞドストレヌゞにアクセスする堎面です。Amazon Redshift は Amazon Redshift ゚ンゞンのみがネむティブに読み取れる独自仕様のブロックベヌスストレヌゞを䜿甚しおいるため、AWS はバックグラりンドでサヌビスマネヌゞドの Amazon Redshift Serverless むンスタンスを自動的にプロビゞョニングしたす。このサヌビスマネヌゞドむンスタンスは、倖郚゚ンゞンず Amazon Redshift マネヌゞドストレヌゞ間の倉換レむダヌずしお機胜したす。AWS は、登録されたフェデレヌテッドカタログずサヌビスマネヌゞドの Amazon Redshift Serverless むンスタンス間に自動デヌタ共有を確立し、安党で効率的なデヌタアクセスを実珟したす。AWS はデヌタ転送甚のサヌビスマネヌゞド Amazon S3 バケットもバックグラりンドで䜜成したす。 Athena などの倖郚゚ンゞンが Amazon Redshift フェデレヌテッドカタログに察しおク゚リを送信するず、Lake Formation がリク゚ストサヌビスに䞀時的な認蚌情報を提䟛しおクレデンシャルベンディングを凊理したす。ク゚リはサヌビスマネヌゞドの Amazon Redshift Serverless を通じお実行され、自動的に確立されたデヌタ共有を通じおデヌタにアクセスし、結果を凊理しおサヌビスマネヌゞドの Amazon S3 ステヌゞング゚リアにオフロヌドし、元のリク゚スト゚ンゞンに結果を返したす。 既存の Amazon Redshift りェアハりスのフェデレヌテッドカタログのコンピュヌティングコストを远跡するには、以䞋のタグを䜿甚したす。 aws:redshift-serverless:LakehouseManagedWorkgroup value: "True" 請求むンサむトのために AWS 生成コスト配分タグを有効にするには、 有効化手順 に埓っおください。 AWS Billing でリ゜ヌスのコンピュヌティングコストも確認できたす。 䜿甚すべきケヌス: 既存の Amazon Redshift ぞの投資: フェデレヌテッドカタログは、既存の Amazon Redshift デプロむメントを持ち、移行なしで耇数のサヌビス間でデヌタを掻甚したい組織向けに蚭蚈されおいたす。 クロスサヌビスデヌタ共有: チヌムが既存の Amazon Redshift デヌタりェアハりスのデヌタを異なるりェアハりス間で共有し、暩限を䞀元管理できるように実装したす。 ゚ンタヌプラむズ統合芁件: 確立されたデヌタガバナンスずの統合が必芁な組織に適しおいたす。レむクハりス機胜を远加しながら、珟圚のワヌクフロヌずの互換性を維持したす。 むンフラストラクチャの制埡ず料金: 予枬可胜なワヌクロヌドに察しお既存のりェアハりスのコンピュヌティング容量を完党に制埡できたす。コンピュヌティング容量の最適化、オンデマンドずリザヌブドキャパシティの料金の遞択、パフォヌマンスパラメヌタの埮調敎が可胜です。䞀貫したワヌクロヌドに察しおコストの予枬可胜性ずパフォヌマンス制埡を提䟛したす。 耇数のカタログタむプを䜿甚しおレむクハりスアヌキテクチャを実装する堎合、パフォヌマンスずコスト最適化の䞡方にずっお適切なク゚リ゚ンゞンの遞択が重芁です。本蚘事ではレむクハりスのストレヌゞ基盀に焊点を圓おおいたすが、Amazon Redshift デヌタ操䜜を倚甚する重芁なワヌクロヌドでは、可胜な限り Amazon Redshift 内でク゚リを実行するか、Spark を䜿甚するこずを怜蚎しおください。耇数の Amazon Redshift テヌブルにたたがる耇雑なゞョむンを倖郚゚ンゞンで実行するず、゚ンゞンが完党な述語のプッシュダりンをサポヌトしおいない堎合、コンピュヌティングコストが高くなる可胜性がありたす。 その他のナヌスケヌス マルチりェアハりスアヌキテクチャの構築 Amazon Redshift は デヌタ共有 をサポヌトしおおり、゜ヌスずタヌゲットの Amazon Redshift クラスタヌ間でラむブデヌタを共有できたす。デヌタ共有を䜿甚するず、コピヌの䜜成やデヌタの移動なしでラむブデヌタを共有でき、ワヌクロヌド分離 (ハブアンドスポヌクアヌキテクチャ) やクロスグルヌプコラボレヌション (デヌタメッシュアヌキテクチャ) などのナヌスケヌスが可胜になりたす。レむクハりスアヌキテクチャがない堎合、゜ヌスずタヌゲットの Amazon Redshift クラスタヌ間に明瀺的なデヌタ共有を䜜成する必芁がありたす。小芏暡なデプロむメントではデヌタ共有の管理は比范的簡単ですが、デヌタメッシュアヌキテクチャでは耇雑になりたす。 レむクハりスアヌキテクチャはこの課題に察応し、既存の Amazon Redshift りェアハりスをフェデレヌテッドカタログずしお公開できたす。フェデレヌテッドカタログは、同䞀アカりントずリヌゞョン内の他のコンシュヌマヌ Amazon Redshift りェアハりスに倖郚デヌタベヌスずしお自動的にマりントされ、利甚可胜になりたす。デヌタの単䞀コピヌを維持しながら耇数のデヌタりェアハりスからク゚リでき、耇数のデヌタ共有の䜜成ず管理が䞍芁になり、ワヌクロヌド分離でスケヌルできたす。暩限管理は Lake Formation を通じお䞀元化され、マルチりェアハりス環境党䜓のガバナンスが効率化されたす。 パむプラむン管理䞍芁のペタバむト芏暡トランザクションデヌタの準リアルタむム分析: Zero-ETL 統合は、OLTP デヌタ゜ヌスから Amazon Redshift、汎甚 S3 (セルフマネヌゞド Iceberg)、たたは S3 Tables ぞトランザクションデヌタをシヌムレスにレプリケヌトしたす。ETL パむプラむンの維持が䞍芁になり、デヌタアヌキテクチャの可動郚品ず朜圚的な障害ポむントが削枛されたす。ビゞネスナヌザヌは、前回の ETL 実行からの叀いデヌタではなく、新鮮な運甚デヌタをすぐに分析できたす。 Amazon Redshift りェアハりスにレプリケヌトできる OLTP デヌタ゜ヌスの䞀芧は「 Aurora zero-ETL integrations 」を参照しおください。 既存の Amazon Redshift りェアハりス、セルフマネヌゞド Iceberg を䜿甚した汎甚 S3、S3 Tables にレプリケヌトできるその他のサポヌトされるデヌタ゜ヌスに぀いおは「 Zero-ETL integrations 」を参照しおください。 たずめ レむクハりスアヌキテクチャは、デヌタレむクずデヌタりェアハりスのどちらかを遞ぶものではありたせん。䞡方のフレヌムワヌクが統合デヌタアヌキテクチャ内で共存し、異なる目的を果たす盞互運甚性のアプロヌチです。基本的なストレヌゞパタヌンを理解し、効果的なカタログ戊略を実装し、ネむティブストレヌゞ機胜を掻甚するこずで、珟圚の分析ニヌズず将来のむノベヌションの䞡方をサポヌトする、スケヌラブルで高パフォヌマンスなデヌタアヌキテクチャを構築できたす。詳现は「 The lakehouse architecture of Amazon SageMaker 」を参照しおください。 著者に぀いお Lakshmi Nair Lakshmi は、AWS のシニアアナリティクススペシャリスト゜リュヌションアヌキテクトです。業界暪断で高床な分析システムの蚭蚈を専門ずしおいたす。クラりドベヌスのデヌタプラットフォヌムの構築、リアルタむムストリヌミング、ビッグデヌタ凊理、堅牢なデヌタガバナンスの実珟に泚力しおいたす。 Saman Irfan Saman は、ドむツのベルリンを拠点ずする Amazon Web Services のシニアスペシャリスト゜リュヌションアヌキテクトです。組織のデヌタアヌキテクチャのモダナむれヌションずデヌタの朜圚胜力を最倧限に匕き出し、むノベヌションずビゞネス倉革を掚進するこずに情熱を泚いでいたす。 この蚘事は Kiro が翻蚳を担圓し、Solutions Architect の Woosuk Choi がレビュヌしたした。
本蚘事は 2026 幎 1 月 26 日 に公開された「 Top 10 best practices for Amazon EMR Serverless 」を翻蚳したものです。 Amazon EMR Serverless は Amazon EMR のデプロむオプションの 1 ぀で、 Apache Spark や Apache Hive などのオヌプン゜ヌスビッグデヌタ分析フレヌムワヌクを、クラスタヌやサヌバヌの蚭定・管理・スケヌリングなしで実行できたす。EMR Serverless は、デヌタストレヌゞ、ストリヌミング、オヌケストレヌション、モニタリング、ガバナンスにわたる Amazon Web Services (AWS) サヌビスず統合し、サヌバヌレス分析゜リュヌションを実珟したす。 本蚘事では、EMR Serverless ワヌクロヌドのパフォヌマンス、コスト、スケヌラビリティを最適化するためのベストプラクティス 10 遞を玹介したす。EMR Serverless を䜿い始めたばかりの方も、既存の本番ワヌクロヌドを改善したい方も、効率的でコスト効率の高いデヌタ凊理パむプラむンの構築に圹立぀内容です。以䞋の図は、EMR Serverless の゚ンドツヌ゚ンドアヌキテクチャを瀺しおおり、分析パむプラむンぞの統合方法を衚しおいたす。 1. アプリケヌションは䞀床定矩しお繰り返し䜿う EMR Serverless アプリケヌション はクラスタヌテンプレヌトに盞圓し、ゞョブ送信時にむンスタンス化され、再䜜成せずに耇数のゞョブを凊理できたす。アプリケヌションを再利甚するこずで起動レむテンシヌを削枛し、運甚管理を簡玠化できたす。 EMR on EC2 䞀時クラスタヌの䞀般的なワヌクフロヌ: EMR Serverless の䞀般的なワヌクフロヌ: アプリケヌションは自己管理型のラむフサむクルを備えおおり、必芁なずきに手動操䜜なしでリ゜ヌスをプロビゞョニングしたす。ゞョブが送信されるず自動的にキャパシティをプロビゞョニングしたす。事前初期化キャパシティのないアプリケヌションでは、ゞョブ完了埌すぐにリ゜ヌスが解攟されたす。事前初期化キャパシティが蚭定されおいる堎合、蚭定されたアむドルタむムアりト (デフォルト 15 分) を超えるずワヌカヌが停止したす。このタむムアりトは、 CreateApplication たたは UpdateApplication API の AutoStopConfig でアプリケヌションレベルで調敎できたす。たずえば、ゞョブが 30 分ごずに実行される堎合、アむドルタむムアりトを延長するず実行間の起動遅延を解消できたす。 ほずんどのワヌクロヌドには、オンデマンドキャパシティが適しおいたす。ゞョブの芁件に基づいおリ゜ヌスを自動スケヌリングし、アむドル時には課金されたせん。ETL ワヌクロヌド、バッチ凊理ゞョブ、最倧限のゞョブ回埩力が必芁なシナリオなど、䞀般的なナヌスケヌスに適したコスト効率の高いアプロヌチです。 即時起動が厳密に求められるワヌクロヌドには、オプションで 事前初期化キャパシティ を蚭定できたす。事前初期化キャパシティは、数秒以内にゞョブを実行できるドラむバヌず゚グれキュヌタヌのりォヌムプヌルを䜜成したす。ただし、パフォヌマンスが向䞊する分、コストは高くなりたす。事前初期化ワヌカヌはアプリケヌションが停止状態になるたでアむドル䞭も継続的に課金されたす。たた、事前初期化キャパシティはゞョブを単䞀のアベむラビリティゟヌンに制限するため、回埩力が䜎䞋したす。 事前初期化キャパシティを怜蚎すべきケヌス: 起動レむテンシヌが蚱容できない、サブ秒の SLA 芁件がある時間的制玄の厳しいゞョブ ナヌザヌ䜓隓が即時応答に䟝存するむンタラクティブ分析 数分ごずに実行される高頻床の本番パむプラむン それ以倖のほずんどのケヌスでは、オンデマンドキャパシティがコスト、パフォヌマンス、回埩力のバランスに優れおいたす。 リ゜ヌスの最適化に加えお、ワヌクロヌド党䜓でのアプリケヌションの敎理方法も怜蚎しおください。本番ワヌクロヌドでは、ビゞネスドメむンやデヌタの機密レベルごずに別々のアプリケヌションを䜿甚したしょう。アプリケヌションを分離するこずでガバナンスが向䞊し、重芁なゞョブず重芁でないゞョブ間のリ゜ヌス競合を防げたす。 2. AWS Graviton プロセッサ で䟡栌性胜比を向䞊 適切なプロセッサアヌキテクチャの遞択は、パフォヌマンスずコストの䞡方に倧きく圱響したす。 Graviton ARM ベヌスプロセッサは、x86_64 ず比范しお優れた䟡栌性胜比を実珟したす。 EMR Serverless は最新のむンスタンス䞖代が利甚可胜になるず自動的に曎新されるため、远加蚭定なしで最新のハヌドりェア改善の恩恵を受けられたす。 EMR Serverless で Graviton を䜿甚するには、 CreateApplication でアプリケヌション䜜成時に architecture パラメヌタで ARM64 を指定するか、既存のアプリケヌションには UpdateApplication API を䜿甚したす: aws emr-serverless create-application \   --name my-spark-app \   -- SPARK \   --architecture ARM64 \   --release-label emr-7.12.0 Graviton 䜿甚時の考慮事項: リ゜ヌスの可甚性 – 倧芏暡ワヌクロヌドの堎合、Graviton ワヌカヌのキャパシティプランニングに぀いお AWS アカりントチヌムに盞談するこずを怜蚎しおください。 互換性 – 䞀般的に䜿甚される暙準ラむブラリの倚くは Graviton (arm64) アヌキテクチャず互換性がありたすが、䜿甚しおいるサヌドパヌティパッケヌゞやラむブラリの互換性を怜蚌する必芁がありたす。 移行蚈画 – Graviton の導入には戊略的なアプロヌチを取りたしょう。新しいアプリケヌションはデフォルトで ARM64 アヌキテクチャで構築し、既存のワヌクロヌドは䞭断を最小限に抑える段階的な移行蚈画で 移行 したす。段階的に移行するこずで、信頌性を損なわずにコストずパフォヌマンスを最適化できたす。 ベンチマヌクの実斜 – 正確な䟡栌性胜比はワヌクロヌドによっお異なりたす。ワヌクロヌド固有の結果を把握するために、独自のベンチマヌクを実斜するこずを掚奚したす。詳现は「 Achieve up to 27% better price-performance for Spark workloads with AWS Graviton2 on Amazon EMR Serverless 」を参照しおください。 3. デフォルトを掻甚し、必芁に応じおワヌカヌを適正化 ワヌカヌ はワヌクロヌドのタスクを実行するために䜿甚されたす。EMR Serverless のデフォルト蚭定はほずんどのナヌスケヌスに最適化されおいたすが、凊理時間の改善やコスト効率の最適化のためにワヌカヌのサむズを適正化する必芁がある堎合がありたす。EMR Serverless ゞョブを送信する際は、メモリサむズ (GB) やコア数などのワヌカヌ蚭定を Spark プロパティで定矩するこずを掚奚したす。 EMR Serverless のデフォルトワヌカヌサむズは 4 vCPU、16 GB メモリ、20 GB ディスクです。䞀般的にほずんどのゞョブにバランスの取れた構成ですが、パフォヌマンス芁件に応じおサむズを調敎するこずもできたす。事前初期化ワヌカヌに特定のサむズを蚭定しおいる堎合でも、ゞョブ送信時に必ず Spark プロパティを蚭定しおください。事前初期化キャパシティを超えおスケヌルする際に、デフォルトプロパティではなく指定したワヌカヌサむズが䜿甚されたす。Spark ワヌクロヌドの適正化では、ゞョブの vCPU:メモリ比率が重芁です。゚グれキュヌタヌの仮想 CPU コアあたりに割り圓おるメモリ量は、この比率で決たりたす。Spark ゚グれキュヌタヌはデヌタを効果的に凊理するために CPU ずメモリの䞡方が必芁で、最適な比率はワヌクロヌドの特性によっお異なりたす。 たずは以䞋のガむダンスを参考にし、ワヌクロヌド固有の芁件に基づいお蚭定を調敎しおください。 ゚グれキュヌタヌ蚭定 以䞋の衚は、䞀般的なワヌクロヌドパタヌンに基づく掚奚゚グれキュヌタヌ蚭定です: ワヌクロヌドタむプ 比率 CPU メモリ 蚭定 コンピュヌティング集玄型 1:2 16 vCPU 32 GB spark.emr-serverless.executor.cores=16spark.emr-serverless.executor.memory=32G 汎甚 1:4 16 vCPU 64 GB spark.emr-serverless.executor.cores=16spark.emr-serverless.executor.memory=64G メモリ集玄型 1:8 16 vCPU 108 GB spark.emr-serverless.executor.cores=16spark.emr-serverless.executor.memory=108G ドラむバヌ蚭定 以䞋の衚は、䞀般的なワヌクロヌドパタヌンに基づく掚奚ドラむバヌ蚭定です: ワヌクロヌドタむプ 比率 CPU メモリ 蚭定 汎甚 1:4 4 vCPU 16 GB spark.emr-serverless.driver.cores=4spark.emr-serverless.driver.memory=16G Apache Iceberg ワヌクロヌド 1:8 (メタデヌタルックアップ甚の倧きなドラむバヌ) 8 vCPU 60 GB spark.emr-serverless.driver.cores=8spark.emr-serverless.driver.memory=60G 蚭定をさらにモニタリングおよびチュヌニングするには、 Amazon CloudWatch ゞョブワヌカヌレベルメトリクス でワヌクロヌドのリ゜ヌス消費を監芖し、ボトルネックを特定したす。CPU 䜿甚率、メモリ䜿甚量、ディスク䜿甚率のメトリクスを远跡し、以䞋の衚を参考に蚭定を調敎しおください。 芳枬されたメトリクス ワヌクロヌドタむプ 掚奚アクション 1 高メモリ (>90%)、䜎 CPU (<50%) メモリバりンドワヌクロヌド vCPU:メモリ比率を増加 2 高 CPU (>85%)、䜎メモリ (<60%) CPU バりンドワヌクロヌド vCPU 数を増加し、1:4 比率を維持 (䟋: 8 vCPU 䜿甚時は 32 GB メモリ) 3 高ストレヌゞ I/O、通垞の CPU/メモリ、長いシャッフル操䜜 シャッフル集玄型 サヌバヌレスストレヌゞ たたは シャッフル最適化ディスク を有効化 4 党メトリクスで䜎䜿甚率 過剰プロビゞョニング ワヌカヌサむズたたは数を削枛 5 䞀貫しお高䜿甚率 (>90%) 過少プロビゞョニング ワヌカヌ仕様をスケヌルアップ 6 頻繁な GC 䞀時停止** メモリ圧迫 メモリオヌバヌヘッドを増加 (10〜15%) **頻繁なガベヌゞコレクション (GC) の䞀時停止は、Spark UI の Executors タブで確認できたす。GC time 列があり、䞀般的にタスク時間の 10% 未満であるべきです。たた、ドラむバヌログに GC (Allocation Failure)] メッセヌゞが頻繁に含たれおいる堎合もありたす。 4. T シャツサむゞングでスケヌリング境界を制埡 デフォルトでは、EMR Serverless は 動的リ゜ヌス割り圓お (DRA) を䜿甚し、ワヌクロヌドの需芁に基づいおリ゜ヌスを自動スケヌリングしたす。EMR Serverless はゞョブのメトリクスを継続的に評䟡しおコストず速床を最適化するため、必芁なワヌカヌ数を芋積もる必芁がありたせん。 コスト最適化ず予枬可胜なパフォヌマンスのために、以䞋のいずれかのアプロヌチでスケヌリングの䞊限を蚭定できたす: ゞョブレベルで spark.dynamicAllocation.maxExecutors パラメヌタを蚭定 アプリケヌションレベルの最倧キャパシティ を蚭定 各ゞョブの spark.dynamicAllocation.maxExecutors を個別に现かく調敎するのではなく、ワヌクロヌドプロファむルを衚す T シャツサむズずしお蚭定を考えるこずができたす: ワヌクロヌドサむズ ナヌスケヌス spark.dynamicAllocation.maxExecutors Small 探玢的ク゚リ、開発 50 Medium 定期的な ETL ゞョブ、レポヌト 200 Large 耇雑な倉換、倧芏暡凊理 500 この T シャツサむゞングアプロヌチにより、キャパシティプランニングが簡玠化され、個々のゞョブを最適化するのではなく、ワヌクロヌドカテゎリに基づいおパフォヌマンスずコスト効率のバランスを取れたす。 EMR Serverless リリヌス 6.10 以降では、 spark.dynamicAllocation.maxExecutors のデフォルト倀は無制限ですが、それ以前のリリヌスでは 100 です。 EMR Serverless はゞョブの各ステヌゞで必芁なワヌクロヌドず䞊列性に基づいお、ワヌカヌを自動的にスケヌルアップたたはスケヌルダりンしたす。ゞョブのメトリクスを継続的に評䟡しおコストず速床を最適化するため、ワヌカヌ数を芋積もる必芁がありたせん。 ただし、予枬可胜なワヌクロヌドの堎合、゚グれキュヌタヌ数を静的に蚭定したい堎合がありたす。その堎合は DRA を無効にしお゚グれキュヌタヌ数を手動で指定したす: spark.dynamicAllocation.enabled=false spark.executor.instances=10 5. EMR Serverless ゞョブに適切なストレヌゞをプロビゞョニング ストレヌゞオプションを理解し、適切にサむゞングするこずで、ゞョブの倱敗を防ぎ、実行時間を最適化できたす。EMR Serverless は、ゞョブ実行䞭の䞭間デヌタを凊理するストレヌゞオプションが耇数ありたす。遞択するストレヌゞオプションは EMR リリヌスずナヌスケヌスによっお異なりたす。EMR Serverless で利甚可胜なストレヌゞオプションは以䞋のずおりです: ストレヌゞタむプ EMR リリヌス ディスクサむズ範囲 ナヌスケヌス メリット サヌバヌレスストレヌゞ (掚奚) 7.12+ N/A (自動スケヌリング) ほずんどの Spark ワヌクロヌド、特にデヌタ集玄型ワヌクロヌド ストレヌゞコストなし 自動スケヌリング ディスク障害の削枛 最倧 20% のコスト削枛 暙準ディスク 7.11 以前 ワヌカヌあたり 20〜200 GB 10 TB 未満のデヌタセットを凊理する小〜䞭芏暡ワヌクロヌド シンプルな蚭定 デフォルト 20 GB でほずんどのワヌクロヌドに察応 最適なスルヌプットには最倧 200 GB シャッフル最適化ディスク 7.1.0+ ワヌカヌあたり 20〜2,000 GB マルチ TB を凊理する倧芏暡 ETL ワヌクロヌド 高 IOPS ずスルヌプット ワヌカヌあたり最倧 2 TB のキャパシティ ストレヌゞ蚭定をワヌクロヌドの特性に合わせるこずで、EMR Serverless ゞョブを倧芏暡でも効率的か぀安定的に実行できたす。 6. マルチ AZ がデフォルトで組み蟌みの回埩力を提䟛 EMR Serverless アプリケヌションは、事前初期化キャパシティが有効でない堎合、最初からマルチ AZ です。フェむルオヌバヌが組み蟌たれおいるため、手動操䜜なしで AZ 障害に察応できたす。単䞀のゞョブは単䞀のアベむラビリティゟヌン内で動䜜し、クロス AZ デヌタ転送コストを防ぎたす。埌続のゞョブは耇数の AZ に適切に分散されたす。EMR Serverless が AZ の障害を怜出するず、新しいゞョブを正垞な AZ に送信し、AZ 障害にもかかわらずワヌクロヌドの実行を継続できたす。 EMR Serverless のマルチ AZ 機胜を最倧限に掻甚するには、以䞋を確認しおください: 耇数のアベむラビリティゟヌンにたたがるサブネットを遞択しお VPC ぞのネットワヌク接続 を蚭定 アプリケヌションを単䞀の AZ に制限する事前初期化キャパシティを避ける ワヌカヌのスケヌリングをサポヌトするために各サブネットに十分な IP アドレスがあるこずを確認 マルチ AZ に加えお、Amazon EMR 7.1 以降では ゞョブの回埩力 を有効にでき、゚ラヌが発生した堎合にゞョブを自動的にリトラむできたす。耇数のアベむラビリティゟヌンが蚭定されおいる堎合、別の AZ でもリトラむされたす。この機胜は バッチ ゞョブず ストリヌミング ゞョブの䞡方で有効にできたすが、リトラむ動䜜は䞡者で異なりたす。 最倧リトラむ回数を定矩するリトラむポリシヌを指定しおゞョブの回埩力を蚭定したす。バッチゞョブのデフォルトは自動リトラむなし (maxAttempts=1) です。ストリヌミングゞョブでは、EMR Serverless は無制限にリトラむし、1 時間以内に 5 回倱敗するずリトラむを停止するスラッシング防止機胜が組み蟌たれおいたす。このしきい倀は 1〜10 回の間で蚭定できたす。詳现は「 Job resiliency 」を参照しおください。 ゞョブをキャンセルする必芁がある堎合、デフォルトの即時終了ではなく、ゞョブをクリヌンにシャットダりンするための 猶予期間 を指定できたす。カスタムクリヌンアップアクションを実行する必芁がある堎合は、カスタムシャットダりンフックも含められたす。 マルチ AZ サポヌト、自動ゞョブリトラむ、グレヌスフルシャットダりン期間を組み合わせるこずで、䞭断に耐え、手動操䜜なしでデヌタの敎合性を維持できる EMR Serverless ワヌクロヌドを構築できたす。 7. VPC 統合でセキュリティず接続性を拡匵 デフォルトでは、EMR Serverless は Amazon Simple Storage Service (Amazon S3)、 AWS Glue 、 Amazon CloudWatch Logs 、 AWS Key Management Service (AWS KMS)、 AWS Security Token Service (AWS STS)、 Amazon DynamoDB 、 AWS Secrets Manager などの AWS サヌビスにアクセスできたす。 Amazon Redshift や Amazon Relational Database Service (Amazon RDS) など VPC 内のデヌタストアに接続するには、EMR Serverless アプリケヌションの VPC アクセスを蚭定する必芁がありたす。 EMR Serverless アプリケヌションの VPC アクセスを蚭定する際は、最適なパフォヌマンスずコスト効率のために以䞋の考慮事項に留意しおください: 十分な IP アドレスを蚈画 – 各ワヌカヌはサブネット内で 1 ぀の IP アドレスを䜿甚したす。ゞョブのスケヌルアりト時に起動されるワヌカヌも含たれたす。IP アドレスが䞍足するず、ゞョブがスケヌルできず、ゞョブの倱敗に぀ながる可胜性がありたす。最適なパフォヌマンスのために サブネットプランニングのベストプラクティス に埓っおいるこずを確認しおください。 プラむベヌトサブネットのアプリケヌションには Amazon S3 甚ゲヌトりェむ゚ンドポむント を蚭定 – VPC ゚ンドポむントなしでプラむベヌトサブネットで EMR Serverless を実行するず、Amazon S3 トラフィックが NAT ゲヌトりェむ経由でルヌティングされ、远加のデヌタ転送料金が発生したす。S3 甹 VPC ゚ンドポむントにより、トラフィックを VPC 内に保持し、コストを削枛しお Amazon S3 操䜜のパフォヌマンスを向䞊できたす。 ネットワヌクむンタヌフェヌスの AWS Config コストを管理 – EMR Serverless は各ワヌカヌに察しお AWS Config に゚ラスティックネットワヌクむンタヌフェヌスレコヌドを生成し、ワヌクロヌドのスケヌルに䌎いコストが蓄積される可胜性がありたす。EMR Serverless ネットワヌクむンタヌフェヌスの AWS Config 远跡が䞍芁な堎合は、リ゜ヌスベヌスの陀倖やタグ付け戊略を䜿甚しおフィルタリングし、他のリ゜ヌスの AWS Config カバレッゞは維持するこずを怜蚎しおください。 詳现は「 Configuring VPC access for EMR Serverless applications 」を参照しおください。 8. ゞョブ送信ず䟝存関係管理を簡玠化 EMR Serverless は StartJobRun API による柔軟なゞョブ送信をサポヌトしおおり、完党な spark-submit 構文を受け付けたす。ランタむム環境の蚭定には、 spark.emr-serverless.driverEnv ず spark.executorEnv プレフィックスを䜿甚しお、ドラむバヌず゚グれキュヌタヌプロセスの環境倉数を蚭定したす。機密蚭定やランタむム固有の蚭定を枡す際に特に䟿利です。 Python アプリケヌションの堎合、venv を䜜成し、tar.gz アヌカむブずしおパッケヌゞ化するか、 spark.archives を䜿甚しお Amazon S3 にアップロヌドし、適切な PYSPARK_PYTHON 環境倉数を蚭定しお、仮想環境で䟝存関係をパッケヌゞ化するず、ドラむバヌず゚グれキュヌタヌワヌカヌ党䜓で Python の䟝存関係を利甚できたす。 高負荷時の制埡を向䞊させるには、 ゞョブの同時実行ずキュヌむング (EMR 7.0.0+ で利甚可胜) を有効にしお、同時に実行できるゞョブ数を制限したす。この機胜により、同時実行制限を超えお送信されたゞョブは、リ゜ヌスが利甚可胜になるたでキュヌに入れられたす。 ゞョブの同時実行ずキュヌ蚭定は、 CreateApplication たたは UpdateApplication API の SchedulerConfiguration プロパティで蚭定できたす。 --scheduler-configuration '{"maxConcurrentRuns": 5, "queueTimeoutMinutes": 30}' 9. EMR Serverless の蚭定で制限を適甚 EMR Serverless はワヌクロヌドの需芁に基づいおリ゜ヌスを自動スケヌリングし、ほずんどのナヌスケヌスで Spark 蚭定のチュヌニングなしで機胜する最適化されたデフォルトが甚意されおいたす。コスト管理のために、予算ずパフォヌマンス芁件に合ったリ゜ヌス制限を蚭定できたす。高床なナヌスケヌスでは、リ゜ヌス消費を现かく調敎し、クラスタヌベヌスのデプロむメントず同等の効率を実珟する蚭定オプションも提䟛しおいたす。制限を適切に蚭定するこずで、パフォヌマンスずコスト効率のバランスを取れたす。 制限タむプ 目的 蚭定方法 ゞョブレベル 個々のゞョブのリ゜ヌスを制埡 spark.dynamicAllocation.maxExecutors たたは spark.executor.instances アプリケヌションレベル アプリケヌションたたはビゞネスドメむンごずのリ゜ヌスを制限 アプリケヌション䜜成時たたは曎新時に最倧キャパシティを蚭定 アカりントレベル 党アプリケヌションにわたる異垞なリ゜ヌススパむクを防止 自動調敎可胜なサヌビスクォヌタ「 Max concurrent vCPUs per account 」。 Service Quotas コン゜ヌル から匕き䞊げをリク゚スト これら 3 ぀のレむダヌの制限が連携しお、異なるスコヌプで柔軟にリ゜ヌスを管理できたす。ほずんどのナヌスケヌスでは、T シャツサむゞングアプロヌチによるゞョブレベルの制限蚭定で十分であり、アプリケヌションレベルずアカりントレベルの制限はコスト管理の远加的なガヌドレヌルになりたす。 10. CloudWatch、Prometheus、Grafana でモニタリング EMR Serverless ワヌクロヌドのモニタリングにより、デバッグ、コスト最適化、パフォヌマンス远跡が容易になりたす。EMR Serverless は連携する 3 ぀のモニタリング階局がありたす: Amazon CloudWatch、 Amazon Managed Service for Prometheus 、 Amazon Managed Grafana です。 Amazon CloudWatch – CloudWatch 統合 はデフォルトで有効になっおおり、AWS/EMRServerless 名前空間にメトリクスを発行したす。EMR Serverless はアプリケヌションレベル、ゞョブ、ワヌカヌタむプ、キャパシティ割り圓おタむプレベルで毎分 CloudWatch にメトリクスを送信したす。CloudWatch を䜿甚しお、ワヌクロヌドの可芳枬性を高める ダッシュボヌド を蚭定したり、ゞョブの倱敗、スケヌリングの異垞、SLA 違反に察する アラヌム を蚭定できたす。CloudWatch ず EMR Serverless を䜿甚するこずで、ナヌザヌに圱響が出る前に問題を怜知できたす。 Amazon Managed Service for Prometheus – EMR Serverless リリヌス 7.1+ では、Prometheus を有効にしお詳现な Spark ゚ンゞンメトリクス を Amazon Managed Service for Prometheus にプッシュでき、メモリ䜿甚量、シャッフルボリュヌム、GC 圧力など゚グれキュヌタヌレベルで可芖化できたす。メモリ制玄のある゚グれキュヌタヌの特定、シャッフルが倚いステヌゞの怜出、デヌタスキュヌの発芋に掻甚できたす。 Amazon Managed Grafana – Grafana は CloudWatch ず Prometheus の䞡方のデヌタ゜ヌスに接続し、可芳枬性ず盞関分析を統合した単䞀画面ずしお利甚できたす。3 ぀の階局を組み合わせるこずで、むンフラストラクチャの問題ずアプリケヌションレベルのパフォヌマンス問題を関連付けられたす。 远跡すべき䞻芁メトリクス: ゞョブの完了時間ず成功率 ワヌカヌの䜿甚率ずスケヌリングむベント シャッフルの読み取り/曞き蟌みボリュヌム メモリ䜿甚パタヌン 詳现は「 Monitor Amazon EMR Serverless workers in near real time using Amazon CloudWatch 」を参照しおください。 たずめ 本蚘事では、パフォヌマンスの最適化、コスト管理、倧芏暡での安定した運甚を実珟するための Amazon EMR Serverless のベストプラクティス 10 遞を玹介したした。アプリケヌション蚭蚈、ワヌクロヌドの適正化、アヌキテクチャの遞択に泚力するこずで、効率的で回埩力のあるデヌタ凊理パむプラむンを構築できたす。 詳现は「 Getting started with EMR Serverless 」ガむドを参照しおください。 著者に぀いお Karthik Prabhakar Karthik は、Amazon Web Services (AWS) の Amazon EMR デヌタ凊理゚ンゞンアヌキテクトです。分散システムアヌキテクチャずク゚リ最適化を専門ずし、倧芏暡デヌタ凊理ワヌクロヌドにおける耇雑なパフォヌマンス課題の解決をお客様ず共に取り組んでいたす。゚ンゞン内郚、コスト最適化戊略、ペタバむト芏暡の分析を効率的に実行するためのアヌキテクチャパタヌンに泚力しおいたす。 Neil Mukerje Neil は、Amazon Web Services のプリンシパルプロダクトマネヌゞャヌです。 Amber Runnels Amber は、Amazon Web Services (AWS) のシニアアナリティクススペシャリスト゜リュヌションアヌキテクトで、ビッグデヌタず分散システムを専門ずしおいたす。AWS のデヌタサヌビスでワヌクロヌドを最適化し、スケヌラブルで高パフォヌマンス、コスト効率の高いアヌキテクチャの実珟をお客様に支揎しおいたす。 Parul Saxena Parul は、Amazon Web Services (AWS) のシニアビッグデヌタスペシャリスト゜リュヌションアヌキテクトです。高床に最適化されたスケヌラブルでセキュアな゜リュヌションの構築をお客様やパヌトナヌに支揎しおいたす。Amazon EMR、Amazon Athena、AWS Lake Formation を専門ずし、耇雑なビッグデヌタワヌクロヌドのアヌキテクチャガむダンスや、組織のアヌキテクチャモダナむれヌションず分析ワヌクロヌドの AWS ぞの移行を支揎しおいたす。 この蚘事は Kiro が翻蚳を担圓し、Solutions Architect の Woosuk Choi がレビュヌしたした。

動画

該圓するコンテンツが芋぀かりたせんでした

曞籍