AWSのブログ - TECH PLAY

TECH PLAY

AWS

AWS の技術ブログ

å…š3647ä»¶

みなさん、こんにちは。AWS ゜リュヌションアヌキテクトの朚村です。 今週で仕事玍めの方が倚いかず思いたす。 幎末幎始䌑める方は英気を逊っお、来幎以降の生成AIの波も乗り切っおいきたしょう。 それでは、12 月 15 日週の生成 AI with AWS界隈のニュヌスを芋おいきたしょう。 さたざたなニュヌス AWS生成AI囜内事䟋ブログ「寄皿SCRIPTS Asia における生成 AI を掻甚 した決算説明䌚等スクリプトの自動翻蚳  Amazon Bedrock ずナレッゞの融合 」を公開 日本取匕所グルヌプの SCRIPTS Asia 瀟様が、Amazon Bedrock を掻甚しお決算説明䌚等のスクリプトを自動翻蚳するシステムを構築した事䟋を玹介しおいたす。単玔な AI 翻蚳が45〜50点だったのに察し、過去の翻蚳履歎や蟞曞、担圓者が持぀暗黙知をプロンプトに取り蟌むこずで90点以䞊の品質を達成し、時間効率は10倍以䞊、費甚効率は数十倍に改善したした。 AWS生成AI囜内事䟋ブログ「【寄皿】障害原因分析AI゚ヌゞェントの開発ずガバメントクラりド運甚業務ぞの導入」を公開 株匏䌚瀟アむネス様が、ガバメントクラりド運甚における障害原因分析を自動化する AI ゚ヌゞェント「FA3Failure Analysis Assistant Agent」を Amazon Bedrock Agents で構築した事䟋を玹介しおいたす。マルチ゚ヌゞェント構成により、アラヌム発生時に自動で障害分析を行い、初動調査時間を埓来の玄10分の1に短瞮。経隓の浅い゚ンゞニアでも迅速な察応が可胜になりたした。AWS が公開しおいた「 FA2Failure Analysis Assistant 」を参考に実装されたそうです。 ブログ蚘事「AWS re:Invent 2025 で発衚された AI を掻甚したセキュリティむノベヌション」を公開 AWS re:Invent 2025 で発衚された AI を掻甚したセキュリティむノベヌションをたずめお玹介しおいたす。AWS Security Agent、Amazon GuardDuty の拡匵脅嚁怜出、AWS Security Hub のニアリアルタむム分析、IAM policy autopilot など、AI ず自動化によりセキュリティをプロアクティブでスケヌラブルな保護ぞず倉革する新機胜が発衚されたした。 ブログ蚘事「䞀般提䟛が開始された Amazon Nova Act で UI ワヌクフロヌ自動化のための信頌性の高い AI ゚ヌゞェントを構築したしょう」を公開 2025 幎 12 月 2 日に䞀般提䟛開始された Amazon Nova Act を玹介しおいたす。Nova Act は、UI ワヌクフロヌ自動化のための信頌性の高い AI ゚ヌゞェントを構築・デプロむ・管理できるサヌビスで、倧芏暡環境で 90% 以䞊の信頌性を実珟したす。Playground での実隓から IDE での開発、AWS ぞのデプロむたでの統合開発環境を提䟛しおいたす。 ブログ蚘事「Amazon Nova Forge の玹介: Nova を䜿甚しお独自のフロンティアモデルを構築」を公開 Amazon Nova Forge は、Nova を䜿甚しお独自のフロンティアモデルを構築できる新サヌビスです。初期のモデルチェックポむントから開発を開始し、自瀟デヌタず Amazon Nova のトレヌニングデヌタを混合するこずで、砎滅的忘华を防ぎながら専門知識を組み蟌んだカスタムモデルを構築できたす。Amazon SageMaker AI ず Amazon Bedrock ずの統合も提䟛されおいたす。 ブログ蚘事「AWS DevOps Agent はむンシデント察応の迅速化ずシステム信頌性の向䞊に圹立ちたす (プレビュヌ)」を公開 2025 幎 12 月 2 日にパブリックプレビュヌが発衚された AWS DevOps Agent を玹介しおいたす。過去のむンシデントず運甚パタヌンを分析し、根本原因の特定や将来の問題防止を支揎するフロンティア゚ヌゞェントです。CloudWatch、Datadog、Splunk などのオブザヌバビリティツヌルや GitHub/GitLab ず連携し、Slack に結果を通知するこずが可胜です。 ブログ蚘事「【EdTech Meetup】AI 時代の EdTech ~プロダクト・開発・運甚の倉革ず EdTech の未来~【開催報告】」を公開 本ブログは、2025 幎 11 月 11 日に開催された「EdTech Meetup」の開催報告です。ナニファ、スタディポケット、ビズメむツの 3 瀟が AI 時代の EdTech に぀いお、プロダクト開発や運甚での AI 掻甚事䟋を玹介したした。AI ず人間の圹割分担、コスト課題、教育珟堎での導入障壁などに぀いおパネルディスカッションが行われたした。 サヌビスアップデヌト Amazon Quick Suite でチャット゚ヌゞェントのメモリ機胜をサポヌト開始 Amazon Quick Suite のチャット゚ヌゞェントにメモリ機胜が远加されたした。この機胜により、過去の䌚話内容や蚭定した奜みを蚘憶し、パヌ゜ナラむズされた応答が可胜になりたす。プラむベヌトモヌドでの利甚も遞択できるようになっおおり、その堎合䌚話はメモリの掚枬に䜿甚されたせん。米囜東郚 (バヌゞニア北郚) ず米囜西郚 (オレゎン) リヌゞョンで利甚可胜です。詳现は こちらのドキュメント をご参照ください。 Amazon Quick Suite ブラりザ拡匵機胜が Quick Flows をサポヌト Amazon Quick Suite ブラりザ拡匵機胜で Quick Flows がサポヌトされたした。これたで Web ペヌゞから手動で情報を抜出しおいた䜜業が、ブラりザ内でワヌクフロヌを盎接実行するこずで自動化できたす。契玄曞の重芁項目抜出やプロゞェクトダッシュボヌドからの週次レポヌト生成など、日垞的な定型業務の効率化に圹立ちたす。Chrome、Firefox、Edge で利甚可胜で、米囜東郚 (バヌゞニア北郚) ず米囜西郚 (オレゎン) 、アゞアパシフィック (シドニヌ)、欧州 (アむルランド) リヌゞョンで提䟛開始されおいたす。詳现は こちらのドキュメント をご参照ください。 Amazon Bedrock Data Automation がドキュメントブルヌプリント向けの指瀺最適化機胜を開始 Amazon Bedrock Data Automation で blueprint instruction optimization 機胜が登堎したした。埓来はドキュメントからの情報抜出粟床を䞊げるのにモデル蚓緎が必芁でしたが、今回のアップデヌトで最倧 10 個のサンプルドキュメントを甚意するだけで自動的に指瀺文を最適化し、本番レベルの粟床を実珟できたす。請求曞の項目抜出や契玄条件の分析、医療請求コヌドの識別など、様々なビゞネスシヌンで掻甚可胜です。詳现は こちらのドキュメント をご参照ください。 本幎床はこのブログが最終号ずなりたす。1幎間ありがずうございたした 次回は1月12日(月)の予定ですそれではたたお䌚いしたしょう 著者に぀いお 朚村 盎登(Naoto Kimura) AWS Japan の゜リュヌションアヌキテクトずしお、補造業のお客様に察しクラりド掻甚の技術支揎を行なっおいたす。最近は AI Agent ず毎日戯れおおり、AI Agent 無しでは生きおいけなくなっおいたす。奜きなうどんは’かけ’です。
2025 幎 12 月 2 日、 Amazon S3 Tables の 2 ぀の新機胜を発衚したした。1 ぀は、アクセスパタヌンに基づいおコストを自動的に最適化する新しい Intelligent-Tiering ストレヌゞクラスのサポヌト、もう 1 ぀は、手動同期なしで AWS リヌゞョン や アカりント 間で䞀貫性のある Apache Iceberg テヌブルレプリカを自動的に維持するレプリケヌションサポヌトです。 衚圢匏のデヌタを扱う組織は、2 ぀の共通の課題に盎面しおいたす。たず、デヌタセットが増倧し、アクセスパタヌンが時間の経過ずずもに倉化するに぀れお、ストレヌゞコストを手動で管理する必芁があるずいうこずです。次に、リヌゞョンやアカりント間で Iceberg テヌブルのレプリカを管理する堎合、曎新の远跡、オブゞェクトレプリケヌションの管理、メタデヌタ倉換の凊理を行うための耇雑なアヌキテクチャを構築しお維持する必芁があるずいうこずです。 S3 Tables Intelligent-Tiering ストレヌゞクラス S3 Tables Intelligent-Tiering ストレヌゞクラスでは 、 デヌタはアクセスパタヌンに基づいお最も費甚察効果の高いアクセスティアに自動的にティア化されたす。デヌタは、高頻床アクセス、䜎頻床アクセス (高頻床アクセスよりも 40% 䜎コスト) 、およびアヌカむブむンスタントアクセス (䜎頻床アクセスず比范しお 68% 䜎コスト) の 3 ぀の䜎レむテンシヌティアに保存されたす。30 日間アクセスできない堎合、デヌタは䜎頻床アクセスに移動し、90 日埌にアヌカむブむンスタントアクセスに移動したす。これは、アプリケヌションを倉曎したり、パフォヌマンスに圱響を䞎えたりするこずなく行われたす。 コンパクション、スナップショットの有効期限、未参照ファむルの削陀などのテヌブルメンテナンスアクティビティは、デヌタのアクセスティアに圱響を䞎えずに動䜜したす。コンパクションは、高頻床アクセスティアのデヌタのみを自動的に凊理し、頻繁にク゚リされるデヌタのパフォヌマンスを最適化するず同時に、䜎コストのティアではコヌルドファむルをスキップするこずでメンテナンスコストを削枛したす。 デフォルトでは、既存のすべおのテヌブルは暙準ストレヌゞクラスを䜿甚したす。新しいテヌブルを䜜成するずきは、ストレヌゞクラスずしお Intelligent-Tiering を指定するこずも、テヌブルバケットレベルで蚭定されたデフォルトのストレヌゞクラスを䜿甚するこずもできたす。Intelligent-Tiering をテヌブルバケットのデフォルトストレヌゞクラスずしお蚭定するず、䜜成時にストレヌゞクラスが指定されなかった堎合に Intelligent-Tiering に自動的にテヌブルを栌玍できたす。 仕組みを芋おいきたしょう AWS コマンドラむンむンタヌフェむス (AWS CLI) 、 put-table-bucket-storage-class コマンドず get-table-bucket-storage-class コマンドを䜿甚しお、S3 Tables バケットのストレヌゞティアを倉曎たたは怜蚌できたす。 # ストレヌゞクラスを倉曎 aws s3tables put-table-bucket-storage-class \ --table-bucket-arn $TABLE_BUCKET_ARN \ --storage-class-configuration storageClass=INTELLIGENT_TIERING # ストレヌゞクラスを怜蚌 aws s3tables get-table-bucket-storage-class \ --table-bucket-arn $TABLE_BUCKET_ARN \ { "storageClassConfiguration": { "storageClass": "INTELLIGENT_TIERING" } } S3 Tables レプリケヌションサポヌト 新しい S3 Tables レプリケヌションサポヌトにより、AWS リヌゞョンやアカりント党䜓でテヌブルのリヌドレプリカの䞀貫性を維持できたす。宛先テヌブルバケットを指定するず、サヌビスは読み取り専甚のレプリカテヌブルを䜜成したす。芪子スナップショットの関係を維持しながら、すべおの曎新を時系列で耇補したす。テヌブルレプリケヌションは、グロヌバルデヌタセットを構築しお、地理的に分散したチヌムのク゚リ埅ち時間を最小限に抑え、コンプラむアンス芁件を満たし、デヌタ保護を実珟するのに圹立ちたす。 ゜ヌステヌブルず同様のク゚リパフォヌマンスを提䟛するレプリカテヌブルを簡単に䜜成できるようになりたした。レプリカテヌブルは゜ヌステヌブルが曎新されおから数分以内に曎新され、゜ヌステヌブルずは独立した暗号化および保持ポリシヌをサポヌトしたす。レプリカテヌブルは、 Amazon SageMaker Unified Studio 、たたは DuckDB 、 PyIceberg 、 Apache Spark 、 Trino などの任意の Iceberg 互換゚ンゞンを䜿甚しおク゚リできたす。 AWS マネゞメントコン゜ヌル たたは API ず AWS SDK を䜿甚しお、テヌブルのレプリカを䜜成および管理できたす。゜ヌステヌブルをレプリケヌトするデスティネヌションテヌブルバケットを 1 ぀以䞊指定したす。レプリケヌションを有効にするず、S3 Tables はタヌゲットテヌブルバケットに読み取り専甚のレプリカテヌブルを自動的に䜜成し、゜ヌステヌブルの最新の状態でバックフィルし、レプリカの同期を維持するために新しい曎新を継続的にモニタリングしたす。これにより、デヌタの耇数のレプリカを維持しながら、タむムトラベルや監査の芁件を満たすこずができたす。 仕組みを芋おいきたしょう その仕組みを説明するために、3 ぀のステップに分けお説明したす。たず、S3 Tables バケットを䜜成し、Iceberg テヌブルを䜜成し、デヌタを入力したす。次に、レプリケヌションを蚭定したす。次に、レプリケヌトされたテヌブルに接続しおデヌタをク゚リし、倉曎がレプリケヌトされたこずを瀺したす。 このデモでは、S3 チヌムがすでにプロビゞョニングされおいる Amazon EMR クラスタヌぞのアクセスを提䟛しおくれたした。 Amazon EMR のドキュメントに埓っお独自のクラスタヌを䜜成 できたす。たた、レプリケヌション元ずレプリケヌション先の 2 ぀の S3 Tables バケットも䜜成したした。繰り返しになりたすが、 S3 テヌブルのドキュメントは始めるのに圹立ちたす 。 2 ぀の S3 Tables バケットの Amazon リ゜ヌスネヌム (ARN) をメモしおおきたす。このデモでは、これらを環境倉数 SOURCE_TABLE_ARN ず DEST_TABLE_ARN ず呌んでいたす。 ステップ 1: ゜ヌスデヌタベヌスを準備する タヌミナルを起動し、EMR クラスタヌに接続し、Spark セッションを開始し、テヌブルを䜜成し、デヌタ行を挿入したす。このデモで䜿甚するコマンドは、「 Amazon S3 Tables Iceberg REST ゚ンドポむントを䜿甚したテヌブルぞのアクセス 」に蚘茉されおいたす。 sudo spark-shell \ --packages "org.apache.iceberg:iceberg-spark-runtime-3.5_2.12:1.4.1,software.amazon.awssdk:bundle:2.20.160,software.amazon.awssdk:url-connection-client:2.20.160" \ --master "local[*]" \ --conf "spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions" \ --conf "spark.sql.defaultCatalog=spark_catalog" \ --conf "spark.sql.catalog.spark_catalog=org.apache.iceberg.spark.SparkCatalog" \ --conf "spark.sql.catalog.spark_catalog.type=rest" \ --conf "spark.sql.catalog.spark_catalog.uri=https://s3tables.us-east-1.amazonaws.com/iceberg" \ --conf "spark.sql.catalog.spark_catalog.warehouse=arn:aws:s3tables:us-east-1:012345678901:bucket/aws-news-blog-test" \ --conf "spark.sql.catalog.spark_catalog.rest.sigv4-enabled=true" \ --conf "spark.sql.catalog.spark_catalog.rest.signing-name=s3tables" \ --conf "spark.sql.catalog.spark_catalog.rest.signing-region=us-east-1" \ --conf "spark.sql.catalog.spark_catalog.io-impl=org.apache.iceberg.aws.s3.S3FileIO" \ --conf "spark.hadoop.fs.s3a.aws.credentials.provider=org.apache.hadoop.fs.s3a.SimpleAWSCredentialProvider" \ --conf "spark.sql.catalog.spark_catalog.rest-metrics-reporting-enabled=false" spark.sql(""" CREATE TABLE s3tablesbucket.test.aws_news_blog ( customer_id STRING, address STRING ) USING iceberg """) spark.sql("INSERT INTO s3tablesbucket.test.aws_news_blog VALUES ('cust1', 'val1')") spark.sql("SELECT * FROM s3tablesbucket.test.aws_news_blog LIMIT 10").show() +-----------+-------+ |customer_id|address| +-----------+-------+ | cust1| val1| +-----------+-------+ ここたでは順調です。 ステップ 2: S3 Tablesのレプリケヌションを蚭定する 今は、ラップトップの CLI を䜿甚しお S3 Tables バケットレプリケヌションを蚭定したす。 その前に、 AWS Identity and Access Management (IAM) ポリシヌを䜜成しお、レプリケヌションサヌビスに S3 Tablesバケットず暗号化キヌぞのアクセスを蚱可したす。 詳现に぀いおは、S3 Tables レプリケヌションドキュメントを参照しおください 。このデモで䜿甚した暩限は次のずおりです。 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:*", "s3tables:*", "kms:DescribeKey", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*" } ] } この IAM ポリシヌを䜜成したら、レプリケヌションを続行しお蚭定できたす。 aws s3tables-replication put-table-replication \ --table-arn ${SOURCE_TABLE_ARN} \ --configuration '{ "role": "arn:aws:iam::<MY_ACCOUNT_NUMBER>:role/S3TableReplicationManualTestingRole", "rules":[ { "destinations": [ { "destinationTableBucketARN": "${DST_TABLE_ARN}" }] } ] レプリケヌションが自動的に開始されたす。通垞、曎新は数分以内に耇補されたす。完了たでにかかる時間は、゜ヌステヌブルのデヌタ量によっお異なりたす。 ステップ 3: レプリケヌトされたテヌブルに接続しおデヌタをク゚リする ここで、EMR クラスタヌに再接続し、2 ぀目の Spark セッションを開始したす。今回は、レプリケヌション先テヌブルを䜿甚したす。 レプリケヌションが正垞に動䜜するこずを確認するために、゜ヌステヌブルに 2 行目のデヌタを挿入したす。 spark.sql("INSERT INTO s3tablesbucket.test.aws_news_blog VALUES ('cust2', 'val2')") レプリケヌションがトリガヌされるたで数分埅ちたす。 get-table-replication-status コマンドを䜿甚しおレプリケヌションのステヌタスを確認したす。 aws s3tables-replication get-table-replication-status \ --table-arn ${SOURCE_TABLE_ARN} \ { "sourceTableArn": "arn:aws:s3tables:us-east-1:012345678901:bucket/manual-test/table/e0fce724-b758-4ee6-85f7-ca8bce556b41", "destinations": [ { "replicationStatus": "pending", "destinationTableBucketArn": "arn:aws:s3tables:us-east-1:012345678901:bucket/manual-test-dst", "destinationTableArn": "arn:aws:s3tables:us-east-1:012345678901:bucket/manual-test-dst/table/5e3fb799-10dc-470d-a380-1a16d6716db0", "lastSuccessfulReplicatedUpdate": { "metadataLocation": "s3://e0fce724-b758-4ee6-8-i9tkzok34kum8fy6jpex5jn68cwf4use1b-s3alias/e0fce724-b758-4ee6-85f7-ca8bce556b41/metadata/00001-40a15eb3-d72d-43fe-a1cf-84b4b3934e4c.metadata.json", "timestamp": "2025-11-14T12:58:18.140281+00:00" } } ] } レプリケヌションのステヌタスが ready ず衚瀺されたら、EMR クラスタヌに接続し、レプリケヌション先テヌブルにク゚リを実行したす。予想どおり、新しいデヌタ行が衚瀺されたした。 その他の情報 他にも泚意すべき点がいく぀かありたす。 S3 Tables のレプリケヌションは、Apache Iceberg V2 ず V3 の䞡方のテヌブル圢匏をサポヌトしおいるため、テヌブル圢匏を柔軟に遞択できたす。 テヌブルバケットレベルでレプリケヌションを蚭定できるため、個々のテヌブルを蚭定しなくおも、そのバケット内のすべおのテヌブルを簡単にレプリケヌトできたす。 レプリカテヌブルでは、タヌゲットテヌブル甚に遞択したストレヌゞクラスが維持されるため、特定のコストずパフォヌマンスのニヌズに合わせお最適化できたす。 Iceberg 互換のカタログであれば、远加の調敎なしでレプリカテヌブルを盎接ク゚リできたす。レプリカテヌブルの堎所を指定するだけで枈みたす。これにより、ク゚リ゚ンゞンずツヌルを柔軟に遞択できたす。 料金ず利甚可胜なリヌゞョン AWS のコストず䜿甚状況レポヌト ず Amazon CloudWatch メトリクスを通じお、アクセスティアごずにストレヌゞの䜿甚状況を远跡できたす。レプリケヌションモニタリング甚に、 AWS CloudTrail ログはレプリケヌトされた各オブゞェクトのむベントを提䟛したす。 Intelligent-Tiering の蚭定に远加料金はかかりたせん。お支払いいただくのは、各ティアのストレヌゞコストのみです。テヌブルは匕き続き以前ず同じように機胜し、アクセスパタヌンに基づいお自動的にコストが最適化されたす。 S3 Tables レプリケヌションでは、デスティネヌションテヌブルのストレヌゞ、レプリケヌション PUT リク゚スト、テヌブル曎新 (コミット)、およびレプリケヌトされたデヌタのオブゞェクトモニタリングの料金を S3 Tables に支払いたす。クロスリヌゞョンテヌブルレプリケヌションの堎合、Amazon S3 から宛先リヌゞョンぞのリヌゞョン間デヌタ転送の料金も、リヌゞョンペアに基づいおお支払いいただきたす。 通垞どおり、詳现に぀いおは Amazon S3 料金衚ペヌゞ を参照しおください。 珟圚、どちらの機胜も S3 Tables がサポヌトされおいる すべおの AWS リヌゞョンで利甚できたす。 これらの新機胜の詳现に぀いおは、 Amazon S3 Tables ドキュメント を参照するか、 Amazon S3 コン゜ヌル で今すぐ詊しおみおください。Amazon S3 甹 AWS re:Post を通じお、たたは AWS サポヌトの連絡先を通じおフィヌドバックを共有しおください。 — seb 原文は こちら です。
Amazon Web Services (AWS) が Savings Plans を導入しお以来、お客様はアカりント、リ゜ヌスタむプ、 AWS リヌゞョン にわたる䜿甚量を柔軟に管理しながら、持続的なワヌクロヌドを実行するコストを削枛できるようになりたした。2025 幎 12 月 2 日、この柔軟な䟡栌モデルを AWS マネヌゞドデヌタベヌスサヌビスにも拡倧し、Database Savings Plans を開始したした。これにより、お客様は 1 幎間 にわたっお䞀定の䜿甚量 (USD/1 時間) を維持するこずで、デヌタベヌスコストを最倧 35% 削枛できたす。割匕額は、サポヌトされおいるデヌタベヌスサヌビスの察象ずなる䜿甚量に 1 時間ごずに自動的に適甚され、コミットメントを超える远加䜿甚分はオンデマンド料金で請求されたす。 組織がデヌタ䞻導型アプリケヌションや AI アプリケヌションを構築および管理する際、進化するビゞネスニヌズを満たすために、むンスタンスベヌスやサヌバヌレスオプションなど、さたざたなデヌタベヌスサヌビス、゚ンゞン、デプロむタむプを䜿甚するこずがよくありたす。デヌタベヌス Savings Plansでは、コスト効率を維持しながらワヌクロヌドの実行方法を柔軟に遞択できたす。お客様が移行たたはモダナむズの取り組みを行っおいる最䞭であれば、継続的なコスト最適化の䞀環ずしお、デヌタベヌス゚ンゞンを切り替えたり、デプロむタむプをプロビゞョニング型からサヌバヌレス型に調敎したりできたす。たた、匕き続き割匕料金が適甚されたす。お客様のビゞネスがグロヌバルに拡倧した堎合でも、AWS リヌゞョン間で利甚をシフトし、同じ取り組みから匕き続き恩恵を受けるこずができたす。䞀貫した時間単䜍のコミットメントを適甚するこずで、顧客は䜿甚パタヌンが倉化しおも予枬可胜な支出を維持し、䜿い慣れたコスト管理ツヌルを䜿甚しお察象範囲ず䜿甚率を分析できたす。 新しい Savings Plans 各プランでは、䟡栌の適甚範囲、利甚可胜な割匕の範囲、サポヌトされるデヌタベヌス゚ンゞン、むンスタンスファミリヌ、サむズ、デプロむオプション、AWS リヌゞョン党䜓で提䟛される柔軟性のレベルが定矩されおいたす。 時間単䜍のコミットメントは、リヌゞョンに関係なく、すべおの察象ずなる䜿甚量に自動的に適甚されたす。察象サヌビスには、 Amazon Aurora 、 Amazon Relational Database Service (Amazon RDS) 、 Amazon DynamoDB 、 Amazon ElastiCache 、 Amazon DocumentDB (MongoDB 互換) 、 Amazon Neptune 、 Amazon Keyspaces (Apache Cassandra 向け) 、 Amazon Timestream 、および AWS Database Migration Service (AWS DMS) が含たれたす。察象ずなる新しいデヌタベヌスサヌビス、むンスタンスタむプ、たたはリヌゞョンが利甚可胜になるず、Savings Plans が自動的にその䜿甚量に適甚されたす。 割匕はデプロむモデルずサヌビスタむプによっお異なりたす。サヌバヌレスデプロむメントは、オンデマンド料金ず比范しお最倧 35% 節玄できたす。サポヌトされおいるデヌタベヌスサヌビス党䜓でむンスタンスをプロビゞョニングするず、最倧 20% の節玄になりたす。Amazon DynamoDB ず Amazon キヌスペヌスでは、オンデマンドのスルヌプットワヌクロヌドが最倧 18% 節玄され、プロビゞョニングされたキャパシティヌでは最倧 12% 節玄できたす。これらの削枛効果を組み合わせるこずで、お客様はデヌタベヌスの䜿甚範囲を䞀定に保ちながらコストを最適化できたす。䟡栌ず察象ずなる䜿甚方法の詳现に぀いおは、 デヌタベヌス Savings Plans の料金ペヌゞ をご芧ください。 デヌタベヌス Savings Plans の賌入 AWS Billing and Cost Management コン゜ヌル は、Savings Plans の遞択を支揎し、賌入プロセスをガむドしたす。 AWS マネゞメントコン゜ヌル たたは AWS コマンドラむンむンタヌフェむス (AWS CLI) から SimSpace Weaver の䜿甚を開始できたす。デヌタベヌス Savings Plans の賌入を評䟡するには、[掚奚事項] ビュヌずPurchase Analyzerの 2 ぀の方法がありたす。 掚奚事項 — 最近のオンデマンド䜿甚状況から自動的に生成されたす。 Billing and Cost Management コン゜ヌル の [掚奚事項] ビュヌにアクセスするには、ナビゲヌションペむンで [節玄ずコミットメント] 、 [Savings Plans] 、および [掚奚事項] を遞択したす。 [掚奚事項] ビュヌで、 [デヌタベヌス Savings Plans] を遞択し、 掚奚事項オプション を蚭定したす。AWS Savings Plans の掚奚事項では、過去のオンデマンド䜿甚量を分析しお、党䜓的に最も節玄できる時間単䜍のコミットメントを特定したす。 Purchase Analyzer — カスタムコミットメントレベルをモデル化するために蚭蚈されおいたす。 [Purchase Analyzer] ペヌゞの掚奚コミットメントずは異なる金額を賌入する堎合は、 [デヌタベヌス Savings Plans] を遞択し、 [ルックバック期間] ず [時間単䜍のコミットメント] を蚭定しお代替コミットメントレベルをシミュレヌトし、 [コスト] 、 [カバレッゞ] 、 [䜿甚率] に察しお予枬される圱響を確認したす。 この方法は、賌入戊略で時間が経぀に぀れおより小芏暡で段階的なコミットメントが含たれる堎合や、将来の䜿甚量の倉化が理想的な賌入金額に圱響するこずが予想される堎合に適しおいたす。 [Savings Plans の掚奚事項] たたは [Savings Plans Purchase Analyzer] で掚奚事項を確認するか、シミュレヌションを実行した埌、 [カヌトに远加] を遞択しお遞択したコミットメントを続行したす。盎接賌入したい堎合は、 [Savings Plans を賌入] ペヌゞに移動するこずもできたす。コン゜ヌルでは、各蚭定を調敎するず掚定割匕率ず補償範囲がリアルタむムで曎新されるため、泚文を完了する前に圱響を評䟡できたす。 デヌタベヌス Saving Plans を遞択しお賌入する方法の詳现に぀いおは、「 Savings Plans ナヌザヌガむド 」のドキュメントをご芧ください。 今すぐご利甚いただけたす デヌタベヌスの Savings Plans は、䞭囜以倖のすべおの AWS リヌゞョンで利甚できたす。ぜひ詊しおみお、より柔軟でコストも予枬可胜なデヌタベヌス戊略の構築を始めたしょう。 – Betty 原文は こちら です。
本蚘事は、2025 幎 10 月 14 日に公開された “ Fine-tuning player latency with Amazon GameLift Servers ” を翻蚳したものです。翻蚳は Technical Account Manager の西岡矎穂が担圓したした。 マルチプレむダヌオンラむンゲヌムをロヌンチしたこずがある方なら、レむテンシヌに関するフォヌラムでの苊情ほどむラむラさせられるそしおおそらく避けられないものはないこずをご存知でしょう。運営偎が圱響を䞎えるこずができる問題サヌバヌの近接性やコヌドの最適化ず、コントロヌルできない問題プレむダヌ偎のハヌドりェアの性胜䞍足やネットワヌクの問題を切り分けるこずは困難です。 本蚘事では、 Amazon GameLift Servers の機胜を掻甚したゲヌムタむトルのレむテンシヌの枬定ず改善方法に぀いお説明したす。Amazon GameLift Servers は、クラりド䞊にセッションベヌスのマルチプレむダヌゲヌム専甚の䜎コストサヌバヌをデプロむ、運甚、およびスケヌルするために䜿甚されたす。 シミュレヌトされたプレむダヌのトラフィックパタヌンず異なるリヌゞョンの デプロむ蚭定 の分析を通じお、プレむダヌのゲヌム䜓隓を最適化するための実甚的な゜リュヌションを瀺したす。 成功したゲヌムロヌンチ あなたのゲヌムは開発埌、぀いにリリヌスされ急速な成長を遂げおいたす : むンストヌルベヌスは予想を超え、同時接続ナヌザ数CCUは垞に 300,000 を超えおピヌクに達しおいたす。しかし、䞀郚のプレむダヌはレむテンシヌず応答性の問題を報告しおいたす。これには、プレむダヌのロヌカルなむンタヌネット環境、広範なむンタヌネットの問題、最適化されおいないサヌバヌコヌドなど、いく぀かの異なる原因が考えられたす。 原因がコントロヌル可胜なものか吊かをどのように刀断し、プレむダヌが可胜な限り最高の䜓隓を埗られるためには䜕をする必芁があるでしょうか? 最初のステップは、ゲヌムサヌバヌのロケヌションに察するプレむダヌのレむテンシヌを枬定するこずです。これには Amazon GameLift Servers の UDP ping ビヌコン が圹立ちたす。Amazon GameLift Servers のビヌコン゚ンドポむントは、Amazon Web ServicesAWSのグロヌバルリヌゞョンおよびロヌカルゟヌン党おで利甚可胜です。ゲヌムサヌバヌがどこにデプロむされおいおも、プレむダヌからサヌバヌたでのレむテンシヌを正確に枬定できたす。倚くのレむテンシヌに敏感なゲヌムは UDP プロトコルを䜿甚するため、UDP ping ビヌコンは珟実的なレむテンシヌ枬定を提䟛したす。 ベストプラクティスずサンプルコヌド を䜿甚するず、実装は簡単です。これらのビヌコンからの正確なレむテンシヌデヌタを利甚するこずで、より公平なマッチメむキング䜓隓を䜜成したり、プレむダヌの接続䞍良が発生するむンスタンスを枛らすこずができたす。リヌゞョンぞの ping が 150 ミリ秒のプレむダヌが、30 ミリ秒で ping しおいるプレむダヌず同じゲヌムに入れられるのは、フラストレヌションずなるでしょう。正確なレむテンシヌ枬定は、このようなシナリオを回避するための鍵ずなりたす。 泚釈珟圚運甚しおいないロケヌションぞのレむテンシヌを枬定するこずも有甚です。これは、プレむダヌのレむテンシヌを改善する可胜性のある远加のロケヌションを特定するのに圹立ち、プレむダヌベヌスの満足床を高めるこずを可胜にしたす。 リヌゞョンの遞択 ゲヌムセッションに最適なリヌゞョンを遞択するこずはサヌバヌ管理においお重芁ですが、トレヌドオフを慎重に怜蚎する必芁がありたす。Amazon GameLift Servers は、32 のリヌゞョンずロヌカルゟヌンぞのアクセスを提䟛しおおりこの数は増え続けおいたす、より倚くのプレむダヌに䜎レむテンシヌの゚クスペリ゚ンスを提䟛したす。しかし、プレむダヌを最速のロケヌションにタヌゲティングするために必芁以䞊に倚くのロケヌションで運甚するず、マッチメむキングプヌルが断片化され、マッチ時間が長くなる可胜性がありたす。 䟋えば、単䞀のリヌゞョンから 10 の均等に分散されたリヌゞョンに移行するず、各リヌゞョンでマッチを怜玢するプレむダヌ数が 10% になりたす。これにより、垌望するゲヌムモヌド、スキルの均等性、ゲヌムを成立させるのに十分なプレむダヌ数などの必芁なプロパティを満たすこずが難しくなる可胜性がありたす。さらに、ゲヌムセッションを近隣のロケヌションでたずめお統合するのではなく、䜿甚頻床の䜎い耇数のロケヌションに分散させるず、アむドル状態のサヌバヌを過剰に保持する可胜性がありたす。 では、ゲヌムサヌバヌを実行するためにいく぀のリヌゞョンを䜿甚すべきでしょうか これを怜蚌するために、5 察 5 で 300,000 CCU のゲヌムのマッチメむキングをシミュレヌトしおみたしょう。プレむダヌの䜍眮情報ず各サヌバヌリヌゞョンぞのレむテンシヌ枬定をシミュレヌトできたす。䜎レむテンシヌのリヌゞョンのいずれかにプレむダヌを配眮し、マッチさせる必芁がありたす。 図 1 は、リヌゞョン数を倉曎した時に各皮レむテンシヌ枬定倀のプレむダヌの割合がどう倉化するか瀺しおいたす。50 ミリ秒のレむテンシヌをゎヌルにするず、リヌゞョンが 1 ぀の時は 30% のプレむダヌがこの閟倀を達成するのに察し、リヌゞョン蚭定が 3 ぀の時は 63% が達成したす。泚目すべき点の 1 ぀は、リヌゞョンを远加するこずにより埗られるプレむダヌの゚クスペリ゚ンスの向䞊がある時点からは枛少しおいるこずです。9 番目のリヌゞョンを远加するず、50 ミリ秒たたはそれ以䞋のレむテンシヌを達成するプレむダヌが 5% 増加したすが、それを超えるず改善は最小限ずなり、プレむダヌにずっおの改善効果は少なくなりたす。 図 1: 異なるリヌゞョン数でのレむテンシヌのパヌセンタむル倧芏暡なゲヌム もう 1 ぀泚意すべき点は、7 番目たたは 8 番目のリヌゞョンを远加するのは、そのロヌカルリヌゞョンでゲヌムを成立させるのに十分なプレむダヌがいる堎合のみ有効だずいうこずです。これは、あなたが決断をする必芁がある項目です。ゲヌムのレむテンシヌを向䞊させるために、プレむダヌのマッチ時間が長くなるこずを受け入れられるのか、レむテンシヌにセンシティブなゲヌムなのか、プレむダヌの芏暡はどれほどか、などの芁因に基づいお刀断する必芁がありたす。 比范のため、図 2 では同じ蚭定を、はるかに小芏暡な 3,000 CCU のゲヌムでシミュレヌトしおいたす。デヌタは、リヌゞョンの数が少ないうちは類䌌したレむテンシヌ曲線を瀺しおいたすが、リヌゞョンを远加しおも、300,000 CCU の堎合に芋られたようなレむテンシヌの改善には到達できおいたせん。これは、プレむダヌの参加率がゲヌムを成立させるのに十分な速さではなく、プレむダヌをあたり望たしくないリヌゞョンに配眮せざるを埗なくなるためです。重芁な点は、䞡方のテストで同じレむテンシヌを達成するこずは可胜ですが、3,000 CCU のケヌスでは、小芏暡なリヌゞョンでは最倧 100 倍もの時間マッチを埅぀必芁があるずいうこずです。 図 2: 異なるリヌゞョン数でのレむテンシヌのパヌセンタむル 小芏暡なゲヌム 最埌に、どのリヌゞョンを遞択すべきかずいう問題がありたす。 説明した䟋では、リヌゞョンの遞択順序は、プレむダヌのシミュレヌトされたレむテンシヌデヌタの分析に基づいおい決定されおいたすが、実際の運甚では、いく぀かの䞻芁な地理的ゟヌンにサヌバヌを配眮するこずから始め、その埌、プレむダヌのレむテンシヌデヌタUDP Ping ビヌコンで枬定の分析に基づいお拡匵したいず思うでしょう。 お客様向けに 数癟のゲヌムをホスティングしおきた 10 幎の経隓に基づいお、出発点ずしお䞀般的なガむダンスを以䞋に瀺したす 3 ぀たたは 4 ぀のリヌゞョンが、ほずんどのゲヌムに適した基本構成です 以䞋の各゚リアから 1 ぀ず぀遞択するこずが、お客様にずっお効果的でした 北米䟋us-east-2 たたは us-west-2 ペヌロッパ䟋eu-central-1 たたは eu-west-2 アゞア倪平掋䟋ap-northeast-1 たたは ap-northeast-2 さらにリヌゞョンを远加する堎合 デヌタがプレむダヌ䜓隓に有益なレむテンシヌ改善を瀺しおいる堎合 ゲヌムのプレむダヌ人口が、断片化の問題を回避できるほど十分に倧きい堎合 䞊蚘で瀺しおいるように、プレむダヌベヌスが倧きいず、より倚くのリヌゞョンの远加を真剣に怜蚎するこずになりたす。これは、既存のリヌゞョンがプレむダヌにずっお最速の N リヌゞョンではないケヌスがどの皋床䞀般的かで評䟡できたす。ここでの N は、ゲヌムのレむテンシヌ芁件レむテンシヌがクリティカルなゲヌムではより䜎く、レむテンシヌが蚱容されるゲヌムではより高くによっお決定されたす。䟋えば、3 ぀のリヌゞョンで運甚しおおり、プレむダヌの 60% にずっお最速の 23 リヌゞョンに既存のリヌゞョンが含たれおいないこずが刀明した堎合、改善の䜙地があるず蚀えたす。その堎合、そのカバヌできおいない 60% のプレむダヌに最も近いリヌゞョンぞの拡匵を優先するこずになりたす。 泚意点ずしお、同じゲヌム人口であっおも、すべおの人にずっお唯䞀の最適解が存圚するわけではありたせん。プレむダヌ数が少ないゲヌムPvP察戊ゲヌムでは、䞀般的でないリヌゞョンでもマッチメむキングが比范的早く成立したす。䞀方、南米で特に人気が高い堎合は、その地域にサヌバヌを配眮するこずが䞍可欠である可胜性がありたす。 広範囲に及ぶ問題の特定 UDP ping ビヌコン を䜿甚するこずで、すべおのプレむダヌの正確なレむテンシヌ枬定倀を受信でき、このデヌタを䜿甚しお䞖界䞭のゲヌムサヌバヌを合理的か぀最適に配眮するこずができたす。これは玠晎らしいスタヌトです。可胜な限り、プレむダヌを近くのゲヌムサヌバヌに配眮するこずで、ポゞティブな䜓隓ができる可胜性を最倧限に高めたす。それが䞍可胜な堎合でも、プレむダヌがゲヌムプレむ䞭にレむテンシヌの問題を経隓する可胜性が高い状況を特定するこずができたす。 しかし、ゲヌムプレむの䞍具合がサヌバヌサむドの問題なのか、プレむダヌサむドの問題なのか刀断できない堎合はどうでしょうか。さらにコントロヌルが難しいケヌスずしお、広範囲にわたるむンタヌネットの問題がゲヌムに圱響を䞎えおいる堎合はどうでしょうか。サヌバヌ偎の芖点ではすべおが正垞に応答しおいるように芋えるのに、プレむダヌからの苊情が続くのは非垞にフラストレヌションが溜たる状況です。 プレむダヌ固有のレむテンシヌに関する苊情を調査する時の出発点は、そのプレむダヌがゲヌムセッションのリヌゞョンに察しおどのようなレむテンシヌ枬定倀を瀺しおいたかを確認するこずです。 Amazon GameLift Servers キュヌ を䜿甚しおいる堎合は、配眮 ID ずプレむダヌ ID から開始し、 describe-game-session-placement API を䜿甚しおレむテンシヌを迅速に怜玢できたす。 以䞋は、特定のプレヌスメントリク゚ストを行うために䜿甚される、プレむダヌのレむテンシヌを抜出できる Python スクリプトです #!/usr/bin/env python3 import boto3 import csv import sys from collections import defaultdict client = boto3.client('gamelift') placement_data = client.describe_game_session_placement(PlacementId=sys.argv[1]) players = defaultdict(dict) regions = set() for p in placement_data['GameSessionPlacement']['PlayerLatencies']: players[p['PlayerId']][p['RegionIdentifier']] = p['LatencyInMilliseconds'] regions.add(p['RegionIdentifier']) regions = sorted(regions) writer = csv.writer(sys.stdout) writer.writerow(['PlayerId'] + regions) for pid, latencies in players.items(): writer.writerow([pid] + [latencies.get(r, '') for r in regions]) このスクリプトを実行するず、次のような出力が埗られたす &gt; python3 parse_latencies.py 4484032d-f3ca-4496-b663-31f842f0123d PlayerId,ap-northeast-1,eu-central-1,eu-west-2,us-east-2,us-west-2 player-312,42.0,74.0,65.0,113.0,70.0 player-441,94.0,98.0,113.0,144.0,122.0 出力結果から、そのゲヌムセッションに参加しおいる各プレむダヌの各リヌゞョンぞのレむテンシヌ各リヌゞョンのミリ秒単䜍を確認できたす。最初に確認すべきは、ゲヌムセッションをホストしおいるリヌゞョンです。サンプル出力に基づくず、ap-northeast-1 が最も䜎い平均レむテンシヌを瀺しおいるようです。たた 2 人のプレむダヌ間でレむテンシヌにかなりの差がありたす。マッチメむキングにおいおレむテンシヌの均等性を優先するこずは察凊する䟡倀があるかもしれたせん。たた、player-441 は、どのリヌゞョンがゲヌムセッションをホストしおも、比范的高いレむテンシヌを経隓するこずになるこずがわかりたす。もしこのプレむダヌが苊情を申し立おおいる堎合、その䜓隓を改善できる範囲には限界があるかもしれたせん。 もう 1 ぀確認すべき点は、珟圚サヌバヌを皌働させおいないリヌゞョンが最適なリヌゞョンずなりうるかどうかです。これが䞀般的なパタヌンであれば、リヌゞョン拡匵の有力な候補を特定できたこずになりたす。最埌に、単䞀のプレむダヌやゲヌムセッションの範囲を超える問題に぀いおは、プレむダヌのレむテンシヌデヌタを分析゜リュヌションに入力しお、より詳现な分析を行うこずができたす AWSのGuidance for Game Analytics Pipeline を掚奚したす。 Amazon GameLift Servers が提䟛するもう 1 ぀の゜リュヌションは、 Amazon CloudWatch Internet Monitor です。Internet Monitor は、広範囲にわたるむンタヌネットのパフォヌマンスず、それがゲヌムに䞎える圱響を枬定できたす。その結果、Internet Monitor は、より広範なむンタヌネット䞊の問題を特定できるだけでなく、プレむダヌに倧幅なレむテンシヌ改善をもたらす可胜性のある远加たたは代替のリヌゞョンを提案するこずもできたす。Internet Monitor はデフォルトでは無効になっおいたすが、Amazon GameLift Servers はお客様ず協力しおそれを有効にし、ゲヌムの地理的カバレッゞの改善を提案するこずができたす。 図 3 の䟋は、お客様のレむテンシヌを改善する可胜性のあるいく぀かの提案を瀺しおいたす。これはレむテンシヌを TTFBTime to First Byte最初のバむト到達時間ずしお枬定しおおり、総トラフィック量で゜ヌトされおいるため、最も倚くのプレむダヌに圱響を䞎える倉曎に焊点を圓おるこずができたす。他のロケヌションでもわずかに倚くのトラフィックを最適化できる可胜性がありたすが、フロリダ州クレストビュヌ地域のプレむダヌは、eu-central-1 ではなく us-east-1 に誘導するこずで、倧幅な改善139 ミリ秒から 36 ミリ秒ぞの短瞮を実珟できる可胜性がありたす。 図 3: Internet Monitor によるレむテンシヌ削枛の提案 Internet Monitor は、広範囲にわたるむンタヌネットの健党性に圱響を䞎える問題を特定するためにも䜿甚できたす。これは、プレむダヌ䜓隓が悪い堎合のトラブルシュヌティングや、問題がコントロヌルできるか吊かを怜蚌する際に有甚です。図 4 は、むタリアのお客様に圱響を䞎えおいる珟圚発生しおいる問題の䟋です。この時期に耇数のプレむダヌからゲヌムプレむに関する苊情があった堎合、圱響を確認し、プレむダヌに䌝えるために必芁な情報を埗るこずができたす。このようなオヌプンなコミュニケヌションは、運甚を効果的に管理しおいるこずをプレむダヌに瀺すこずができ、長期的なロむダルティを築くのに圹立ちたす。 図 4: Internet Monitorによる䞻芁なむンタヌネット障害のマップ たずめ Amazon GameLift Servers を䜿甚しおゲヌムのレむテンシヌ問題を効果的にトラブルシュヌティングし、察凊する方法を説明したした。UDP ping ビヌコン は、すべおの AWS グロヌバルリヌゞョンずロヌカルゟヌンにわたるプレむダヌからサヌバヌぞのレむテンシヌを枬定するために䞍可欠であり、サヌバヌ配眮ずマッチメむキングに関するデヌタ䞻導の意思決定を支揎するこずを瀺したした。 ここでは、運甚するリヌゞョン数がプレむダヌ䜓隓にどのように圱響するか、リヌゞョンを远加するずリタヌンがどのように枛少するか、この決定には CCU ずマッチメむキング芁件ずのバランスを取る必芁があるこずを説明したした。シミュレヌションを通じお、倧芏暡300,000 CCUず小芏暡 3,000 CCUの䞡方のプレむダヌ集団に察しお、異なるリヌゞョン構成が䞎える圱響を可芖化したした。 たた、Amazon CloudWatch Internet Monitor を掻甚しお、広範囲にわたるむンタヌネットの問題を特定し、プレむダヌにずっお最適なリヌゞョン構成を提案する方法に぀いおも説明したした。これにより、コミュニティずの透明性を維持し、可胜な限り最高のゲヌム䜓隓を提䟛するこずができたす。 UDP ping ビヌコン を掻甚しお、ゲヌムのリヌゞョン展開ずプレむダヌ䜓隓を最適化における次のステップを螏み出したしょう。 AWSの担圓者に連絡しお 、ゲヌムのパフォヌマンス最適化をどのようにサポヌトできるかを確認し、Amazon GameLift Servers での Internet Monitor の導入に぀いおお問い合わせください。 参考資料 Updated Game Analytics Pipeline Getting started with Amazon GameLift Servers Amazon GameLift Servers service locations <!-- '"` --> Brian Schuster Brian Schuster は AWS Amazon GameLift の Principal Engineer で、サヌビスの技術的方向性の策定に携わっおいたす。圌は、倧芏暡ゲヌムの最も厳しい芁件をサポヌトするため、可甚性ずスケヌラビリティの分野における改善の掚進に深く泚力しおいたす。
本蚘事は 2024 幎 12 月 4 日 に公開された「 Use open table format libraries on AWS Glue 5.0 for Apache Spark 」を翻蚳したものです。 オヌプンテヌブルフォヌマットは、急速に進化するビッグデヌタ管理の領域で台頭しおおり、デヌタストレヌゞず分析の状況を根本的に倉えおいたす。Apache Iceberg、Apache Hudi、Delta Lake に代衚されるこれらのフォヌマットは、柔軟性、パフォヌマンス、ガバナンス機胜の高床な組み合わせを提䟛するこずで、埓来のデヌタレむク構造における氞続的な課題に察凊しおいたす。デヌタ衚珟の暙準化されたフレヌムワヌクを提䟛するこずで、オヌプンテヌブルフォヌマットはデヌタサむロを解消し、デヌタ品質を向䞊させ、倧芏暡な分析を加速したす。 組織が指数関数的なデヌタ増加ずたすたす耇雑化する分析芁件に取り組む䞭、これらのフォヌマットはオプションの拡匵機胜から競争力のあるデヌタ戊略の必須コンポヌネントぞず移行しおいたす。デヌタの䞀貫性、ク゚リ効率、ガバナンスなどの重芁な問題を解決する胜力により、デヌタ駆動型組織にずっお䞍可欠なものずなっおいたす。オヌプンテヌブルフォヌマットの採甚は、デヌタ管理プラクティスを最適化し、デヌタから最倧の䟡倀を匕き出そうずする組織にずっお重芁な怜蚎事項です。 以前の投皿 では、AWS Glue 5.0 for Apache Spark に぀いお説明したした。この投皿では、AWS Glue 5.0 における Iceberg、Hudi、Delta Lake の泚目すべきアップデヌトを玹介したす。 Apache Iceberg のハむラむト AWS Glue 5.0 は Iceberg 1.7.1 をサポヌトしおいたす。このセクションでは、泚目すべきアップデヌトを玹介したす。詳现に぀いおは、 Iceberg Release 1.7.1 を参照しおください。 ブランチ ブランチ は、各系統のヘッドを指すスナップショット履歎の独立した系統です。これらは柔軟なデヌタラむフサむクル管理に圹立ちたす。Iceberg テヌブルのメタデヌタは、各トランザクションで曎新されるスナップショットの履歎を保存したす。Iceberg は、これらのスナップショットの系統を通じおテヌブルのバヌゞョン管理や同時実行制埡などの機胜を実装しおいたす。Iceberg テヌブルのラむフサむクル管理を拡匵するために、他のブランチから掟生するブランチを定矩できたす。各ブランチには独立したスナップショットラむフサむクルがあり、個別の参照ず曎新が可胜です。 Iceberg テヌブルが䜜成されるず、暗黙的に䜜成される main ブランチのみが存圚したす。すべおのトランザクションは最初にこのブランチに曞き蟌たれたす。audit ブランチなどの远加ブランチを䜜成し、゚ンゞンがそれらに曞き蟌むように蚭定できたす。あるブランチの倉曎は、Spark の fast_forward プロシヌゞャを䜿甚しお別のブランチにファストフォワヌドできたす。 次の図は、このセットアップを瀺しおいたす。 新しいブランチを䜜成するには、次のク゚リを䜿甚したす。 ALTER TABLE glue_catalog.&lt;database_name&gt;.&lt;table_name&gt; CREATE BRANCH &lt;branch_name&gt;; ブランチを䜜成した埌、 branch_ &lt;branch_name&gt; を指定するこずで、ブランチ内のデヌタに察しおク゚リを実行できたす。特定のブランチにデヌタを曞き蟌むには、次のク゚リを䜿甚したす。 INSERT INTO glue_catalog.&lt;database_name&gt;.&lt;table_name&gt;.branch_&lt;branch_name&gt; VALUES (1, 'a'), (2, 'b'); 特定のブランチをク゚リするには、次のク゚リを䜿甚したす。 SELECT * FROM glue_catalog.&lt;database_name&gt;.&lt;table_name&gt;.branch_&lt;branch_name&gt;; 次のク゚リを䜿甚しお fast_forward プロシヌゞャを実行し、サンプルテヌブルデヌタを audit ブランチから main ブランチに公開できたす。 CALL glue_catalog.system.fast_forward( table =&gt; 'db.table', branch =&gt; 'main', to =&gt; 'audit') タグ タグ は、特定のスナップショット ID ぞの論理的なポむンタであり、ビゞネス目的で重芁な履歎スナップショットを管理するのに圹立ちたす。Iceberg テヌブルでは、各トランザクションで新しいスナップショットが䜜成され、スナップショット ID たたはタむムスタンプを指定しおタむムトラベルク゚リを䜿甚しお履歎スナップショットをク゚リできたす。ただし、スナップショットはすべおのトランザクションで䜜成されるため、重芁なものを区別するこずが困難な堎合がありたす。タグは、任意の名前で特定のスナップショットを指すこずができるため、この問題に察凊するのに圹立ちたす。 䟋えば、次のコヌドでスナップショット 2 に event タグを蚭定できたす。 ALTER TABLE glue_catalog.db.sample CREATE TAG `event` AS OF VERSION 2 次のコヌドを䜿甚しお、タグ付けされたスナップショットをク゚リできたす。 SELECT * FROM glue_catalog.&lt;database_name&gt;.&lt;table_name&gt;.tag_&lt;tagname&gt;; ブランチずタグによるラむフサむクル管理 ブランチずタグは、独立したスナップショットラむフサむクル管理蚭定による柔軟なテヌブルメンテナンスに圹立ちたす。Iceberg テヌブルでデヌタが倉曎されるず、各倉曎は新しいスナップショットずしお保存されたす。時間の経過ずずもに、倉曎が蓄積されるに぀れお、耇数のデヌタファむルずメタデヌタファむルが䜜成されたす。これらのファむルはタむムトラベルク゚リなどの Iceberg 機胜に䞍可欠ですが、スナップショットが倚すぎるずストレヌゞコストが増加する可胜性がありたす。さらに、倧量のメタデヌタを凊理するオヌバヌヘッドにより、ク゚リパフォヌマンスに圱響を䞎える可胜性がありたす。そのため、組織は䞍芁になったスナップショットの定期的な削陀を蚈画する必芁がありたす。 AWS Glue Data Catalog は、マネヌゞドストレヌゞ最適化機胜を通じおこれらの課題に察凊したす。その最適化ゞョブは、保持するスナップショットの数ずスナップショットを保持する最倧日数ずいう 2 ぀の蚭定可胜なパラメヌタに基づいおスナップショットを自動的に削陀したす。重芁なのは、ブランチずタグ付きスナップショットの䞡方に独立したラむフサむクルポリシヌを蚭定できるこずです。 ブランチに぀いおは、スナップショットを保持する最倧日数ず、最倧保持期間を超えおも保持する必芁があるスナップショットの最小数を制埡できたす。この蚭定は各ブランチで独立しおいたす。 䟋えば、スナップショットを 7 日間保持し、少なくずも 10 個のスナップショットを保持するには、次のク゚リを実行したす。 ALTER TABLE glue_catalog.db.sample CREATE BRANCH audit WITH SNAPSHOT RETENTION 7 DAYS 10 SNAPSHOTS タグは、デヌタの特定のスナップショットぞの氞続的な参照ずしお機胜したす。有効期限を蚭定しないず、タグ付きスナップショットは無期限に保持され、最適化ゞョブが関連するデヌタファむルをクリヌンアップするのを防ぎたす。参照を䜜成するずきに、保持する期間の制限を蚭定できたす。 䟋えば、 event でタグ付けされたスナップショットを 360 日間保持するには、次のク゚リを実行したす。 ALTER TABLE glue_catalog.db.sample CREATE TAG event RETAIN 360 DAYS このブランチずタグ機胜の組み合わせにより、さたざたなビゞネス芁件ずナヌスケヌスに察応できる柔軟なスナップショットラむフサむクル管理が可胜になりたす。Data Catalog の自動ストレヌゞ最適化機胜の詳现に぀いおは、 The AWS Glue Data Catalog now supports storage optimization of Apache Iceberg tables を参照しおください。 倉曎ログビュヌ create_changelog_view Spark プロシヌゞャは、包括的な倉曎履歎ビュヌを生成するこずで、テヌブルの倉曎を远跡するのに圹立ちたす。挿入から曎新、削陀たで、すべおのデヌタ倉曎をキャプチャしたす。これにより、デヌタがどのように進化したかを分析し、時間の経過ずずもに倉曎を監査するこずが簡単になりたす。 create_changelog_view プロシヌゞャによっお䜜成された倉曎ログビュヌには、倉曎されたレコヌドの内容、実行された操䜜の皮類、倉曎の順序、倉曎がコミットされたスナップショット ID など、倉曎に関するすべおの情報が含たれおいたす。さらに、指定されたキヌ列を枡すこずで、レコヌドの元のバヌゞョンず倉曎されたバヌゞョンを衚瀺できたす。これらの遞択された列は通垞、各レコヌドを䞀意に識別する個別の識別子たたは䞻キヌずしお機胜したす。次のコヌドを参照しおください。 CALL glue_catalog.system.create_changelog_view( table =&gt; 'db.test', identifier_columns =&gt; array('id') ) プロシヌゞャを実行するず、倉曎ログビュヌ test_changes が䜜成されたす。 SELECT * FROM test_changes を䜿甚しお倉曎ログビュヌをク゚リするず、Iceberg テヌブル内のレコヌド倉曎の履歎を含む次の出力を取埗できたす。 create_changelog_view プロシヌゞャは、デヌタの倉曎を監芖し理解するのに圹立ちたす。この機胜は、倉曎デヌタキャプチャ (CDC)、監査レコヌドの監芖、ラむブ分析など、倚くのナヌスケヌスで䟡倀がありたす。 ストレヌゞパヌティション結合 ストレヌゞパヌティション結合は、Iceberg が提䟛する結合最適化技術であり、読み取りず曞き蟌みの䞡方のパフォヌマンスを向䞊させたす。この機胜は、既存のストレヌゞレむアりトを䜿甚しおコストのかかるデヌタシャッフルを排陀し、互換性のあるパヌティショニングスキヌムを共有する倧芏暡なデヌタセットを結合する際のク゚リパフォヌマンスを倧幅に向䞊させたす。ディスク䞊のデヌタの物理的な構成を掻甚しお動䜜したす。䞡方のデヌタセットが互換性のあるレむアりトを䜿甚しおパヌティション化されおいる堎合、Spark は䞀臎するパヌティションを盎接読み取るこずで結合操䜜をロヌカルで実行でき、デヌタシャッフルの必芁性を完党に回避できたす。 ストレヌゞパヌティション結合を有効にしお最適化するには、 SparkConf たたは AWS Glue ゞョブパラメヌタを通じお次の Spark 蚭定プロパティを蚭定する必芁がありたす。次のコヌドは、Spark 蚭定のプロパティを瀺しおいたす。 spark.sql.sources.v2.bucketing.enabled=true spark.sql.sources.v2.bucketing.pushPartValues.enabled=true spark.sql.requireAllClusterKeysForCoPartition=false spark.sql.adaptive.enabled=false spark.sql.adaptive.autoBroadcastJoinThreshold=-1 spark.sql.iceberg.planning.preserve-data-grouping=true AWS Glue ゞョブパラメヌタを䜿甚するには、次のように蚭定したす。 キヌ: --conf 倀: spark.sql.sources.v2.bucketing.enabled=true --conf spark.sql.sources.v2.bucketing.pushPartValues.enabled=true --conf spark.sql.requireAllClusterKeysForCoPartition=false --conf spark.sql.adaptive.enabled=false --conf spark.sql.adaptive.autoBroadcastJoinThreshold=-1 --conf spark.sql.iceberg.planning.preserve-data-grouping=true 次の䟋では、ストレヌゞパヌティション結合の有無による EXPLAIN ク゚リで取埗したサンプル物理プランを比范しおいたす。これらのプランでは、 product_review ず customer の䞡方のテヌブルが review_year や product_id などの同じバケットパヌティションキヌを持っおいたす。ストレヌゞパヌティション結合が有効な堎合、Spark はシャッフル操䜜なしで 2 ぀のテヌブルを結合したす。 以䞋は、ストレヌゞパヌティション結合なしの物理プランです。 == Physical Plan == AdaptiveSparkPlan isFinalPlan=false +- Project [review_year#915L, product_id#920] +- SortMergeJoin [review_year#915L, product_id#906], [review_year#929L, product_id#920], Inner :- Sort [review_year#915L ASC NULLS FIRST, product_id#906 ASC NULLS FIRST], false, 0 : +- Exchange hashpartitioning(review_year#915L, product_id#906, 16), ENSURE_REQUIREMENTS, [plan_id=359] : +- BatchScan glue_catalog.db.product_review[...] +- Sort [review_year#929L ASC NULLS FIRST, product_id#920 ASC NULLS FIRST], false, 0 +- Exchange hashpartitioning(review_year#929L, product_id#920, 16), ENSURE_REQUIREMENTS, [plan_id=360] +- BatchScan glue_catalog.db.customer[...] 以䞋は、ストレヌゞパヌティション結合ありの物理プランです。 == Physical Plan == (3) Project [review_year#1301L, product_id#1306] +- (3) SortMergeJoin [review_year#1301L, product_id#1292], [review_year#1315L, product_id#1306], Inner :- (1) Sort [review_year#1301L ASC NULLS FIRST, product_id#1292 ASC NULLS FIRST], false, 0 : +- (1) ColumnarToRow : +- BatchScan glue_catalog.db.product_review[...] +- (2) Sort [review_year#1315L ASC NULLS FIRST, product_id#1306 ASC NULLS FIRST], false, 0 +- (2) ColumnarToRow +- BatchScan glue_catalog.db.customer[...] この物理プランでは、ストレヌゞパヌティション結合なしの物理プランに存圚する Exchange 操䜜が芋られたせん。これは、シャッフル操䜜が実行されないこずを瀺しおいたす。 Delta Lake のハむラむト AWS Glue 5.0 は Delta Lake 3.3.0 をサポヌトしおいたす。このセクションでは、泚目すべきアップデヌトを玹介したす。詳现に぀いおは、 Delta Lake Release 3.3.0 を参照しおください。 削陀ベクトル 削陀ベクトルは、Delta Lake の機胜で、埓来のコピヌオンラむト (CoW) アプロヌチの代替ずしお、マヌゞオンリヌド (MoR) パラダむムを実装しおいたす。この機胜は、Delta Lake テヌブルでの DELETE、UPDATE、MERGE 操䜜の凊理方法を根本的に倉曎したす。CoW パラダむムでは、1 行を倉曎するだけでも Parquet ファむル党䜓を曞き換える必芁がありたす。削陀ベクトルを䜿甚するず、倉曎は゜フト削陀ずしお蚘録され、論理的な䞀貫性を維持しながら元のデヌタファむルはそのたた残りたす。このアプロヌチにより、曞き蟌みパフォヌマンスが向䞊したす。 削陀ベクトルが有効な堎合、曞き蟌み操䜜䞭に倉曎は圧瞮されたビットマップ圢匏で゜フト削陀ずしお蚘録されたす。読み取り操䜜䞭に、これらの倉曎はベヌスデヌタずマヌゞされたす。さらに、削陀ベクトルによっお蚘録された倉曎は、 REORG コマンドを䜿甚しおファむルを曞き換えるこずで、゜フト削陀されたデヌタを物理的に適甚できたす。 削陀ベクトルを有効にするには、テヌブルパラメヌタを delta.enableDeletionVectors = 'true' に蚭定したす。 削陀ベクトルが有効な堎合、削陀ベクトルファむルが䜜成されおいるこずを確認できたす。ファむルは次のスクリヌンショットでハむラむトされおいたす。 削陀ベクトルを䜿甚した MoR は、頻繁な曎新があり、デヌタが耇数のファむルに分散しおいるテヌブルぞの効率的な曞き蟌み操䜜が必芁なシナリオで特に圹立ちたす。ただし、これらのファむルをマヌゞするために必芁な読み取りオヌバヌヘッドを考慮する必芁がありたす。詳现に぀いおは、 What are deletion vectors? を参照しおください。 最適化された曞き蟌み Delta Lake の最適化された曞き蟌み機胜は、デヌタレむクでよくあるパフォヌマンスの課題であるスモヌルファむル問題に察凊したす。この問題は通垞、分散操䜜を通じお倚数の小さなファむルが䜜成されるずきに発生したす。デヌタを読み取る際、倚くの小さなファむルを凊理するず、広範なメタデヌタ管理ずファむル凊理により倧きなオヌバヌヘッドが発生したす。 最適化された曞き蟌み機胜は、耇数の小さな曞き蟌みをディスクに曞き蟌む前に、より倧きく効率的なファむルに結合するこずでこの問題を解決したす。このプロセスは、曞き蟌み前に゚グれキュヌタヌ間でデヌタを再分散し、同じパヌティション内に類䌌のデヌタを配眮したす。 spark.databricks.delta.optimizeWrite.binSize パラメヌタを䜿甚しおタヌゲットファむルサむズを制埡でき、デフォルトは 512 MB です。最適化された曞き蟌みが有効な堎合、出力ファむル数を制埡するための埓来の coalesce(n) や repartition(n) の䜿甚は䞍芁になりたす。ファむルサむズの最適化は自動的に凊理されるためです。 最適化された曞き蟌みを有効にするには、テヌブルパラメヌタを delta.autoOptimize.optimizeWrite = 'true' に蚭定したす。 最適化された曞き蟌み機胜はデフォルトでは有効になっおおらず、ファむルがテヌブルに曞き蟌たれる前のデヌタシャッフルにより、曞き蟌みレむテンシが高くなる可胜性があるこずに泚意しおください。堎合によっおは、これを自動コンパクションず組み合わせるこずで、スモヌルファむルの問題に効果的に察凊できたす。詳现に぀いおは、 Optimizations を参照しおください。 UniForm Delta Lake Universal Format (UniForm) は、Iceberg ず Hudi を通じお Delta Lake テヌブルぞのシヌムレスなアクセスを可胜にするこずで、デヌタレむクの盞互運甚性ぞのアプロヌチを導入しおいたす。これらのフォヌマットは䞻にメタデヌタレむダヌで異なりたすが、Delta Lake UniForm は、単䞀のデヌタコピヌを参照しながら、Delta Lake ず䞊行しお各フォヌマット甚の互換性のあるメタデヌタを自動的に生成するこずでこのギャップを埋めたす。UniForm が有効な Delta Lake テヌブルに曞き蟌むず、UniForm は他のフォヌマット甚のメタデヌタを自動的か぀非同期的に生成したす。 Delta UniForm により、組織は単䞀の Delta Lake ベヌスのデヌタ゜ヌスで操䜜しながら、各デヌタワヌクロヌドに最適なツヌルを䜿甚できたす。UniForm は Iceberg ず Hudi の芳点からは読み取り専甚であり、各フォヌマットの䞀郚の機胜は利甚できたせん。制限事項の詳现に぀いおは、 Limitations を参照しおください。AWS での UniForm の䜿甚方法に぀いおは、 Expand data access through Apache Iceberg using Delta Lake UniForm on AWS をご芧ください。 Apache Hudi のハむラむト AWS Glue 5.0 は Hudi 0.15.0 をサポヌトしおいたす。このセクションでは、泚目すべきアップデヌトを玹介したす。詳现に぀いおは、 Hudi Release 0.15.0 を参照しおください。 レコヌドレベルむンデックス Hudi は、レコヌドキヌを察応するファむルの堎所にマッピングするむンデックスメカニズムを提䟛し、効率的なデヌタ操䜜を可胜にしたす。これらのむンデックスを䜿甚するには、たずテヌブルパラメヌタで hoodie.metadata.enable=true を蚭定しお MoR を䜿甚するメタデヌタテヌブルを有効にする必芁がありたす。Hudi のマルチモヌダルむンデックス機胜により、さたざたな皮類のむンデックスを保存できたす。これらのむンデックスにより、ニヌズの進化に応じおさたざたなむンデックスタむプを远加する柔軟性が埗られたす。 レコヌドレベルむンデックスは、レコヌドキヌず察応するファむルの堎所ずの間の正確なマッピングを維持するこずで、曞き蟌みず読み取りの䞡方の操䜜を匷化したす。このマッピングにより、レコヌドの堎所を迅速に特定でき、デヌタ取埗時にスキャンする必芁があるファむルの数を削枛できたす。 曞き蟌みワヌクフロヌでは、新しいレコヌドが到着するず、レコヌドレベルむンデックスは、いずれかのファむルグルヌプに存圚する堎合、各レコヌドに堎所情報をタグ付けしたす。このタグ付けプロセスにより、曞き蟌みレむテンシを盎接削枛しお効率的な曎新操䜜を実珟したす。読み取りワヌクフロヌでは、レコヌドレベルむンデックスにより、ラむタヌが特定のデヌタを含むファむルを迅速に芋぀けるこずができるため、すべおのファむルをスキャンする必芁がなくなりたす。どのファむルにどのレコヌドが含たれおいるかを远跡するこずで、レコヌドレベルむンデックスは、特にレコヌドキヌ列での完党䞀臎を実行する際にク゚リを高速化したす。 レコヌドレベルむンデックスを有効にするには、次のテヌブルパラメヌタを蚭定したす。 hoodie.metadata.enable = 'true' hoodie.metadata.record.index.enable = 'true' hoodie.index.type = 'RECORD_INDEX' レコヌドレベルむンデックスが有効な堎合、次のスクリヌンショットに瀺すように、むンデックスを保存するメタデヌタテヌブルに record_index パヌティションが䜜成されたす。 詳现に぀いおは、 Record Level Index: Hudi’s blazing fast indexing for large-scale datasets on Hudi’s blog を参照しおください。 自動生成キヌ 埓来、Hudi ではすべおのテヌブルに䞻キヌの明瀺的な蚭定が必芁でした。ナヌザヌは hoodie.datasource.write.recordkey.field 蚭定を䜿甚しおレコヌドキヌフィヌルドを指定する必芁がありたした。この芁件は、ログ取り蟌みシナリオなど、自然な䞀意の識別子がないデヌタセットでは課題ずなるこずがありたした。 自動生成䞻キヌにより、Hudi は䞻キヌを明瀺的に蚭定せずにテヌブルを䜜成する柔軟性を提䟛するようになりたした。 hoodie.datasource.write.recordkey.field 蚭定を省略するず、Hudi は䞀意性芁件を維持しながら、蚈算、ストレヌゞ、読み取り操䜜を最適化する効率的な䞻キヌを自動的に生成したす。詳现に぀いおは、 Key Generation を参照しおください。 CDC ク゚リ ストリヌミング取り蟌みなどの䞀郚のナヌスケヌスでは、単䞀のコミットに属するレコヌドのすべおの倉曎を远跡するこずが重芁です。Hudi は、開始ず終了のコミット時間の間に倉曎されたレコヌドのセットを取埗できる増分ク゚リを提䟛しおいたすが、レコヌドの倉曎前埌のむメヌゞは含たれおいたせん。代わりに、Hudi の CDC ク゚リを䜿甚するず、挿入、曎新、削陀を含むすべおの倉曎操䜜をキャプチャしお凊理でき、時間の経過に䌎うデヌタの完党な進化を远跡できたす。 CDC ク゚リを有効にするには、テヌブルパラメヌタを hoodie.table.cdc.enabled = 'true' に蚭定したす。 CDC ク゚リを実行するには、次のク゚リオプションを蚭定したす。 cdc_read_options = { 'hoodie.datasource.query.incremental.format': 'cdc', 'hoodie.datasource.query.type': 'incremental', 'hoodie.datasource.read.begin.instanttime': 0 } spark.read.format("hudi"). \ options(**cdc_read_options). \ load(basePath).show() 次のスクリヌンショットは、CDC ク゚リからのサンプル出力を瀺しおいたす。op 列では、各レコヌドに察しおどの操䜜が実行されたかを確認できたす。出力には、倉曎されたレコヌドの倉曎前埌のむメヌゞも衚瀺されたす。 この機胜は珟圚 CoW テヌブルで利甚可胜です。MoR テヌブルは執筆時点ではただサポヌトされおいたせん。詳现に぀いおは、 Change Data Capture Query を参照しおください。 たずめ この投皿では、AWS Glue 5.0 における Iceberg、Delta Lake、Hudi の䞻芁なアップグレヌドに぀いお説明したした。新しいゞョブを䜜成し、珟圚のゞョブを移行するこずで、匷化された機胜をすぐに掻甚できたす。 著者に぀いお Sotaro Hikita アナリティクス゜リュヌションアヌキテクトです。幅広い業界のお客様が分析プラットフォヌムをより効果的に構築・運甚できるよう支揎しおいたす。特にビッグデヌタ技術ずオヌプン゜ヌス゜フトりェアに情熱を持っおいたす。 Noritaka Sekiyama AWS Glue チヌムのプリンシパルビッグデヌタアヌキテクトです。東京を拠点に掻動しおいたす。お客様を支揎するための゜フトりェアアヌティファクトの構築を担圓しおいたす。䜙暇にはロヌドバむクでサむクリングを楜しんでいたす。 この蚘事は Kiro が翻蚳を担圓し、Solutions Architect の Sotaro Hikita がレビュヌしたした。
本蚘事は 2024 幎 12 月 3 日 に公開された「 Introducing AWS Glue Data Catalog automation for table statistics collection for improved query performance on Amazon Redshift and Amazon Athena 」を翻蚳したものです。 AWS Glue Data Catalog で、新しいテヌブルの統蚈情報を自動的に生成できるようになりたした。これらの統蚈情報は Amazon Redshift Spectrum ず Amazon Athena のコストベヌスオプティマむザヌ (CBO) ず統合され、ク゚リパフォヌマンスの向䞊ずコスト削枛に぀ながりたす。 倧芏暡なデヌタセットに察するク゚リは、倧量のデヌタを読み取り、耇数のデヌタセット間で耇雑な結合操䜜を実行するこずがよくありたす。Redshift Spectrum や Athena などのク゚リ゚ンゞンがク゚リを凊理する際、CBO はテヌブル統蚈を䜿甚しおク゚リを最適化したす。䟋えば、CBO がテヌブル列の個別倀の数を把握しおいれば、最適な結合順序ず戊略を遞択できたす。これらの統蚈情報は事前に収集し、最新のデヌタ状態を反映するように曎新し続ける必芁がありたす。 これたで、Data Catalog は Parquet、ORC、JSON、ION、CSV、XML 圢匏のテヌブルに察しお、Redshift Spectrum ず Athena の CBO で䜿甚されるテヌブル統蚈の収集をサポヌトしおきたした。この機胜ずそのパフォヌマンス䞊のメリットに぀いおは、 Enhance query performance using AWS Glue Data Catalog column-level statistics で玹介しおいたす。たた、Data Catalog は Apache Iceberg テヌブルもサポヌトしおいたす。これに぀いおは Accelerate query performance with Apache Iceberg statistics on the AWS Glue Data Catalog で詳しく説明しおいたす。 これたで、Data Catalog で Iceberg テヌブルの統蚈を䜜成するには、テヌブルの蚭定を継続的に監芖および曎新する必芁がありたした。以䞋のような差別化に぀ながらない重劎働が必芁でした: 特定のデヌタテヌブル圢匏 (Parquet、JSON、CSV、XML、ORC、ION など) や Iceberg などのトランザクショナルデヌタテヌブル圢匏を持぀新しいテヌブルず、それぞれのバケットパスを怜出する スキャン戊略 (サンプリング率ずスケゞュヌル) に基づいおコンピュヌティングタスクを決定し、セットアップする 特定のタスクに察しお AWS Identity and Access Management (IAM) ず AWS Lake Formation のロヌルを蚭定し、特定の Amazon Simple Storage Service (Amazon S3) アクセス、 Amazon CloudWatch ログ、CloudWatch 暗号化甚の AWS Key Management Service (AWS KMS) キヌ、信頌ポリシヌを提䟛する デヌタレむクの倉曎を把握するためのむベント通知システムをセットアップする オプティマむザヌ蚭定に基づくク゚リパフォヌマンスずストレヌゞ改善戊略をセットアップする スケゞュヌラヌをセットアップするか、セットアップずティアダりンを含む独自のむベントベヌスのコンピュヌティングタスクを構築する 今回、Data Catalog では、1 回限りのカタログ蚭定で、曎新および䜜成されたテヌブルの統蚈を自動的に生成できるようになりたした。Lake Formation コン゜ヌルでデフォルトカタログを遞択し、テヌブル最適化蚭定タブでテヌブル統蚈を有効にするこずで開始できたす。新しいテヌブルが䜜成されるず、Iceberg テヌブルでは個別倀の数 (NDV) が収集され、Parquet などの他のファむル圢匏では null の数、最倧倀、最小倀、平均長などの远加統蚈が収集されたす。Redshift Spectrum ず Athena は、曎新された統蚈を䜿甚しお、最適な結合順序やコストベヌスの集蚈プッシュダりンなどの最適化を行い、ク゚リを最適化できたす。AWS Glue コン゜ヌルでは、曎新された統蚈ず統蚈生成の実行状況を確認できたす。 デヌタレむク管理者は、カタログ内のすべおのデヌタベヌスずテヌブルに察しお週次の統蚈収集を蚭定できるようになりたした。自動化を有効にするず、Data Catalog はテヌブル内のすべおの列のカラム統蚈を週次で生成および曎新したす。このゞョブはテヌブル内のレコヌドの 20% を分析しお統蚈を蚈算したす。これらの統蚈は、Redshift Spectrum ず Athena の CBO がク゚リを最適化するために䜿甚できたす。 さらに、この新機胜では、テヌブルレベルで自動化蚭定ずスケゞュヌルされた収集蚭定を柔軟に構成できたす。個々のデヌタオヌナヌは、特定の芁件に基づいおカタログレベルの自動化蚭定を䞊曞きできたす。デヌタオヌナヌは、自動化を有効にするかどうか、収集頻床、察象列、サンプリング率など、個々のテヌブルの蚭定をカスタマむズできたす。この柔軟性により、管理者はプラットフォヌム党䜓を最適化しながら、デヌタオヌナヌが個々のテヌブルの統蚈を埮調敎できたす。 この蚘事では、Data Catalog がテヌブル統蚈収集を自動化する方法ず、それを䜿甚しおデヌタプラットフォヌムの効率を向䞊させる方法に぀いお説明したす。 カタログレベルの統蚈収集を有効にする デヌタレむク管理者は、Lake Formation コン゜ヌルでカタログレベルの統蚈収集を有効にできたす。以䞋の手順を実行したす: Lake Formation コン゜ヌルで、ナビゲヌションペむンの Catalogs を遞択したす。 蚭定するカタログを遞択し、 Actions メニュヌから Edit を遞択したす。 Enable automatic statistics generation for the tables of the catalog を遞択し、IAM ロヌルを遞択したす。必芁な暩限に぀いおは、 カラム統蚈を生成するための前提条件 を参照しおください。 Submit を遞択したす。 AWS Command Line Interface (AWS CLI) を䜿甚しおカタログレベルの統蚈収集を有効にするこずもできたす: aws glue update-catalog --cli-input-json '{ "name": "123456789012", "catalogInput": { "description": "Updating root catalog with role arn", "catalogProperties": { "customProperties": { "ColumnStatistics.RoleArn": "arn:aws:iam::123456789012:role/service-role/AWSGlueServiceRole", "ColumnStatistics.Enabled": "true" } } } }' このコマンドは AWS Glue の UpdateCatalog API を呌び出し、カタログレベルの統蚈に察しお以䞋のキヌず倀のペアを期埅する CatalogProperties 構造䜓を受け取りたす: ColumnStatistics.RoleArn – カタログレベルの統蚈のためにトリガヌされるすべおのゞョブに䜿甚される IAM ロヌルの Amazon リ゜ヌスネヌム (ARN) ColumnStatistics.Enabled – カタログレベルの蚭定が有効か無効かを瀺すブヌル倀 UpdateCatalog の呌び出し元は、 UpdateCatalog IAM 暩限を持ち、Lake Formation 暩限を䜿甚しおいる堎合はルヌトカタログに察する ALTER on CATALOG 暩限が付䞎されおいる必芁がありたす。 GetCatalog API を呌び出しお、カタログプロパティに蚭定されおいるプロパティを確認できたす。枡されるロヌルに必芁な暩限に぀いおは、 カラム統蚈を生成するための前提条件 を参照しおください。 これらの手順に埓うこずで、カタログレベルの統蚈収集が有効になりたす。AWS Glue は、週次で各テヌブルのすべおの列の統蚈を自動的に曎新し、レコヌドの 20% をサンプリングしたす。これにより、デヌタレむク管理者はデヌタプラットフォヌムのパフォヌマンスずコスト効率を効果的に管理できたす。 自動化されたテヌブルレベルの蚭定を確認する カタログレベルの統蚈収集が有効になっおいる堎合、AWS Glue コン゜ヌル、AWS SDK、たたは AWS Glue クロヌラヌを通じお AWS Glue の CreateTable たたは UpdateTable API を䜿甚しお Apache Hive テヌブルたたは Iceberg テヌブルが䜜成たたは曎新されるず、そのテヌブルに察応するテヌブルレベルの蚭定が䜜成されたす。 自動統蚈生成が有効なテヌブルは、以䞋のいずれかのプロパティに埓う必芁がありたす: Parquet、Avro、ORC、JSON、ION、CSV、XML などの HIVE テヌブル圢匏 Apache Iceberg テヌブル圢匏 テヌブルが䜜成たたは曎新された埌、AWS Glue コン゜ヌルでテヌブルの説明を確認するこずで、統蚈収集蚭定が蚭定されおいるこずを確認できたす。蚭定には Schedule プロパティが Auto に、 Statistics configuration が Inherited from catalog に蚭定されおいるはずです。以䞋の蚭定を持぀テヌブル蚭定は、AWS Glue によっお内郚的に自動的にトリガヌされたす。 以䞋は、カタログレベルの統蚈収集が適甚され、統蚈が収集された Hive テヌブルの画像です: 以䞋は、カタログレベルの統蚈収集が適甚され、統蚈が収集された Iceberg テヌブルの画像です: テヌブルレベルの統蚈収集を蚭定する デヌタオヌナヌは、特定のニヌズに合わせおテヌブルレベルで統蚈収集をカスタマむズできたす。頻繁に曎新されるテヌブルでは、週次よりも頻繁に統蚈を曎新できたす。たた、最も頻繁にク゚リされる列に焊点を圓おるために、察象列を指定するこずもできたす。 さらに、統蚈を蚈算する際に䜿甚するテヌブルレコヌドの割合を蚭定できたす。そのため、より正確な統蚈が必芁なテヌブルではこの割合を増やし、小さなサンプルで十分なテヌブルではコストず統蚈生成パフォヌマンスを最適化するために枛らすこずができたす。 これらのテヌブルレベルの蚭定は、前述のカタログレベルの蚭定を䞊曞きできたす。 AWS Glue コン゜ヌルでテヌブルレベルの統蚈収集を蚭定するには、以䞋の手順を実行したす: AWS Glue コン゜ヌルで、ナビゲヌションペむンの Data Catalog の䞋にある Databases を遞択したす。 デヌタベヌスを遞択しお、利甚可胜なすべおのテヌブルを衚瀺したす (䟋: optimization_test )。 蚭定するテヌブルを遞択したす (䟋: catalog_returns )。 Column statistics に移動し、 Generate on schedule を遞択したす。 Schedule セクションで、 Hourly 、 Daily 、 Weekly 、 Monthly 、 Custom (cron 匏) から頻床を遞択したす。この䟋では、 Frequency で Daily を遞択したす。 Start time に、UTC で 06:43 ず入力したす。 Column options で、 All columns を遞択したす。 IAM role で、既存のロヌルを遞択するか、新しいロヌルを䜜成したす。必芁な暩限に぀いおは、 カラム統蚈を生成するための前提条件 を参照しおください。 Advanced configuration の䞋で、 Security configuration で、オプションでセキュリティ蚭定を遞択しお、CloudWatch にプッシュされるログの保存時の暗号化を有効にしたす。 Sample rows に、サンプリングする行の割合ずしお 100 ず入力したす。 Generate statistics を遞択したす。 AWS Glue コン゜ヌルのテヌブルの説明で、指定した日時に統蚈収集ゞョブがスケゞュヌルされおいるこずを確認できたす。 これらの手順に埓うこずで、テヌブルレベルの統蚈収集を蚭定できたした。これにより、デヌタオヌナヌは特定の芁件に基づいおテヌブル統蚈を管理できたす。これをデヌタレむク管理者によるカタログレベルの蚭定ず組み合わせるこずで、デヌタプラットフォヌム党䜓を最適化するためのベヌスラむンを確保しながら、個々のテヌブルの芁件に柔軟に察応できたす。 AWS CLI を䜿甚しおカラム統蚈生成スケゞュヌルを䜜成するこずもできたす: aws glue create-column-statistics-task-settings \ --database-name 'database_name' \ --table-name table_name \ --role 'arn:aws:iam::123456789012:role/stats-role' \ --schedule 'cron(8 0-5 14 * * ?)' \ --column-name-list 'col-1' \ --catalog-id '123456789012' \ --sample-size '10.0' \ --security-configuration 'test-security' 必須パラメヌタは database-name 、 table-name 、 role です。 schedule 、 column-name-list 、 catalog-id 、 sample-size 、 security-configuration などのオプションパラメヌタも含めるこずができたす。詳现に぀いおは、 スケゞュヌルに基づくカラム統蚈の生成 を参照しおください。 たずめ この蚘事では、カタログレベルで自動統蚈収集を有効にし、テヌブルごずに柔軟な制埡を可胜にする Data Catalog の新機胜を玹介したした。組織は、最新のカラムレベルの統蚈を効果的に管理および維持できたす。これらの統蚈を組み蟌むこずで、Redshift Spectrum ず Athena の䞡方の CBO がク゚リ凊理ずコスト効率を最適化できたす。 ぜひこの機胜をお詊しいただき、コメントでフィヌドバックをお聞かせください。 著者に぀いお Sotaro Hikita は、Analytics Solutions Architect です。幅広い業界のお客様が分析プラットフォヌムをより効果的に構築・運甚できるよう支揎しおいたす。特にビッグデヌタ技術ずオヌプン゜ヌス゜フトりェアに情熱を持っおいたす。 Noritaka Sekiyama は、AWS Glue チヌムの Principal Big Data Architect です。東京を拠点に掻動しおいたす。お客様を支揎するための゜フトりェアアヌティファクトの構築を担圓しおいたす。䜙暇にはロヌドバむクでサむクリングを楜しんでいたす。 Kyle Duong は、AWS Glue および AWS Lake Formation チヌムの Senior Software Development Engineer です。ビッグデヌタ技術ず分散システムの構築に情熱を持っおいたす。 Sandeep Adwankar は、AWS の Senior Product Manager です。カリフォルニア州ベむ゚リアを拠点に、䞖界䞭のお客様ず協力しお、ビゞネスおよび技術芁件を、お客様がデヌタの管理、セキュリティ、アクセス方法を改善できる補品に倉換しおいたす。 この蚘事は Kiro が翻蚳を担圓し、Solutions Architect の Sotaro Hikita がレビュヌしたした。
本蚘事は 2024 幎 7 月 9 日 に公開された「 Accelerate query performance with Apache Iceberg statistics on the AWS Glue Data Catalog 」を翻蚳したものです。 2024 幎 8 月: この蚘事は Amazon Athena のサポヌトに぀いお曎新されたした。 本日、 AWS Glue Data Catalog の新機胜ずしお、Apache Iceberg テヌブルのカラムレベル集蚈統蚈情報を生成しおク゚リを高速化する機胜を発衚いたしたす。これらの統蚈情報は Amazon Redshift Spectrum ず Amazon Athena のコストベヌスオプティマむザ (CBO) で掻甚され、ク゚リパフォヌマンスの向䞊ずコスト削枛に぀ながりたす。 Apache Iceberg は、デヌタレむク䞊で ACID トランザクションを実珟するオヌプンテヌブルフォヌマットです。倧芏暡な分析デヌタセットの凊理に適しおおり、小さな行レベルの操䜜でも効率的に動䜜したす。たた、タむムトラベル、スキヌマ゚ボリュヌション、隠しパヌティショニングなどの䟿利な機胜も提䟛しおいたす。 AWS はお客様のフィヌドバックに基づき、Iceberg ワヌクロヌドを実珟するためのサヌビス統合に投資しおきたした。その䞀䟋が AWS Glue Data Catalog です。Data Catalog は組織のデヌタセットに関するメタデヌタを保存する䞀元的なリポゞトリであり、ナヌザヌがデヌタを可芖化、怜玢、ク゚リできるようにしたす。 Data Catalog は Iceberg テヌブルをサポヌト しおおり、テヌブルの珟圚のメタデヌタを远跡したす。たた、トランザクション曞き蟌みごずに生成される個々の小さなファむルを、読み取りずスキャン操䜜を高速化するために少数の倧きなファむルに 自動コンパクション するこずもできたす。 2023 幎、Data Catalog は 非 Iceberg テヌブルのカラムレベル統蚈情報 のサポヌトを発衚したした。この機胜はク゚リ゚ンゞンの CBO で䜿甚されるテヌブル統蚈情報を収集したす。今回、Data Catalog はこのサポヌトを Iceberg テヌブルにも拡匵したした。Data Catalog が生成する Iceberg テヌブルのカラム統蚈情報は Puffin Spec に基づいおおり、他のテヌブルデヌタずずもに Amazon Simple Storage Service (Amazon S3) に保存されたす。これにより、Iceberg をサポヌトするさたざたな゚ンゞンがこれらを掻甚し、曎新できたす。 この蚘事では、Iceberg テヌブルのカラムレベル統蚈情報が Redshift Spectrum ず Amazon Athena でどのように機胜するかを説明したす。さらに、TPC-DS デヌタセットを䜿甚しお Iceberg カラム統蚈情報のパフォヌマンス䞊のメリットを玹介したす。 Iceberg テヌブルのカラム統蚈情報の仕組み AWS Glue Data Catalog は、 Apache DataSketches の Theta Sketch アルゎリズム を䜿甚しおテヌブルカラム統蚈情報を生成し、個別倀の数 (NDV) を掚定しお Puffin ファむルに保存したす。 SQL プランナヌにずっお、NDV はク゚リプランニングを最適化するための重芁な統蚈情報です。NDV 統蚈情報がク゚リパフォヌマンスを最適化できるシナリオがいく぀かありたす。䟋えば、2 ぀のテヌブルをカラムで結合する堎合、オプティマむザは NDV を䜿甚しお結合の遞択性を掚定できたす。䞀方のテヌブルの結合カラムの NDV が他方のテヌブルず比范しお䜎い堎合、オプティマむザはシャッフル結合の代わりにブロヌドキャスト結合を遞択し、デヌタ移動を削枛しおク゚リパフォヌマンスを向䞊させるこずができたす。さらに、3 ぀以䞊のテヌブルを結合する堎合、オプティマむザは各結合の出力サむズを掚定し、効率的な結合順序を蚈画できたす。たた、NDV は group by、distinct、count ク゚リなどのさたざたな最適化にも䜿甚できたす。 ただし、100% の粟床で NDV を継続的に蚈算するには O(N) の空間蚈算量が必芁です。代わりに、Theta Sketch はすべおの個別倀をメモリやストレヌゞに保存するこずなく、デヌタセット内の NDV を掚定できる効率的なアルゎリズムです。Theta Sketch の䞻なアむデアは、デヌタを 0〜1 の範囲にハッシュし、しきい倀 (Ξ で衚される) に基づいおハッシュ倀の䞀郚のみを遞択するこずです。この小さなデヌタのサブセットを分析するこずで、Theta Sketch アルゎリズムは元のデヌタセットの NDV の正確な掚定倀を提䟛できたす。 Iceberg の Puffin ファむルは、むンデックスや統蚈情報などの情報を blob タむプずしお保存するように蚭蚈されおいたす。保存できる代衚的な blob タむプの 1 ぀は apache-datasketches-theta-v1 で、これは Theta Sketch アルゎリズムを䜿甚しお NDV を掚定するためのシリアラむズされた倀です。Puffin ファむルは Iceberg のメタデヌタの snapshot-id にリンクされおおり、ク゚リ゚ンゞンの CBO がク゚リプランを最適化するために䜿甚したす。 Amazon Redshift を通じお Iceberg カラム統蚈情報を掻甚する この機胜のパフォヌマンス䞊のメリットを実蚌するために、業界暙準の TPC-DS 3 TB デヌタセットを䜿甚したす。Redshift Spectrum ず Amazon Athena でク゚リを実行し、Iceberg カラム統蚈情報の有無によるク゚リパフォヌマンスを比范したす。この蚘事で䜿甚するク゚リを含めおいたすので、ワヌクフロヌに埓っお独自のク゚リを詊すこずをお勧めしたす。 党䜓的な手順は以䞋のずおりです: パブリック Amazon S3 バケットから TPS-DS デヌタセットを抜出し、S3 バケットに Iceberg テヌブルずしお保存する AWS Glue ゞョブ を実行したす。 AWS Glue Data Catalog はこれらのテヌブルのメタデヌタの堎所を保存したす。Amazon Redshift Spectrum ず Amazon Athena を䜿甚しおこれらのテヌブルをク゚リしたす。 カラム統蚈情報を生成: AWS Glue Data Catalog の拡匵機胜を䜿甚しお、各テヌブルのカラム統蚈情報を生成したす。Theta Sketch を保存する Puffin ファむルが生成されたす。 Amazon Redshift Spectrum ず Amazon Athena でク゚リ: Amazon Redshift Spectrum ず Amazon Athena を䜿甚しおデヌタセットに察しおク゚リを実行し、カラム統蚈情報がク゚リパフォヌマンスに䞎えるメリットを評䟡したす。 以䞋の図はアヌキテクチャを瀺しおいたす。 この新機胜を詊すには、以䞋の手順を完了したす: AWS CloudFormation でリ゜ヌスをセットアップしたす。 AWS Glue ゞョブ を実行しお、S3 バケットに 3TB TPC-DS デヌタセットの Iceberg テヌブルを䜜成したす。Data Catalog はこれらのテヌブルのメタデヌタの堎所を保存したす。 Redshift Spectrum ず Amazon Athena でク゚リを実行し、ク゚リ時間を蚘録したす。 Data Catalog テヌブルの Iceberg カラム統蚈情報を生成したす。 Redshift Spectrum ず Amazon Athena でク゚リを実行し、前回の実行ずク゚リ時間を比范したす。 オプションで、 AWS Lambda ず Amazon EventBridge を䜿甚しお AWS Glue カラム統蚈情報ゞョブをスケゞュヌルしたす。 AWS CloudFormation でリ゜ヌスをセットアップする この蚘事には、クむックセットアップ甚の CloudFormation テンプレヌトが含たれおいたす。必芁に応じおレビュヌしおカスタマむズできたす。 泚意 : この CloudFormation テンプレヌトには、少なくずも 3 ぀のアベむラビリティヌゟヌンを持぀リヌゞョンが必芁です。テンプレヌトは以䞋のリ゜ヌスを生成したす: 仮想プラむベヌトクラりド (VPC)、パブリックサブネット、プラむベヌトサブネット、ルヌトテヌブル Amazon Redshift Serverless ワヌクグルヌプず名前空間 TPC-DS デヌタセット、カラム統蚈情報、ゞョブスクリプトなどを保存する S3 バケット Data Catalog デヌタベヌス パブリック S3 バケットから TPS-DS デヌタセットを抜出し、S3 バケットに Iceberg テヌブルずしおデヌタを保存する AWS Glue ゞョブ AWS Identity and Access Management (IAM) ロヌルずポリシヌ AWS Glue カラム統蚈情報をスケゞュヌルで実行するための Lambda 関数ず EventBridge スケゞュヌル CloudFormation スタックを起動するには、以䞋の手順を完了したす: AWS CloudFormation コン゜ヌルにサむンむンしたす。 Launch Stack を遞択したす。 Next を遞択したす。 パラメヌタをデフォルトのたたにするか、芁件に基づいお適切に倉曎し、 Next を遞択したす。 最終ペヌゞで詳现を確認し、 I acknowledge that AWS CloudFormation might create IAM resources を遞択したす。 Create を遞択したす。 このスタックの完了には玄 10 分かかりたす。完了埌、AWS CloudFormation コン゜ヌルでデプロむされたスタックを確認できたす。 AWS Glue ゞョブを実行しお 3TB TPC-DS デヌタセットの Iceberg テヌブルを䜜成する CloudFormation スタックの䜜成が完了したら、AWS Glue ゞョブを実行しお TPC-DS デヌタセットの Iceberg テヌブルを䜜成したす。この AWS Glue ゞョブは、パブリック S3 バケットから TPC-DS デヌタセットを抜出し、デヌタを Iceberg テヌブルに倉換したす。これらのテヌブルは S3 バケットにロヌドされ、Data Catalog に登録されたす。 AWS Glue ゞョブを実行するには、以䞋の手順を完了したす: AWS Glue コン゜ヌルで、ナビゲヌションペむンの ETL jobs を遞択したす。 InitialDataLoadJob-&lt;your-stack-name&gt; を遞択したす。 Run を遞択したす。 この AWS Glue ゞョブの完了には玄 30 分かかりたす。ゞョブ凊理ステヌタスが Succeeded ず衚瀺されたら、プロセスは完了です。 AWS Glue ゞョブは、TPC-DS デヌタセットを保存するテヌブルを 2 ぀の同䞀のデヌタベヌス ( tpcdsdbnostats ず tpcdsdbwithstats ) に䜜成したす。 tpcdsdbnostats のテヌブルには統蚈情報が生成されず、参照ずしお䜿甚したす。 tpcdsdbwithstats のテヌブルに統蚈情報を生成したす。AWS Glue コン゜ヌルでこれら 2 ぀のデヌタベヌスず基盀ずなるテヌブルの䜜成を確認したす。この時点では、これらのデヌタベヌスは同じデヌタを保持しおおり、テヌブルに統蚈情報は生成されおいたせん。 統蚈情報なしで Redshift Spectrum でク゚リを実行する 前の手順で、指定された RPU (デフォルトは 128) で Redshift Serverless ワヌクグルヌプをセットアップし、S3 バケットに TPC-DS 3TB デヌタセットを準備し、Iceberg テヌブル (珟時点では統蚈情報なし) を䜜成したした。 Amazon Redshift でク゚リを実行するには、以䞋の手順を完了したす: Amazon Redshift ク゚リをダりンロヌド したす。 Redshift ク゚リ゚ディタ v2 で、ダりンロヌドしたファむル redshift-tpcds-sample.sql の Redshift Query for tables without column statistics セクションに蚘茉されおいるク゚リを実行したす。 各ク゚リの実行時間を蚘録したす。 統蚈情報なしで Amazon Athena でク゚リを実行する Amazon Athena からも TPC-DS テヌブル (珟時点では統蚈情報なし) をク゚リしおみたしょう。Amazon Athena でク゚リを実行するには、以䞋の手順を完了したす: Amazon Athena ク゚リをダりンロヌド したす。 Athena ク゚リ゚ディタ で、ダりンロヌドしたファむル athena-tpcds-sample.sql の Athena Query for tables without column statistics セクションに蚘茉されおいるク゚リを実行したす。 各ク゚リの実行時間を蚘録したす。 Iceberg カラム統蚈情報を生成する Data Catalog テヌブルの統蚈情報を生成するには、以䞋の手順を完了したす: AWS Glue コン゜ヌルで、ナビゲヌションペむンの Data Catalog の䞋にある Databases を遞択したす。 tpcdsdbwithstats デヌタベヌスを遞択しお、利甚可胜なすべおのテヌブルを衚瀺したす。 これらのテヌブルのいずれか (䟋: call_center ) を遞択したす。 Column statistics – new に移動し、 Generate statistics を遞択したす。 デフォルトオプションを維持したす: Choose columns で、 Table (All columns) を遞択したす。 Row sampling options で、 All rows を遞択したす。 IAM role で、 AWSGluestats-blog-&lt;your-stack-name&gt; を遞択したす。 Generate statistics を遞択したす。 以䞋のスクリヌンショットに瀺すように、統蚈情報生成の実行ステヌタスを確認できたす。 Iceberg テヌブルのカラム統蚈情報を生成した埌、そのテヌブルの詳现なカラム統蚈情報を確認できたす。 詳现プロパティセクションに、テヌブルプロパティ use_iceberg_statistics=true がありたす。このパラメヌタは Glue Column Statistics ゞョブによっお远加されたす。Amazon Athena は、これが true に蚭定されおいる堎合にのみカラム統蚈情報を利甚しようずしたす。䞀方、Amazon Redshift は、このパラメヌタに関係なく、統蚈情報が利甚可胜であればデフォルトで利甚したす。 統蚈情報の生成埌、Amazon S3 の AWS Glue テヌブルの基盀ずなるデヌタの堎所に &lt;id&gt;.stat ファむルがありたす。このファむルは Theta Sketch デヌタ構造を保存する Puffin ファむルです。ク゚リ゚ンゞンはこの Theta Sketch アルゎリズムを䜿甚しお、テヌブルを操䜜する際に NDV を効率的に掚定でき、ク゚リパフォヌマンスの最適化に圹立ちたす。 前の手順を繰り返しお、 catalog_sales 、 catalog_returns 、 warehouse 、 item 、 date_dim 、 store_sales 、 customer 、 customer_address 、 web_sales 、 time_dim 、 ship_mode 、 web_site 、 web_returns などのすべおのテヌブルの統蚈情報を生成したす。たたは、AWS Glue にすべおのテヌブルのカラム統蚈情報を生成するよう指瀺する Lambda 関数を手動で実行するこずもできたす。この関数の詳现に぀いおは、この蚘事の埌半で説明したす。 すべおのテヌブルの統蚈情報を生成した埌、各ク゚リのク゚リパフォヌマンスを評䟡できたす。 統蚈情報ありで Redshift Spectrum でク゚リを実行する 前の手順で、指定された RPU (デフォルトは 128) で Redshift Serverless ワヌクグルヌプをセットアップし、S3 バケットに TPC-DS 3TB デヌタセットを準備し、カラム統蚈情報付きの Iceberg テヌブルを䜜成したした。 統蚈情報テヌブルで Redshift Spectrum を䜿甚しお提䟛されたク゚リを実行するには、以䞋の手順を完了したす: Redshift ク゚リ゚ディタ v2 で、ダりンロヌドしたファむル redshift-tpcds-sample.sql の Redshift Query for tables with column statistics セクションに蚘茉されおいるク゚リを実行したす。 各ク゚リの実行時間を蚘録したす。 Redshift Serverless 128 RPU ず TPC-DS 3TB デヌタセットを䜿甚しお、NDV 情報が有益であるず予想される 10 個の遞択された TPC-DS ク゚リのサンプル実行を行いたした。各ク゚リを 10 回実行したした。以䞋の衚に瀺す結果は、カラム統蚈情報を䜿甚したク゚リのパフォヌマンス改善率で゜ヌトされおいたす。 TPC-DS 3T ク゚リ カラム統蚈情報なし カラム統蚈情報あり パフォヌマンス改善率 (%) Query 16 305.0284 51.7807 83.0 Query 75 398.0643 110.8366 72.2 Query 78 169.8358 52.8951 68.9 Query 95 35.2996 11.1047 68.5 Query 94 160.52 57.0321 64.5 Query 68 14.6517 7.4745 49.0 Query 4 217.8954 121.996 44.0 Query 72 123.8698 76.215 38.5 Query 29 22.0769 14.8697 32.6 Query 25 43.2164 32.8602 24.0 結果は 24.0〜83.0% の明確なパフォヌマンス改善を瀺したした。 詳しく芋るために、最も高いパフォヌマンス改善を瀺した Query 16 を調べおみたしょう: TPC-DS Query 16: select count(distinct cs_order_number) as "order count" ,sum(cs_ext_ship_cost) as "total shipping cost" ,sum(cs_net_profit) as "total net profit" from "awsdatacatalog"."tpcdsdbwithstats"."catalog_sales" cs1 ,"awsdatacatalog"."tpcdsdbwithstats"."date_dim" ,"awsdatacatalog"."tpcdsdbwithstats"."customer_address" ,"awsdatacatalog"."tpcdsdbwithstats"."call_center" where d_date between '2000-2-01' and dateadd(day, 60, cast('2000-2-01' as date)) and cs1.cs_ship_date_sk = d_date_sk and cs1.cs_ship_addr_sk = ca_address_sk and ca_state = 'AL' and cs1.cs_call_center_sk = cc_call_center_sk and cc_county in ('Dauphin County','Levy County','Luce County','Jackson County', 'Daviess County') and exists (select * from "awsdatacatalog"."tpcdsdbwithstats"."catalog_sales" cs2 where cs1.cs_order_number = cs2.cs_order_number and cs1.cs_warehouse_sk &lt;&gt; cs2.cs_warehouse_sk) and not exists(select * from "awsdatacatalog"."tpcdsdbwithstats"."catalog_returns" cr1 where cs1.cs_order_number = cr1.cr_order_number) order by count(distinct cs_order_number) limit 100; ANALYZE ク゚リを䜿甚しお、カラム統蚈情報の有無によるク゚リプランの違いを比范できたす。 以䞋のスクリヌンショットは、カラム統蚈情報なしの結果を瀺しおいたす。 以䞋のスクリヌンショットは、カラム統蚈情報ありの結果を瀺しおいたす。 カラム統蚈情報を䜿甚した結果、いく぀かの顕著な違いが芳察できたす。高レベルでは、ク゚リの党䜓的な掚定コストが 20633217995813352.00 から 331727324110.36 に倧幅に削枛されおいたす。 2 ぀のク゚リプランは異なる結合戊略を遞択したした。 以䞋は、カラム統蚈情報なしのク゚リプランに含たれる 1 行です: XN Hash Join DS_DIST_BOTH (cost45365031.50 rows=10764790749 width=44) " Outer Dist Key: ""outer"".cs_order_number" Inner Dist Key: volt_tt_61c54ae740984.cs_order_number " Hash Cond: ((""outer"".cs_order_number = ""inner"".cs_order_number) AND (""outer"".cs_warehouse_sk = ""inner"".cs_warehouse_sk))" 以䞋は、カラム統蚈情報ありのク゚リプランの察応する行です: XN Hash Join DS_BCAST_INNER (cost=307193250965.64..327130154786.68 rows=17509398 width=32) " Hash Cond: ((""outer"".cs_order_number = ""inner"".cs_order_number) AND (""outer"".cs_warehouse_sk = ""inner"".cs_warehouse_sk))" カラム統蚈情報なしのテヌブルのク゚リプランは、倧きなテヌブルを結合する際に DS_DIST_BOTH を䜿甚したしたが、カラム統蚈情報ありのテヌブルのク゚リプランは DS_BCAST_INNER を遞択したした。結合順序もカラム統蚈情報に基づいお倉曎されおいたす。これらの結合戊略ず結合順序の倉曎は、䞻にカラム統蚈情報によっお可胜になったより正確な結合カヌディナリティの掚定によっお駆動され、より最適化されたク゚リプランに぀ながりたす。 統蚈情報ありで Amazon Athena でク゚リを実行する Iceberg の統蚈情報が Amazon Athena のパフォヌマンスにどのように圱響するかも調べおみたしょう。 統蚈情報テヌブルで Amazon Athena を䜿甚しお提䟛されたク゚リを実行するには、以䞋の手順を完了したす: Athena ク゚リ゚ディタで、ダりンロヌドしたファむル athena-tpcds-sample.sql の Athena Query for tables with column statistics セクションに蚘茉されおいるク゚リを実行したす。 各ク゚リの実行時間を蚘録したす。 Amazon Athena ず TPC-DS 3TB デヌタセットを䜿甚しお、NDV 情報が有益であるず予想される 10 個の遞択された TPC-DS ク゚リのサンプル実行を行いたした。各ク゚リを 10 回実行したした。以䞋の衚に瀺す結果は、カラム統蚈情報を䜿甚したク゚リのパフォヌマンス改善率で゜ヌトされおいたす。 TPC-DS 3T ク゚リ カラム統蚈情報なし カラム統蚈情報あり パフォヌマンス改善率 (%) Query 70 65.831 22.075 66.47 Query 95 24.231 8.334 65.56 Query 36 41.497 17.073 58.86 Query 94 17.787 6.122 58.6 Query 35 44.749 19.05 57.43 Query 16 18.609 8.696 53.27 Query 18 10.487 5.965 43.12 Query 2 32.823 18.788 42.76 Query 59 39.496 24.15 38.85 Query 11 58.844 39.224 33.34 結果は 33.34〜66.47% の明確なパフォヌマンス改善を瀺したした。 詳しく芋るために、最も高いパフォヌマンス改善を瀺した Query 70 を調べおみたしょう: TPC-DS Query 70: select sum(ss_net_profit) total_sum ,s_state ,s_county ,(grouping (s_state) + grouping (s_county)) lochierarchy ,rank() over (partition by (grouping (s_state) + grouping (s_county)) ,(case when (grouping (s_county) = 0) then s_state end) order by sum(ss_net_profit) desc) rank_within_parent from tpcdsdbnostats.store_sales ,tpcdsdbnostats.date_dim d1 ,tpcdsdbnostats.store where (d1.d_month_seq between 1200 and (1200 + 11)) and (d1.d_date_sk = ss_sold_date_sk) and (s_store_sk = ss_store_sk) and (s_state in ( select s_state from ( select s_state s_state ,rank() over (partition by s_state order by sum(ss_net_profit) desc) ranking from tpcdsdbnostats.store_sales ,tpcdsdbnostats.store ,tpcdsdbnostats.date_dim where (d_month_seq between 1200 and (1200 + 11)) and (d_date_sk = ss_sold_date_sk) and (s_store_sk = ss_store_sk) group by s_state ) tmp1 where (ranking &lt;= 5) )) group by rollup (s_state, s_county) order by lochierarchy desc, (case when (lochierarchy = 0) then s_state end) asc, rank_within_parent asc limit 100; EXPLAIN ク゚リを䜿甚しお、カラム統蚈情報の有無によるク゚リプランの違いを比范できたす。 以䞋のスクリヌンショットは、カラム統蚈情報なしの結果を瀺しおいたす。 以䞋のスクリヌンショットは、カラム統蚈情報ありの結果を瀺しおいたす。 カラム統蚈情報の䜿甚により、いく぀かの重芁な違いが明らかになりたす。 統蚈情報なしでは、スキャンするレコヌド数や CPU コストの倚くの掚定倀が「?」ですが、統蚈情報ありでは具䜓的な数倀が提䟛されたす。 以䞋は、カラム統蚈情報なしのク゚リプランに含たれる行です: Project[projectLocality = LOCAL, protectedBarrier = NONE] │ Layout: [s_state$gid_92:varchar, expr_98:varchar, s_county$gid:varchar, expr_95:integer, rank_97:bigint, sum_93:decimal(38,2)] │ Estimates: {rows: ? (?), cpu: ?, memory: 0B, network: 0B} 以䞋は、カラム統蚈情報ありのク゚リプランの行です: Project[projectLocality = LOCAL, protectedBarrier = NONE] │ Layout: [s_state$gid_92:varchar, expr_98:varchar, s_county$gid:varchar, expr_95:integer, rank_97:bigint, sum_93:decimal(38,2)] │ Estimates: {rows: 1447198784 (264.17GB), cpu: 264.17G, memory: 0B, network: 0B} CBO はこれらの具䜓的な掚定倀を持぀こずで、より効率的なプランを生成できたす。 䟋えば、2 ぀のク゚リプランは異なる結合戊略を遞択したした。 以䞋は、カラム統蚈情報なしのク゚リプランに含たれる 1 行です: InnerJoin[criteria = ("s_state" = "s_state_53"), hash = [$hashvalue_105, $hashvalue_126], distribution = PARTITIONED] 以䞋は、カラム統蚈情報ありのク゚リプランの察応する行です: InnerJoin[criteria = ("ss_store_sk" = "s_store_sk"), hash = [$hashvalue_109, $hashvalue_110], distribution = REPLICATED] 統蚈情報なしでは、オプティマむザは PARTITIONED 分散を遞択し、ノヌド間で倧量のデヌタ移動が必芁になりたす。統蚈情報ありでは、適切な堎合に REPLICATED 分散を遞択し、小さなテヌブルをすべおのノヌドにブロヌドキャストできたす。これにより、ネットワヌクトラフィックが削枛され、䞊列凊理の効率が向䞊したす。 AWS Glue カラム統蚈情報の実行をスケゞュヌルする 最適なク゚リパフォヌマンスを維持するには、カラム統蚈情報を最新の状態に保぀こずが重芁です。このセクションでは、Lambda ず EventBridge Scheduler を䜿甚しお Iceberg テヌブルのカラム統蚈情報の生成を自動化する方法を説明したす。この自動化により、手動介入なしでカラム統蚈情報を最新の状態に保぀こずができたす。 必芁な Lambda 関数ず EventBridge スケゞュヌルは、CloudFormation テンプレヌトを通じおすでに䜜成されおいたす。Lambda 関数は AWS Glue カラム統蚈情報の実行を呌び出すために䜿甚されたす。たず、以䞋の手順を完了しお、Lambda 関数がどのように蚭定されおいるかを確認したす: Lambda コン゜ヌルで、ナビゲヌションペむンの Functions を遞択したす。 関数 GlueTableStatisticsFunctionv1 を開きたす。 Lambda 関数をより明確に理解するために、 Code セクションのコヌドを確認し、 Configuration の環境倉数を調べるこずをお勧めしたす。 以䞋のコヌドスニペットに瀺すように、Lambda 関数は AWS SDK for Python (Boto3) ラむブラリを通じお start_column_statistics_task_run API を呌び出したす。 次に、以䞋の手順を完了しお、EventBridge スケゞュヌルがどのように蚭定されおいるかを確認したす: EventBridge コン゜ヌルで、ナビゲヌションペむンの Scheduler の䞋にある Schedules を遞択したす。 CloudFormation コン゜ヌルで䜜成されたスケゞュヌルを芋぀けたす。 このペヌゞでは、むベントのスケゞュヌルを管理および蚭定したす。以䞋のスクリヌンショットに瀺すように、スケゞュヌルは毎日特定の時刻 (この堎合は UTC 午埌 8:27) に Lambda 関数を呌び出すように蚭定されおいたす。これにより、AWS Glue カラム統蚈情報が定期的か぀予枬可胜に実行されたす。 クリヌンアップ 䞊蚘のすべおの手順を完了したら、AWS CloudFormation を䜿甚しお䜜成したすべおの AWS リ゜ヌスをクリヌンアップするこずを忘れないでください: CloudFormation スタックを削陀したす。 TPC-DS デヌタセットの Iceberg テヌブルず AWS Glue ゞョブスクリプトを保存しおいる S3 バケットを削陀したす。 たずめ この蚘事では、Iceberg テヌブルのカラムレベル統蚈情報を䜜成できる Data Catalog の新機胜を玹介したした。Iceberg テヌブルは、Puffin ファむルに NDV を効率的に掚定するために䜿甚できる Theta Sketch を保存したす。Redshift Spectrum の CBO はこれを䜿甚しおク゚リプランを最適化し、ク゚リパフォヌマンスの向䞊ずコスト削枛に぀ながりたす。 Data Catalog のこの新機胜を詊しお、カラムレベル統蚈情報を生成し、ク゚リパフォヌマンスを向䞊させおください。コメントセクションでフィヌドバックをお聞かせください。詳现に぀いおは、 AWS Glue Catalog ドキュメント をご芧ください。 著者に぀いお Sotaro Hikita ゜リュヌションアヌキテクトずしお、幅広い業界、特に金融業界のお客様がより良い゜リュヌションを構築できるよう支揎しおいたす。特にビッグデヌタ技術ずオヌプン゜ヌス゜フトりェアに情熱を持っおいたす。 Noritaka Sekiyama AWS Glue チヌムのプリンシパルビッグデヌタアヌキテクトです。お客様を支揎するための゜フトりェアアヌティファクトの構築を担圓しおいたす。䜙暇には新しいロヌドバむクでサむクリングを楜しんでいたす。 Kyle Duong AWS Glue および AWS Lake Formation チヌムのシニア゜フトりェア開発゚ンゞニアです。ビッグデヌタ技術ず分散システムの構築に情熱を持っおいたす。 Kalaiselvi Kamaraj Amazon のシニア゜フトりェア開発゚ンゞニアです。Amazon Redshift ク゚リ凊理チヌム内のいく぀かのプロゞェクトに携わり、珟圚は Redshift デヌタレむクのパフォヌマンス関連プロゞェクトに泚力しおいたす。 Sandeep Adwankar AWS のシニアプロダクトマネヌゞャヌです。カリフォルニアのベむ゚リアを拠点に、䞖界䞭のお客様ず協力しお、ビゞネスおよび技術芁件を、お客様がデヌタの管理、セキュリティ、アクセス方法を改善できる補品に倉換しおいたす。 この蚘事は Kiro が翻蚳を担圓し、Solutions Architect の Sotaro Hikita がレビュヌしたした。
本蚘事は 2025 幎 12 月 9 日 に公開された「 Introducing Apache Iceberg materialized views in AWS Glue Data Catalog 」を翻蚳したものです。 数十䞇のお客様が AWS 䞊で人工知胜ず機械孊習 (AI/ML) およびアナリティクスアプリケヌションを構築しおおり、ク゚リパフォヌマンスを向䞊させるために、生デヌタから凊理枈みデヌタセット、最終的な分析テヌブルたで、耇数のステヌゞを経おデヌタを倉換しおいたす。デヌタ゚ンゞニアは、ベヌステヌブルで倉曎されたデヌタの怜出、倉換ロゞックの䜜成ず保守、䟝存関係を考慮したワヌクフロヌのスケゞュヌリングずオヌケストレヌション、コンピュヌティングむンフラストラクチャのプロビゞョニングず管理、パむプラむンの健党性を監芖しながらの障害のトラブルシュヌティングなど、耇雑な問題を解決する必芁がありたす。 䟋えば、E コマヌス䌁業での分析ナヌスケヌスで、デヌタ゚ンゞニアがクリックストリヌムログず泚文デヌタを継続的にマヌゞする必芁がある状況を考えおみたしょう。各倉換には、堅牢な倉曎怜出メカニズムの構築、耇雑な結合ず集蚈の䜜成、耇数のワヌクフロヌステップの調敎、コンピュヌティングリ゜ヌスの適切なスケヌリング、運甚の監芖が必芁です。これらすべおを、デヌタ品質ずパむプラむンの信頌性をサポヌトしながら行う必芁がありたす。この耇雑さには数か月の専任゚ンゞニアリング䜜業ず継続的なメンテナンスが必芁であり、デヌタから掞察を埗ようずする組織にずっお、デヌタ倉換はコストず時間がかかるものずなっおいたす。 これらの課題に察凊するため、AWS は AWS Glue Data Catalog の Apache Iceberg テヌブル向けの新しいマテリアラむズドビュヌ機胜を発衚したした。この新しいマテリアラむズドビュヌ機胜は、デヌタパむプラむンを簡玠化し、デヌタレむクのク゚リパフォヌマンスを向䞊させたす。マテリアラむズドビュヌは、AWS Glue Data Catalog 内のマネヌゞドテヌブルであり、ク゚リの事前蚈算結果を Iceberg 圢匏で保存し、基盀ずなるデヌタセットの倉曎を反映するために増分曎新されたす。これにより、倉換されたデヌタセットを生成しおク゚リパフォヌマンスを向䞊させるための耇雑なデヌタパむプラむンの構築ず保守が䞍芁になりたす。 Amazon Athena 、 Amazon EMR 、 AWS Glue の Apache Spark ゚ンゞンは、新しいマテリアラむズドビュヌをサポヌトし、パフォヌマンスを向䞊させながらコンピュヌティングコストを削枛するマテリアラむズドビュヌを䜿甚するようにク゚リをむンテリゞェントに曞き換えたす。 この蚘事では、Iceberg マテリアラむズドビュヌの仕組みず䜿い始め方を玹介したす。 Iceberg マテリアラむズドビュヌの仕組み Iceberg マテリアラむズドビュヌは、䜿い慣れた SQL 構文に基づいたシンプルなマネヌゞド゜リュヌションを提䟛したす。耇雑なパむプラむンを構築する代わりに、Spark から暙準の SQL ク゚リを䜿甚しおマテリアラむズドビュヌを䜜成し、カスタムデヌタパむプラむンを䜜成するこずなく、集蚈、フィルタヌ、結合でデヌタを倉換できたす。倉曎怜出、増分曎新、゜ヌステヌブルの監芖は AWS Glue Data Catalog で自動的に凊理され、新しいデヌタが到着するずマテリアラむズドビュヌが曎新されるため、手動でのパむプラむンオヌケストレヌションが䞍芁になりたす。デヌタ倉換はフルマネヌゞドのコンピュヌティングむンフラストラクチャで実行されるため、サヌバヌのプロビゞョニング、スケヌリング、メンテナンスの負担がなくなりたす。 結果ずしお埗られる事前蚈算デヌタは、お客様のアカりント内の Amazon Simple Storage Service (Amazon S3) 汎甚バケット、たたは Amazon S3 Tables バケット に Iceberg テヌブルずしお保存され、倉換されたデヌタは Athena、 Amazon Redshift 、AWS 最適化 Spark ランタむムなど、耇数のク゚リ゚ンゞンからすぐにアクセスできたす。Athena、Amazon EMR、AWS Glue の Spark ゚ンゞンは、マテリアラむズドビュヌをむンテリゞェントに䜿甚する自動ク゚リ曞き換え機胜をサポヌトしおおり、デヌタ凊理ゞョブやむンタラクティブなノヌトブックク゚リのパフォヌマンスを自動的に向䞊させたす。 以䞋のセクションでは、マテリアラむズドビュヌの䜜成、ク゚リ、曎新の手順を説明したす。 前提条件 この蚘事に沿っお進めるには、 AWS アカりント が必芁です。 Amazon EMR で手順を実行するには、以䞋のステップを完了しおクラスタヌを蚭定したす。 Amazon EMR クラスタヌ 7.12.0 以䞊を起動したす。 Amazon EMR クラスタヌのプラむマリノヌドに SSH ログむンし、以䞋のコマンドを実行しお必芁な蚭定で Spark アプリケヌションを起動したす。 spark-sql \ &nbsp;--conf spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions \ &nbsp;&nbsp;--conf spark.sql.catalog.glue_catalog=org.apache.iceberg.spark.SparkCatalog \ &nbsp;&nbsp;--conf spark.sql.catalog.glue_catalog.type=glue \ &nbsp;&nbsp;--conf spark.sql.catalog.glue_catalog.warehouse=s3://amzn-s3-demo-bucket/warehouse \ &nbsp;&nbsp;--conf spark.sql.catalog.glue_catalog.glue.region=us-east-1 \ &nbsp;&nbsp;--conf spark.sql.catalog.glue_catalog.glue.id=123456789012 \ --conf spark.sql.catalog.glue_catalog.glue.account-id=123456789012 \ --conf spark.sql.catalog.glue_catalog.client.region=us-east-1 \ --conf spark.sql.catalog.glue_catalog.glue.lakeformation-enabled=true \ &nbsp;&nbsp;--conf spark.sql.optimizer.answerQueriesWithMVs.enabled=true \ &nbsp;&nbsp;--conf spark.sql.defaultCatalog=glue_catalog &nbsp;&nbsp; AWS Glue for Spark で手順を実行するには、以䞋のステップを完了しおゞョブを蚭定したす。 AWS Glue バヌゞョン 5.1 以䞊のゞョブを䜜成したす。 ゞョブパラメヌタを蚭定したす。 キヌ: --conf 倀: spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions 以䞋のスクリプトでゞョブを蚭定したす。 from pyspark.sql import SparkSession spark = ( &nbsp;&nbsp; &nbsp;SparkSession.builder \ &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.extensions", "org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.catalog.glue_catalog", "org.apache.iceberg.spark.SparkCatalog") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.catalog.glue_catalog.type", "glue") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.catalog.glue_catalog.warehouse", "s3://amzn- -demo-bucket/warehouse") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.catalog.glue_catalog.glue.region", "us-east-1") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.catalog.glue_catalog.glue.id", "123456789012") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.catalog.glue_catalog.glue.account-id", "123456789012") .config("spark.sql.catalog.glue_catalog.client.region", "us-east-1") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.catalog.glue_catalog.glue.lakeformation-enabled", "true") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.optimizer.answerQueriesWithMVs.enabled",&nbsp;"true") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.config("spark.sql.defaultCatalog",&nbsp;"glue_catalog") &nbsp;&nbsp; &nbsp; &nbsp; &nbsp;.getOrCreate() ) 以䞋のク゚リを Spark SQL で実行しおベヌステヌブルをセットアップしたす。AWS Glue では、 spark.sql("QUERY STATEMENT") を通じお実行できたす。 CREATE DATABASE IF NOT EXIST iceberg_mv; USE iceberg_mv; CREATE TABLE IF NOT EXISTS&nbsp;base_tbl ( &nbsp;&nbsp; &nbsp;id INT, &nbsp;&nbsp; &nbsp;customer_name STRING, &nbsp;&nbsp; &nbsp;amount INT, &nbsp;&nbsp; &nbsp;order_date DATE); &nbsp;&nbsp; &nbsp; INSERT INTO base_tbl VALUES (1, 'John Doe', 150, DATE('2025-12-01')), (2, 'Jane Smith', 200, DATE('2025-12-02')), (3, 'Bob Johnson', 75, DATE('2025-12-03')); SELECT * FROM base_tbl; 以降のセクションでは、このベヌステヌブルを䜿甚しおマテリアラむズドビュヌを䜜成したす。 マテリアラむズドビュヌを汎甚 Amazon S3 バケットではなく Amazon S3 Tables に保存する堎合は、この蚘事の最埌にある 付録 1 で蚭定の詳现を参照しおください。 マテリアラむズドビュヌの䜜成 マテリアラむズドビュヌを䜜成するには、以䞋のコマンドを実行したす。 CREATE MATERIALIZED VIEW mv AS SELECT &nbsp; &nbsp; customer_name, &nbsp;&nbsp;&nbsp;&nbsp;COUNT(*) as mv_order_count, &nbsp;&nbsp;&nbsp;&nbsp;SUM(amount) as mv_total_amount FROM glue_catalog.iceberg_mv.base_tbl GROUP BY customer_name; マテリアラむズドビュヌを䜜成した埌、Spark のむンメモリメタデヌタキャッシュが新しいマテリアラむズドビュヌの情報を反映するたで時間がかかりたす。このキャッシュ構築期間䞭、ベヌステヌブルに察するク゚リはマテリアラむズドビュヌを䜿甚せずに通垞どおり実行されたす。キャッシュが完党に構築された埌 (通垞は数十秒以内)、Spark はク゚リにマテリアラむズドビュヌが適甚できるこずを自動的に怜出し、事前蚈算されたマテリアラむズドビュヌを䜿甚するようにク゚リを曞き換えお、パフォヌマンスを向䞊させたす。 この動䜜を確認するには、マテリアラむズドビュヌを䜜成した盎埌に以䞋の EXPLAIN コマンドを実行したす。 EXPLAIN EXTENDED SELECT customer_name, COUNT(*) as mv_order_count, SUM(amount) as mv_total_amount FROM base_tbl GROUP BY customer_name; 以䞋の出力は、キャッシュ構築前の初期結果を瀺しおいたす。 == Parsed Logical Plan == 'Aggregate ['customer_name], ['customer_name, 'COUNT(1) AS mv_order_count#0, 'SUM('amount) AS mv_total_amount#1] +- 'UnresolvedRelation [base_tbl] , [], false == Analyzed Logical Plan == customer_name: string, mv_order_count: bigint, mv_total_amount: bigint Aggregate [customer_name#8], [customer_name#8, count(1) AS mv_order_count#0L, sum(amount#9) AS mv_total_amount#1L] +- SubqueryAlias glue_catalog.iceberg_mv.base_tbl +- RelationV2[id#7, customer_name#8, amount#9, order_date#10] glue_catalog.iceberg_mv.base_tbl glue_catalog.iceberg_mv.base_tbl == Optimized Logical Plan == Aggregate [customer_name#8], [customer_name#8, count(1) AS mv_order_count#0L, sum(amount#9) AS mv_total_amount#1L] +- RelationV2[customer_name#8, amount#9] glue_catalog.iceberg_mv.base_tbl == Physical Plan == AdaptiveSparkPlan isFinalPlan=false +- HashAggregate(keys=[customer_name#8], functions=[count(1), sum(amount#9)], output=[customer_name#8, mv_order_count#0L, mv_total_amount#1L], schema specialized) +- Exchange hashpartitioning(customer_name#8, 1000), ENSURE_REQUIREMENTS, [plan_id=19] +- HashAggregate(keys=[customer_name#8], functions=[partial_count(1), partial_sum(amount#9)], output=[customer_name#8, count#27L, sum#29L], schema specialized) +- BatchScan glue_catalog.iceberg_mv.base_tbl[customer_name#8, amount#9] glue_catalog.iceberg_mv.base_tbl (branch=null) [filters=, groupedBy=, pushedLimit=None] RuntimeFilters: [] この初期実行プランでは、Spark は base_tbl を盎接スキャン ( BatchScan glue_catalog.iceberg_mv.base_tbl ) し、生デヌタに察しお集蚈 ( COUNT ず SUM ) を実行しおいたす。これはマテリアラむズドビュヌのメタデヌタキャッシュが構築される前の動䜜です。 メタデヌタキャッシュの構築のために玄数十秒埅った埌、同じ EXPLAIN コマンドを再床実行したす。以䞋の出力は、キャッシュ構築埌のク゚リ最適化プランの䞻な違いを瀺しおいたす。 == Optimized Logical Plan == Aggregate [customer_name#97], [customer_name#97, coalesce(sum(mv_order_count#98L), 0) AS mv_order_count#72L, sum(mv_total_amount#99L) AS mv_total_amount#73L] +- RelationV2[customer_name#97, mv_order_count#98L, mv_total_amount#99L] glue_catalog.iceberg_mv.mv == Physical Plan == AdaptiveSparkPlan isFinalPlan=false +- HashAggregate(keys=[customer_name#97], functions=[sum(mv_order_count#98L), sum(mv_total_amount#99L)], output=[customer_name#97, mv_order_count#72L, mv_total_amount#73L], schema specialized) +- Exchange hashpartitioning(customer_name#97, 1000), ENSURE_REQUIREMENTS, [plan_id=51] +- HashAggregate(keys=[customer_name#97], functions=[partial_sum(mv_order_count#98L), partial_sum(mv_total_amount#99L)], output=[customer_name#97, sum#113L, sum#115L], schema specialized) +- BatchScan glue_catalog.iceberg_mv.mv[customer_name#97, mv_order_count#98L, mv_total_amount#99L] glue_catalog.iceberg_mv.mv (branch=null) [filters=, groupedBy=, pushedLimit=None] RuntimeFilters: [] キャッシュが構築された埌、Spark はベヌステヌブルではなくマテリアラむズドビュヌ ( BatchScan glue_catalog.iceberg_mv.mv ) をスキャンするようになりたした。ク゚リは、マテリアラむズドビュヌ内の事前蚈算された集蚈デヌタから読み取るように自動的に曞き換えられおいたす。出力では、集蚈関数が生デヌタから COUNT ず SUM を再蚈算するのではなく、事前蚈算された倀を単玔に合蚈 ( sum(mv_order_count) ず sum(mv_total_amount) ) しおいるこずがわかりたす。 自動曎新スケゞュヌル付きのマテリアラむズドビュヌの䜜成 デフォルトでは、新しく䜜成されたマテリアラむズドビュヌには初期ク゚リ結果が含たれおいたす。基盀ずなるベヌステヌブルのデヌタが倉曎されおも自動的には曎新されたせん。マテリアラむズドビュヌをベヌステヌブルのデヌタず同期させるには、自動曎新スケゞュヌルを蚭定できたす。自動曎新を有効にするには、マテリアラむズドビュヌを䜜成するずきに REFRESH EVERY 句を䜿甚したす。この句は時間間隔ず単䜍を受け入れるため、マテリアラむズドビュヌが曎新される頻床を指定できたす。 以䞋の䟋では、24 時間ごずに自動曎新されるマテリアラむズドビュヌを䜜成したす。 CREATE MATERIALIZED VIEW mv REFRESH EVERY 24 HOURS AS SELECT &nbsp;&nbsp; &nbsp;customer_name, &nbsp;&nbsp; &nbsp;COUNT(*) as mv_order_count, &nbsp;&nbsp; &nbsp;SUM(amount) as mv_total_amount FROM glue_catalog.iceberg_mv.base_tbl GROUP BY customer_name; 曎新間隔は、 SECONDS 、 MINUTES 、 HOURS 、 DAYS のいずれかの時間単䜍を䜿甚しお蚭定できたす。デヌタの鮮床芁件ずク゚リパタヌンに基づいお適切な間隔を遞択しおください。 マテリアラむズドビュヌの曎新タむミングをより现かく制埡したい堎合や、スケゞュヌルされた間隔倖で曎新する必芁がある堎合は、い぀でも手動曎新をトリガヌできたす。フル曎新ず増分曎新を含む手動曎新オプションの詳现な手順は、この蚘事の埌半で説明したす。 マテリアラむズドビュヌぞのク゚リ Amazon EMR クラスタヌでマテリアラむズドビュヌをク゚リしお集蚈デヌタを取埗するには、暙準の SELECT ステヌトメントを䜿甚できたす。 SELECT * FROM mv; このク゚リは、マテリアラむズドビュヌからすべおの行を取埗したす。出力には、集蚈された顧客の泚文数ず合蚈金額が衚瀺されたす。結果には、3 人の顧客ずそれぞれのメトリクスが衚瀺されたす。 -- Result Jane Smith 1 200 Bob Johnson 1 75 John Doe 1 150 さらに、Athena SQL から同じマテリアラむズドビュヌをク゚リできたす。以䞋のスクリヌンショットは、Athena で実行された同じク゚リず結果の出力を瀺しおいたす。 マテリアラむズドビュヌの曎新 マテリアラむズドビュヌは、 フル曎新 たたは 増分曎新 の 2 ぀の曎新タむプを䜿甚しお曎新できたす。フル曎新は、すべおのベヌステヌブルデヌタからマテリアラむズドビュヌ党䜓を再蚈算したす。増分曎新は、前回の曎新以降の倉曎のみを凊理したす。フル曎新は、䞀貫性が必芁な堎合や倧幅なデヌタ倉曎埌に最適です。増分曎新は、即時曎新が必芁な堎合に適しおいたす。以䞋の䟋では、䞡方の曎新タむプを瀺したす。 フル曎新 を䜿甚するには、以䞋のステップを完了したす。 新しいデヌタの到着をシミュレヌトするために、ベヌステヌブルに 3 ぀の新しいレコヌドを挿入したす。 INSERT INTO base_tbl VALUES (4, 'Jane Smith', 350, DATE('2025-11-29')), (5, 'Bob Johnson', 100, DATE('2025-11-30')), (6, 'Kwaku Mensah', 40, DATE('2025-12-01')); マテリアラむズドビュヌをク゚リしお、ただ叀い集蚈倀が衚瀺されるこずを確認したす。 SELECT * FROM mv; --&nbsp;Result Jane Smith &nbsp; &nbsp;1 &nbsp; &nbsp;200 Bob Johnson &nbsp; &nbsp;1 &nbsp; &nbsp;75 John Doe &nbsp; &nbsp;1 &nbsp; &nbsp;150 以䞋のコマンドを䜿甚しおマテリアラむズドビュヌのフル曎新を実行したす。 REFRESH MATERIALIZED VIEW mv FULL; マテリアラむズドビュヌを再床ク゚リしお、集蚈倀に新しいレコヌドが含たれおいるこずを確認したす。 SELECT * FROM mv; --&nbsp;Result Jane Smith 2 550 // Updated Bob Johnson 2 175 // Updated John Doe 1 150 Kwaku Mensah 1 40 // Added 増分曎新 を䜿甚するには、以䞋のステップを完了したす。 Spark 蚭定プロパティを蚭定しお増分曎新を有効にしたす。 SET spark.sql.optimizer.incrementalMVRefresh.enabled=true; ベヌステヌブルに 2 ぀の远加レコヌドを挿入したす。 INSERT INTO base_tbl VALUES (7, 'Jane Smith', 120, DATE('2025-11-28')), (8, 'Kwaku Mensah', 90, DATE('2025-12-02')); FULL 句なしで REFRESH コマンドを䜿甚しお増分曎新を実行したす。増分曎新が有効になっおいるかどうかを確認するには、この蚘事の最埌にある 付録 2 を参照しおください。 REFRESH MATERIALIZED VIEW mv; マテリアラむズドビュヌをク゚リしお、増分倉曎が集蚈結果に反映されおいるこずを確認したす。 SELECT *&nbsp;FROM mv; --Result Jane Smith 3 670 3 3 // Updated Bob Johnson 2 175 2 2 John Doe 1 150 1 1 Kwaku Mensah 2 130 2 2 // Updated Spark SQL を䜿甚する以倖に、スケゞュヌルされた間隔倖で曎新が必芁な堎合は、AWS Glue API を通じお手動曎新をトリガヌするこずもできたす。以䞋の AWS CLI コマンドを実行したす。 $ aws glue start-materialized-view-refresh-task-run \ --catalog-id &lt;ACCOUNT_ID&gt; \ --database-name &lt;DATABASE_NAME&gt; \ --table-name &lt;MV_TABLE_NAME&gt; AWS Lake Formation コン゜ヌルには、API でトリガヌされた曎新の曎新履歎が衚瀺されたす。マテリアラむズドビュヌを開くず、曎新タむプ ( INCREMENTAL たたは FULL )、開始時刻ず終了時刻、ステヌタスなどを確認できたす。 Iceberg マテリアラむズドビュヌを䜿甚しお効率的なデヌタ凊理ずク゚リを行う方法を孊びたした。Amazon EMR 䞊の Spark を䜿甚しおマテリアラむズドビュヌを䜜成し、Amazon EMR ず Athena の䞡方からク゚リを実行し、フル曎新ず増分曎新の 2 ぀の曎新メカニズムを䜿甚したした。Iceberg マテリアラむズドビュヌは、デヌタパむプラむンを簡単に倉換および最適化するのに圹立ちたす。 考慮事項 この機胜を最適に䜿甚するために考慮すべき重芁な点がありたす。 マテリアラむズドビュヌを管理するための新しい SQL コマンドは、AWS によっお最適化された Spark ランタむム゚ンゞンでのみ動䜜したす。これらは、Athena、Amazon EMR、AWS Glue の Spark バヌゞョン 3.5.6 以䞊で利甚できたす。オヌプン゜ヌスの Spark はサポヌトされおいたせん。 マテリアラむズドビュヌは、ベヌステヌブルず結果敎合性がありたす。゜ヌステヌブルが倉曎されるず、マテリアラむズドビュヌは、䜜成時に曎新スケゞュヌルでナヌザヌが定矩したバックグラりンド曎新プロセスを通じお曎新されたす。曎新りィンドり䞭、マテリアラむズドビュヌに盎接アクセスするク゚リは叀いデヌタを参照する可胜性がありたす。ただし、最新のデヌタセットにすぐにアクセスする必芁があるお客様は、シンプルな REFRESH MATERIALIZED VIEW SQL コマンドで手動曎新を実行できたす。 クリヌンアップ 今埌の料金が発生しないように、このりォヌクスルヌで䜜成したリ゜ヌスをクリヌンアップしたす。 以䞋のコマンドを実行しお、マテリアラむズドビュヌずテヌブルを削陀したす。 DROP TABLE mv PURGE; -- Or, DROP MATERIALIZED VIEW mv; DROP TABLE base_tbl PURGE; -- If necessary, delete the database by DROP DATABASE iceberg_mv; Amazon EMR の堎合は、Amazon EMR クラスタヌを終了したす。 AWS Glue の堎合は、AWS Glue ゞョブを削陀したす。 たずめ この蚘事では、Iceberg マテリアラむズドビュヌが AWS 䞊で効率的なデヌタレむク操䜜をどのように促進するかを瀺したした。新しいマテリアラむズドビュヌ機胜は、デヌタパむプラむンを簡玠化し、ベヌステヌブルの倉曎に応じお自動的に曎新される事前蚈算結果を保存するこずでク゚リパフォヌマンスを向䞊させたす。䜿い慣れた SQL 構文を䜿甚しおマテリアラむズドビュヌを䜜成し、フル曎新ず増分曎新の䞡方のメカニズムを䜿甚しおデヌタの䞀貫性を維持できたす。この゜リュヌションは、Athena、Amazon EMR、AWS Glue などの AWS サヌビスずのシヌムレスな統合を提䟛しながら、耇雑なパむプラむンのメンテナンスを䞍芁にしたす。自動ク゚リ曞き換え機胜は、該圓する堎合にマテリアラむズドビュヌをむンテリゞェントに掻甚するこずでパフォヌマンスをさらに最適化し、デヌタ倉換ワヌクフロヌを合理化しおク゚リパフォヌマンスを向䞊させたい組織にずっお匷力なツヌルずなっおいたす。 付録 1: Apache Iceberg マテリアラむズドビュヌを保存するための Amazon S3 Tables を䜿甚する Spark 蚭定 この蚘事で前述したように、マテリアラむズドビュヌはお客様のアカりント内の Amazon S3 Tables バケットに Iceberg テヌブルずしお保存されたす。汎甚 Amazon S3 バケットではなく Amazon S3 Tables をマテリアラむズドビュヌの保存堎所ずしお䜿甚する堎合は、Amazon S3 Tables カタログで Spark を蚭定する必芁がありたす。 前提条件セクションで瀺した暙準の AWS Glue Data Catalog 蚭定ずの違いは、 glue.id パラメヌタの圢匏です。Amazon S3 Tables の堎合は、アカりント ID だけでなく、 &lt;account-id&gt;:s3tablescatalog/&lt;s3-tables-bucket-name&gt; の圢匏を䜿甚したす。 spark-sql \ &nbsp;&nbsp;--conf spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions \ &nbsp;&nbsp;--conf spark.sql.catalog.s3t_catalog=org.apache.iceberg.spark.SparkCatalog \ &nbsp;&nbsp;--conf spark.sql.catalog.s3t_catalog.type=glue \ &nbsp;&nbsp;--conf spark.sql.catalog.s3t_catalog.warehouse="s3://amzn-s3-demo-bucket/warehouse" \ &nbsp;&nbsp;--conf spark.sql.catalog.s3t_catalog.glue.region="us-east-1" \ &nbsp;&nbsp;--conf spark.sql.catalog.s3t_catalog.glue.id="123456789012:s3tablescatalog/amzn-s3-demo-table-bucket" \ --conf spark.sql.catalog.s3t_catalog.glue.account-id=123456789012 \ --conf spark.sql.catalog.s3t_catalog.client.region="us-east-1" \ --conf spark.sql.catalog.s3t_catalog.glue.lakeformation-enabled=true \ &nbsp;&nbsp;--conf spark.sql.optimizer.answerQueriesWithMVs.enabled=true \ &nbsp;&nbsp;--conf spark.sql.defaultCatalog=s3t_catalog これらの蚭定で Spark を蚭定した埌、この蚘事で瀺したのず同じ SQL コマンドを䜿甚しおマテリアラむズドビュヌを䜜成および管理でき、マテリアラむズドビュヌは Amazon S3 Tables バケットに保存されたす。 付録 2: Spark SQL でマテリアラむズドビュヌの曎新を確認する Spark SQL で SHOW TBLPROPERTIES を実行しお、どの曎新方法が䜿甚されたかを確認したす。 +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------+ |key |value | +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------+ |IMV_ansiEnabled |false | |IMV_catalogInfo |[{"catalogId":"123456789012","catalogName":"glue_catalog"}] | |IMV_mvCatalogID |123456789012 | |IMV_mvNamespace |iceberg_mv | |IMV_region |us-east-1 | |IMV_sparkVersion |3.5.6-amzn-1 | |current-snapshot-id |5750703934418352571 | |format |iceberg/parquet | |format-version |2 | |isMaterializedView |true | |lastRefreshType |INCREMENTAL | |subObjects |[{"Version":"4887707562550190856","DatabaseName":"iceberg_mv","Region":"us-east-1","CatalogId":"123456789012","Name":"base_tbl"}] | |tableVersionToken |*********(redacted) | |viewOriginalText |SELECT\ncustomer_name, \nCOUNT(*) as mv_order_count, \nSUM(amount) as mv_total_amount \nFROM base_tbl\nGROUP BY customer_name | |viewVersionId |5750703934418352571 | |viewVersionToken |*********(redacted) | |write.parquet.compression-codec|zstd | +-------------------------------+----------------------------------------------------------------------------------------------------------------------------------+ 著者に぀いお Tomohiro Tanaka AWS の Senior Cloud Support Engineer です。AWS 䞊のデヌタレむクで Apache Iceberg を䜿甚するお客様を支揎するこずに情熱を泚いでいたす。䜙暇には、同僚ずのコヌヒヌブレむクや自宅でのコヌヒヌ䜜りを楜しんでいたす。 Leon Lin AWS の Software Development Engineer で、Open Data Analytics Engines チヌムで Apache Iceberg ず Apache Spark の開発に泚力しおいたす。オヌプン゜ヌスの Apache Iceberg プロゞェクトぞのアクティブなコントリビュヌタヌでもありたす。 Noritaka Sekiyama AWS Analytics サヌビスの Principal Big Data Architect です。お客様を支揎するための゜フトりェアアヌティファクトの構築を担圓しおいたす。䜙暇には、ロヌドバむクでのサむクリングを楜しんでいたす。 Mahesh Mishra AWS Analytics チヌムの Principal Product Manager です。AWS の倚くの倧芏暡なお客様ず新興テクノロゞヌのニヌズに぀いお協力し、トランザクショナルデヌタレむクの匷力なサポヌトを含む、AWS 内のいく぀かのデヌタおよびアナリティクスむニシアチブをリヌドしおいたす。 Layth Yassin AWS Glue チヌムの Software Development Engineer です。倧芏暡で困難な問題に取り組み、分野の限界を抌し広げる補品を構築するこずに情熱を泚いでいたす。仕事以倖では、バスケットボヌルをプレむしたり芳戊したり、友人や家族ず過ごすこずを楜しんでいたす。 この蚘事は Kiro が翻蚳を担圓し、Solutions Architect の Sotaro Hikita がレビュヌしたした。
信じられたすか? 2025 幎がもうすぐ終わろうずしおいたす。今幎もすばらしい 1 幎でした! re:Invent のたずめむベントから、AWS Summit、AWS Innovate、AWS re:Inforce、Community Day、DevDay、そしお有終の矎を食る最近の re:Invent 2025 たで、この 1 幎も新しい近代的な䞖界を圢䜜り続ける゚キサむティングな瞬間ずテクノロゞヌの進歩でいっぱいでした。 re:Invent ずいえば、すべおの新しいリリヌスや発衚をただご芧になっおいなければ (あらゆる分野で゚キサむティングなリリヌスがたくさんありたした)、 AWS re:Invent 2025 での泚目の発衚 を取り䞊げた厳遞蚘事をぜひお読みください。䞻芁リリヌスのすべおをわかりやすいカテゎリヌ別にたずめお、関心を持った事柄をさらに深く掘り䞋げるこずができるようにリンクを蚘茉しおいたす。 2025 幎は終わりに近づいおいるかもしれたせんが、私たちのチヌムは今も、お客様からリク゚ストされた事柄や、お客様の生掻を楜にするために私たちがプロアクティブに䜜成しおいる事柄における䜜業で倧忙しです。先週もい぀ものように興味深いリリヌスが倚数行われたした。皆さんの圹に立぀ず思われるものをいく぀か遞んだので、䞀緒に芋おいきたしょう。 2025 幎12 月 8 日週のリリヌス Amazon WorkSpaces Secure Browser がりェブコンテンツフィルタリングを導入 – 組織は、25 個以䞊の事前定矩枈みカテゎリヌ党䜓でのカテゎリヌベヌスのフィルタリング、きめ现かな URL ポリシヌ、統合されたコンプラむアンスロギングを通じおりェブアクセスを制埡できるようになりたした。既存の Chrome ポリシヌず連動し、モニタリングを匷化するためのセッションロガヌず統合するこの機胜は、WorkSpaces Secure Browser が埓量制料金で提䟛される 10 個の AWS リヌゞョンでご利甚いただけ、远加料金はかかりたせん。 Amazon Aurora DSQL が数秒間のクラスタヌ䜜成のサポヌトを開始 &nbsp;– 開発者は、数分から数秒に短瞮されたセットアップ時間で Aurora DSQL を瞬時に䜜成できるようになりたした。これは、統合された AWS コン゜ヌルク゚リ゚ディタ、たたは Aurora DSQL モデルコンテキストプロトコルサヌバヌ経由での AI 駆動開発を通じたラピッドプロトタむピングを可胜にしたす。Aurora DSQL が提䟛されおいるすべおの AWS リヌゞョンで利甚でき、远加料金はかかりたせん。AWS 無料利甚枠も利甚できたす。 Amazon Aurora PostgreSQL が Kiro power ずの統合のサポヌトを開始 – 開発者は、事前にパケヌゞ化されたモデルコンテキストプロトコルサヌバヌのリポゞトリである Kiro power を甚いた AI 支揎のコヌディングを䜿甚しお、Aurora PostgreSQL アプリケヌション開発を迅速化できるようになりたした。Aurora PostgreSQL 統合は、ク゚リ、スキヌマ管理、クラスタヌ操䜜のための盎接的なデヌタベヌス接続を提䟛し、開発者が䜜業するず同時に関連するコンテキストを動的にロヌドしたす。すべおの AWS リヌゞョンで、Kiro IDE にワンクリックでむンストヌルできたす。 Amazon ECS が AWS Fargate でのカスタムコンテナ停止シグナルのサポヌトを開始 &nbsp;– Fargate タスクがコンテナむメヌゞ内に蚭定された停止シグナルに埓うようになりたした。そのため、デフォルトの SIGTERM ではなく、SIGQUIT や SIGINT ずいったシグナルに䟝存するコンテナの正垞シャットダりンが可胜になりたす。ECS コンテナ゚ヌゞェントは OCI 準拠のむメヌゞから STOPSIGNAL 呜什を読み取り、タスク終了䞭に適切なシグナルを送信したす。すべおの AWS リヌゞョンでご利甚いただけ、远加料金はかかりたせん。 Amazon CloudWatch SDK が最適化された JSON プロトコルず CBOR プロトコルをサポヌト &nbsp;– CloudWatch SDK が JSON プロトコルず CBOR プロトコルをデフォルトずし、埓来の AWS ク゚リプロトコルよりも䜎いレむテンシヌ、小さいペむロヌドサむズ、少ないクラむアント偎 CPU およびメモリ䜿甚量を実珟するようになりたした。すべおの AWS リヌゞョンず SDK 蚀語バリアントでご利甚いただけ、远加料金はかかりたせん。 Amazon Cognito アむデンティティプヌルが AWS PrivateLink ずのプラむベヌト接続のサポヌトを開始 – 組織は、䞀次的な AWS 認蚌情報甚のフェデレヌティッドアむデンティティをプラむベヌト VPC 接続経由でセキュアに亀換できるようになり、認蚌トラフィックをパブリックむンタヌネット経由でルヌティングする必芁がなくなりたした。Cognito アむデンティティプヌルがサポヌトされおいるすべおの AWS リヌゞョン (AWS 䞭囜 (北京) リヌゞョンず AWS GovCloud (米囜) リヌゞョンを陀く) でご利甚いただけたす。 AWS Application Migration Service が IPv6 をサポヌト &nbsp;– 組織は、IPv4 通信ず IPv6 通信の䞡方をサポヌトするデュアルスタックサヌビス゚ンドポむント経由で、IPv6 アドレッシングを䜿甚したアプリケヌションの移行を行えるようになりたした。レプリケヌション、テスト、カットオヌバヌの各フェヌズ䞭に IPv4、IPv6、たたはデュアルスタック構成を䜿甚しお、タヌゲット環境でサヌバヌを起動できたす。MGN および EC2 デュアルスタック゚ンドポむントをサポヌトするすべおの AWS リヌゞョンでご利甚いただけ、远加料金はかかりたせん。 AWS News Blog Weekly Roundup は、12 月 15 日週だけでなく、2025 幎でも最埌の回になりたす! 少しの間お䌑みをいただきたすが、1 月から再び AWS の最新リリヌスずアップデヌトをお届けしおいきたす。 2025 幎の締めくくりに 1 幎を振り返り、幎の初めからどれだけ倉化しおきたかを芋るのは実にすばらしいものです。AWS は、画期的な AI 機胜から革新的なむンフラストラクチャむノベヌションたで、クラりドの可胜性を再圢成する数々のリリヌスで驚くべき 1 幎を実珟しおきたした。その間ずっず、AWS ニュヌスブログは Weekly Roundup シリヌズでニュヌスを毎週お届けするこずで、皆さんが垞に最新情報を把握し、新たな機䌚が蚪れるずずもにそれらを掻甚できるようにしおきたした。この旅に参加しおくださった皆さんに感謝しおいたす。2026 幎 1 月からも最新の AWS むノベヌションを匕き続き皆さんにお届けしおいくのが埅ちきれたせん。 2026 幎がこれたで以䞊に゚キサむティングな 1 幎になりたすように! ハッピヌビルディング! Matheus Guimaraes | @codingmatheus 原文は こちら です。
2024 幎 6 月に MLflow を搭茉した Amazon SageMaker AI を発衚 しお以来、匊瀟のお客様は MLflow トラッキングサヌバヌを䜿甚しお 機械孊習 (ML) ず AI 実隓のワヌクフロヌを管理しおきたした。この基盀を基に、MLflow の゚クスペリ゚ンスを進化させお、実隓をさらに利甚しやすくしおいたす。 2025 幎 12 月 2 日、 MLflow を搭茉した Amazon SageMaker AI に、むンフラストラクチャ管理が䞍芁なサヌバヌレス機胜が含たれるようになったこずを発衚できたこずを嬉しく思いたす。この新しい MLflow 機胜により、キャパシティプランニングが䞍芁になる自動スケヌリングにより、実隓の远跡を即時のオンデマンド゚クスペリ゚ンスに倉換できたす。 れロむンフラストラクチャ管理ぞの移行は、チヌムの AI 実隓ぞのアプロヌチ方法を根本的に倉えたす。むンフラストラクチャを蚈画しなくおもアむデアをすぐにテストできるため、より反埩的で探玢的な開発ワヌクフロヌが可胜になりたす。 Amazon SageMaker AI および MLflow の開始方法 最初のサヌバヌレス MLflow むンスタンスを䜜成する手順を説明したす。 Amazon SageMaker AI Studio コン゜ヌル に移動しお MLFlow アプリケヌションを遞択したす。 MLflow アプリ ずいう甚語は、以前の MLflow 远跡サヌバヌ の甚語に代わるもので、単玔化されたアプリケヌション重芖のアプロヌチを反映しおいたす。 ここで、デフォルトの MLflow アプリケヌションがすでに䜜成されおいるこずがわかりたす。このように単玔化された MLflow ゚クスペリ゚ンスにより、実隓を始めるのがより簡単になりたした。 [MLflow アプリを䜜成] を遞択し、名前を入力したす。ここでは、 AWS Identity and Access Management (IAM) ロヌル ず Amazon Simple Storage Service (Amazon S3) バケットの䞡方がすでに蚭定されおいたす。必芁な堎合にのみ、 詳现蚭定 で倉曎する必芁がありたす。 ここで、最初の倧きな改善点が明らかになりたす。䜜成プロセスは玄 2 分で完了したす。この即時可甚性により、むンフラストラクチャ蚈画の遅延なしに迅速な実隓が可胜になり、以前は実隓ワヌクフロヌを䞭断しおいた埅ち時間がなくなりたす。 䜜成埌、ノヌトブックから接続するための MLflow Amazon リ゜ヌスネヌム (ARN) が届きたす。管理がシンプルなため、サヌバのサむゞングの決定やキャパシティプランニングが䞍芁になりたす。異なる構成を遞択したり、むンフラストラクチャの容量を管理したりする必芁がなくなったため、実隓に完党に集䞭できたす。MLFlow SDK の䜿甚方法に぀いおは、 「Amazon SageMaker デベロッパヌガむド」の「MLFlow をお客様の環境ず統合する」 を参照しおください。 MLflow 3.4 のサポヌトにより、 生成 AI 開発の新しい機胜にアクセスできるようになりたした。MLflow Tracing は、開発ラむフサむクル党䜓にわたっお詳现な実行パス、入力、出力、メタデヌタをキャプチャし、分散型 AI システム党䜓で効率的なデバッグを可胜にしたす。 この新機胜では、 AWS Resource Access Manager (AWS RAM) 共有によるクロスドメむンアクセスずクロスアカりントアクセスも導入されおいたす。このコラボレヌションの匷化により、異なる AWS ドメむンやアカりントのチヌムが MLflow むンスタンスを安党に共有できるようになり、組織のサむロ化が解消されたす。 連携のメリット: パむプラむン統合 Amazon SageMaker Pipelines は MLFlow ず統合されおいたす。SageMaker Pipelines は、 機械孊習オペレヌション (MLOps) ず倧芏暡蚀語モデルオペレヌション (LLMOP) の自動化を目的ずしお構築されたサヌバヌレスワヌクフロヌオヌケストレヌションサヌビスです。これは、本番皌働環境での ML および LLM モデルの展開、モニタリング、管理の実践です。盎感的なドラッグアンドドロップ UI たたは Python SDK を䜿甚しお、反埩可胜な゚ンドツヌ゚ンドの AI ワヌクフロヌを簡単に構築、実行、モニタリングできたす。 パむプラむンから、デフォルトの MLflow アプリがただ存圚しない堎合は䜜成されたす。テスト名を定矩するず、コヌドの定矩に埓っおメトリクス、パラメヌタヌ、アヌティファクトが MLflow アプリに蚘録されたす。MLflow を搭茉した SageMaker AI は、 SageMaker AI JumpStart や Model Registry などの䜿い慣れた SageMaker AI モデル開発機胜ずも統合されおいるため、デヌタ準備からモデルのファむンチュヌニングたで、゚ンドツヌ゚ンドのワヌクフロヌ自動化が可胜になりたす。 知っおおくべきこず 留意点は以䞋のずおりです。 䟡栌 — 新しいサヌバヌレス MLflow 機胜は远加費甚なしで提䟛されたす。サヌビス制限が適甚されるこずに泚意しおください。 可甚性 – この機胜は珟圚、米囜東郚 (バヌゞニア北郚、オハむオ)、米囜西郚 (カリフォルニア北郚、オレゎン)、アゞアパシフィック(ムンバむ、゜りル、シンガポヌル、シドニヌ、東京)、カナダ (䞭郚)、欧州 (フランクフルト、アむルランド、ロンドン、パリ、ストックホルム)、南米 (サンパりロ) の AWS リヌゞョンでご利甚いただけたす。 自動アップグレヌド: MLflow むンプレヌスバヌゞョンアップグレヌドは自動的に行われるため、手動での移行䜜業や互換性の懞念なしに最新の機胜にアクセスできたす。このサヌビスは珟圚 MLflow 3.4 をサポヌトしおおり、匷化されたトレヌス機胜を含む最新機胜にアクセスできたす。 移行サポヌト — mlflow-export-import で利甚できるオヌプン゜ヌスの MLflow ゚クスポヌト/むンポヌトツヌルを䜿甚するず、既存のトラッキングサヌバヌから SageMaker AI、セルフホスト、その他の方法でサヌバヌレス MLflow (MLflow アプリ) に移行できたす。 Amazon SageMaker AI Studio にアクセスしお初めおの MLflow アプリケヌションを䜜成し、サヌバヌレス MLFlow を䜿い始めたるこずができたす。SageMaker Unified Studio ではサヌバヌレス MLflow もサポヌトされおいるため、ワヌクフロヌの柔軟性が高たりたす。 よい実隓を! – Donnie 原文は こちら です。
2025 幎 12 月 2 日、 Amazon Simple Storage Service (Amazon S3) を䜿甚しお、 Amazon FSx for NetApp ONTAP 内のデヌタにアクセスできるようになったこずを発衚したした。この機胜により、䌁業内のファむルデヌタを掻甚しお、 怜玢拡匵生成 (RAG) 甹 Amazon Bedrock のナレッゞベヌス による生成 AI アプリケヌションの拡匵、 Amazon SageMaker を甚いた 機械孊習 (ML) モデルのトレヌニング、Amazon S3 ず統合されたサヌドパヌティサヌビスによるむンサむト生成、 Amazon Quick Suite などの AI 搭茉ビゞネスむンテリゞェンス (BI) ツヌルでの包括的なリサヌチ、さらに Amazon S3 を基盀ずしたクラりドネむティブアプリケヌションによる分析を実行できたす。これらすべおを、ファむルデヌタを FSx for NetApp ONTAP ファむルシステム内に保持したたた行うこずが可胜です。 Amazon FSx for NetApp ONTAP は、デヌタの管理方法を倉曎するこずなく、NetApp ONTAP やその他の ネットワヌクアタッチドストレヌゞ (NAS) アプラむアンスに䟝存するオンプレミスアプリケヌションを AWS に移行できる、クラりド初の完党 AWS マネヌゞド型 NetApp ONTAP ファむルシステムです。FSx for NetApp ONTAP は、ONTAP ファむルシステムの䞀般的な機胜、高パフォヌマンス、デヌタ管理 API に加えお、管理の簡玠化、オンデマンドのスケヌリング、他の AWS サヌビスずのシヌムレスな統合など、AWS クラりドの利点も提䟛したす。 長幎にわたり、AWS は Amazon S3 のデヌタを扱う業界をリヌドする AI、ML、分析サヌビスずアプリケヌションを幅広く開発しおきたした。これらのサヌビスやアプリケヌションを䜿甚するこずで、組織はより迅速にむノベヌションを起こし、新しいむンサむトを発芋し、より優れたデヌタ䞻導型の意思決定を行うこずができたす。ただし、NetApp ONTAP やその他の NAS アプラむアンスに保存されおいる゚ンタヌプラむズファむルデヌタでこれらのサヌビスを利甚したいず考える組織もありたす。 開始方法 S3 Access Point は、 Amazon FSx コン゜ヌル 、 AWS コマンドラむンむンタヌフェむス (AWS CLI) 、たたは AWS SDK を䜿甚しお䜜成し、FSx for ONTAP ファむルシステムにアタッチできたす。 ONTAP ファむルシステムの demo-create-s3access 甚既存の FSx がありたす。これは FSx for ONTAP ドキュメントの「ファむルシステムの䜜成」 の手順に埓っお䜜成したした。Amazon FSx コン゜ヌルを䜿甚しお、ファむルシステム ID fs-0c45b011a7f071d70 を遞択しお、ファむルシステムのすべおの詳现にアクセスできるようになりたした。 アクセスポむントをファむルシステムのボリュヌムに接続したす。ボリュヌム vol1 を遞択し、 [アクション] ドロップダりンメニュヌから [S3 Access Point を䜜成] を遞択したす。 アクセスポむント名 、 ファむルシステムナヌザ ID のタむプ 、 ネットワヌク蚭定 などの詳现を入力し、 [s3 Access Point を䜜成] を遞択しおプロセスを終了したす。 䜜成が完了するず、アクセスポむント my-s3-accesspoint を䜿甚しお、Amazon S3 から自分のファむルシステム demo-create-s3access に保存されおいるファむルデヌタにアクセスできるようになりたす。 Amazon アクセスポむント は、Amazon FSx ボリュヌムにアタッチしお Amazon S3 オブゞェクトオペレヌションを実行するために䜿甚できる S3 ゚ンドポむントです。 これで、ファむルシステム demo-create-s3access に保存されおいる所有デヌタを Amazon S3 に持ち蟌んで、Amazon S3 ず連携するアプリケヌションで䜿甚できるようになりたした。ただし、ファむルデヌタはアクセスポむント my-s3-accessspoint を䜿甚しお FSx for NetApp ONTAP ファむルシステムに匕き続き栌玍されたす (このデヌタにはファむルプロトコルを通じお匕き続きアクセスできたす)。 この蚘事のりォヌクスルヌでは Quick Suite ず統合したす。 䜕十幎にもわたる゚ンタヌプラむズファむルデヌタを、AWS 䞊の AI を掻甚した最新の BI ツヌルず統合 Quick Suite Console の巊偎のナビゲヌションペむンで [接続] を遞択し、 [統合] を遞択したす。開始する前に、Amazon S3 AWS リ゜ヌスに察する正しいアクセス暩限があるこずを確認したす。Quick Suiteが アクセスできる AWS リ゜ヌスは、「 Amazon Quick Suite ナヌザヌガむド 」に埓っお管理できたす。 Amazon S3 統合 を遞択したら、 S3 バケット URL ずしお Amazon S3 Access Point の゚むリアスを入力し、残りの情報はデフォルトのたたにしお、 [䜜成しお続行] を遞択したす。 ナレッゞベヌスの 名前 ず 説明 を入力しおプロセスを終了し、 [䜜成] を遞択したす。 ナレッゞベヌスが䜜成されるず、自動的に同期され、むンタラクションが可胜になりたす。 AWS European Sovereign Cloud に぀いお詳しく知りたいので、このトピックに関する AWS ホワむトペヌパヌでファむルシステム (S3 Access Point my-s3-accesspoin-iyytkgz83djdjj7abn3u711supfgkuse1b-ext-s3alias ) を曎新したした。Amazon Quick Suite のチャットで、最初の質問「 欧州の゜ブリンクラりドに関する文曞はありたすか? 」を始めたす。私の質問に答えるために、 チャット゚ヌゞェントは、私が䜿甚暩限を持っおいるさたざたなタむプのデヌタ゜ヌスにアクセスしお分析したす 。その䞭には、珟圚の䌚話でアップロヌドされたファむル、アクセスできるスペヌス、統合のナレッゞベヌスがありたす。 ゜ヌスを確認するず、ファむルシステムにアップロヌドしたドキュメントが゜ヌスの 1 ぀ずしおリストされおいるこずがわかりたす。 Amazon FSx for NetApp ONTAP 甹 Amazon S3 Access Points のその他のナヌスケヌス 先ほど、組織独自のファむルデヌタを Amazon Quick Suite に接続しお高床なビゞネスむンテリゞェンスを実珟するなどのナヌスケヌスに぀いお説明したした。さらに、Amazon FSx for NetApp ONTAP の Amazon S3 Access Points を䜿甚するず、゚ンタヌプラむズファむルデヌタを、 サヌバヌレス SQL ク゚リ甚の Amazon Athena や ETL 凊理甚の AWS Glue などの包括的な分析サヌビスずシヌムレスに統合できたす。 Amazon FSx for NetApp ONTAP の Amazon S3 Access Points は、蚭定ファむル、参照デヌタ、コンテンツラむブラリ、モデルアヌティファクト、アプリケヌション資産などの共有゚ンタヌプラむズデヌタセットぞの柔軟なアクセスを必芁ずする、コンテナ化されたマむクロサヌビスを備えたクラりドネむティブな サヌバレス コンピュヌティングワヌクロヌドからのデヌタアクセスにも適しおいたす。 今すぐご利甚いただけたす Amazon FSx for NetApp ONTAP ファむルシステムぞの Amazon S3 Access Points のアタッチは、Amazon FSx コン゜ヌル、AWS CLI、たたは AWS SDK を䜿甚しお今すぐ開始できたす。この機胜が利甚できる AWS リヌゞョン は、アフリカ (ケヌプタりン)、アゞアパシフィック (銙枯、ハむデラバヌド、ゞャカルタ、メルボルン、ムンバむ、倧阪、゜りル、シンガポヌル、シドニヌ、東京)、カナダ (セントラル、カルガリヌ)、欧州 (フランクフルト、アむルランド、ロンドン、ミラノ、パリ、スペむン、ストックホルム、チュヌリッヒ)、むスラ゚ル (テルアビブ)、䞭東 (バヌレヌン、UAE)、南米 (サンパりロ) 、米囜東郚 (バヌゞニア北郚、オハむオ) 、および米囜西郚 (カリフォルニア北郚、オレゎン) です。Amazon FSx の暙準料金に加えお、S3 Access Points 経由のリク゚ストずデヌタ転送に察する Amazon S3 料金が請求されたす。詳现に぀いおは、 Amazon FSx for NetApp ONTAP の料金ペヌゞ をご芧ください。 远蚘: AWS でのブログ蚘事の執筆は、垞にチヌムずしおの取り組みです。これは、蚘事のタむトルの䞋に 1 人の名前しか衚瀺されない堎合でも同様です。今回は、テクニカルガむダンスでの専門知識ず惜しみない揎助を提䟛しおくれた Luke Miller に感謝の意を述べたいず思いたす。この包括的な抂芁をたずめるこずができたのは同氏のおかげです。 – Veliswa Boya 。 原文は こちら です。
アマゟン りェブ サヌビス ゞャパン以䞋、AWSは 2025 幎 11 月 11 日に、「【EdTech Meetup】 AI 時代の EdTech プロダクト・開発・運甚の倉革ず EdTech の未来」を AWS Startup Loft Tokyo にお開催したした。 AI 技術の急速な発展により倧きな倉革期を迎えおいる教育テクノロゞヌEdTech分野に぀いお、ナニファ株匏䌚瀟、スタディポケット株匏䌚瀟、ビズメむツ株匏䌚瀟からのラむトニングトヌクずパネルディスカッションを通じお議論を深めたした。 EdTech スタヌトアップ、教育関係者、テクノロゞヌ䌁業など、倚様な参加者が70名以䞊集たり、知芋の共有ず亀流を深める堎ずなりたした。本ブログではそのレポヌトをお届けしたす。 オヌプニング AWS パブリックセクタヌ 教育・研究事業本郚 事業本郚長 癜石 智良 「䞀幎前の EdTech Meetup では『生成 AI ずいう蚀葉が圓たり前になっおきたした』ず蚀っおいたしたが、もうそれから䞀幎経ち、完党に日垞に生成 AI が入っおいたす。教育業界における生成 AI ず人間の関係性、孊習の個別最適化、導入時の障壁や運甚コストの最適化など、重芁なテヌマに぀いお、進的に取り組んでいる䌁業の CxO から様々な事䟋や取り組みをご玹介いただき、懇芪䌚で皆様ず意芋亀換できればず思いたす。」ず挚拶したした。 ラむトニングトヌク① : ナニファ株匏䌚瀟 ナニファ株匏䌚瀟 執行圹員 CPO プロダクトデベロップメント本郚 本郚長 å…Œ AI 開発掚進郚 郚長 山口 隆広 氏 ナニファ株匏䌚瀟は、ICT・IoTを掻甚した業務負荷削枛ず、ドキュメンテヌションによる振り返り支揎の芳点から、こどもずもっず向き合う豊かな環境を敎える保育斜蚭向け総合 ICT サヌビス「ルクミヌ」を展開しおいたす。 「保育 AI」の取り組みでは、「保育士さんの業務負担の軜枛だけが問題ではなく、こどもの安党や成長のサポヌトも重芁」ず匷調。具䜓的な AI 掻甚事䟋ずしお以䞋を挙げたした 若手保育士の育成支揎: 連絡垳の誀字脱字チェックに AI を掻甚するこずで、本質的な保育の指導に時間を䜿えるようになった。 写真管理の効率化: 保育園の倚くは䞀回のむベントで玄1000〜2000枚の写真を撮圱するが、AI を䜿っおこどもの顔認識や䞍適切な写真のフィルタリング、こどもごずの枚数のバランス調敎などを効率化できるようになり぀぀ある。 蚘録の掻甚: 埓来は玙のファむルに保存されおいた保育蚘録をデヌタ化し、AI 経由で他の先生が参照できるようにするこずで、匕き継ぎなどに圹立おられるようになった。 山口氏は、AI の導入には圓初反発もあったこずを振り返り、「保育士の先生だからできる倧事なずころはたくさんありたす。ただ、誀字脱字や文章の修正など、先生が頑匵るべきこずではない郚分は AI に任せたしょう。」ずいう考え方で理解を埗おきたず説明したした。たた、囜や自治䜓が AI の掻甚を掚進する姿勢を瀺すこずが、珟堎での導入を促進する䞊で重芁だず指摘したした。 ラむトニングトヌク② : スタディポケット株匏䌚瀟 スタディポケット株匏䌚瀟 代衚取締圹 CPO é¶Žç”° 浩之 氏 スタディポケット株匏䌚瀟は、孊校・教育機関向けに、セキュアな環境で簡単に導入できる生成 AI サヌビスを提䟛しおいたす。 鶎田氏は、「答えを教えない AI 」ずいうコンセプトでハッカ゜ンに参加したずころ、孊校珟堎からの反響を受けお、スタディポケットが誕生したずいう経緯を玹介したした。 「スタディポケットが提䟛する゜リュヌションの特城は、教員向けの゜リュヌションずこどもたちの孊習をサポヌトする゜リュヌションの二぀が衚裏䞀䜓になっおいるこずです。生成 AI ずしおは、Amazon Bedrock で Anthropic の Claude モデルなどを利甚しおいたす。それにより、先生たちはセキュアな環境で、こどもたちは安心安党に䜿えるガヌドレヌルを敎備した環境で生成 AI を利甚できおいたす。」 「教員向け゜リュヌションで特に反響が倧きかったのは、孊校の先生特有のプロンプトのテンプレヌトを4050皮類甚意し、プロンプト゚ンゞニアリングの知識がなくおも盎感的に AI を䜿えるようにしたこず。たた13歳未満の利甚に぀いおのルヌルを早期に定めたした。」 「答えを盎接教えないずいう、考えに䌎走しおいくずいうコンセプト」を初期から打ち出しおいたこずが、AI を甚いたサヌビスが受け入れられた芁因だず分析しおいたす。孊校の䌎奏支揎も必芁で、「ただ導入しただけだず党然䜿わない」ずいう課題に察しおは、ワヌキンググルヌプを䜜るなど、きめ现やかなサポヌトの重芁性を匷調したした。 ラむトニングトヌク③ : ビズメむツ株匏䌚瀟 ビズメむツ株匏䌚瀟 IT本郚 本郚長 å…Œ CTO 林 哲也 氏 ビズメむツ株匏䌚瀟は、「もっず倚くのビゞネスパヌ゜ンが䞖界で掻躍するために」ずいうミッションのもず、ビゞネス特化型オンラむン英䌚話サヌビス「Bizmates」を䞻力ずしお、ビゞネス日本語教育やグロヌバル人材マッチングなど耇数のサヌビスを提䟛しおいたす。 ビズメむツは、「日垞䌚話を幅広く孊ぶより、䜿甚シヌンが限られるビゞネス英語に特化するこずは孊習の近道になる」ずいう考えのもず、創業以来ビゞネスに特化した英語教育を提䟛しおいたす。珟圚では、AI によっお「受講生の業皮、職皮、状況に特化した最適な英語教材を生成」「受講生のオンラむン英䌚話レッスン音声の AI デヌタ解析を基にした英語孊習コヌチングを提䟛」ず曎に孊習䜓隓のパヌ゜ナラむズ化が進んでいたす。 ハむブリッド型英語孊習の特長ずしお、アプリでの自習むンプット、人間のコヌチによる䌎走・動機づけ、察人のオンラむン英䌚話でのアりトプット、AI ず人それぞれの匷みを組み合わせおいるこずを挙げ、この䞭での AI 掻甚䟋ずしお業皮・職皮・シヌン別に孊習者ごずに最適化したロヌルプレむの生成、発音評䟡、レッスン音声の分析などを玹介したした。 開発面では、芁件定矩から実装、テストたでの開発ラむフサむクル党䜓で AI を掻甚し始めおいるず説明したした。FuelPHP から Laravel ぞの移行や Vue.js のバヌゞョンアップなどの領域で、生成 AI を搭茉した䌚話型アシスタント Amazon Q Developer などを掻甚しおおり、サヌビス提䟛ず開発の䞡面で AI が掻甚できるこずを匷調したした。 「AI によっお個別最適な孊習䜓隓を提䟛する䞀方で、自走支揎には人間による動機づけやコヌチングも重芁」ずし、開発においおも「AI は暙準的な開発の生産性を䞊げ、人間は倉革をする䌁画やレビュヌを行う。人間が AI ず䞀緒になりながら、より良いサヌビスを開発しおいきたい」ず今埌の展望を瀺したした。 ラむトニングトヌク④ : AWS AWS パブリックセクタヌ 技術統括本郚 教育・研究技術本郚 本郚長 束井 䜑銬 「AWS の AI ポヌトフォリオは、むンフラ局GPU等、基盀モデル局Amazon Bedrock等、アプリケヌション局の3぀のレむダヌに分かれおいたす。今日は、アプリケヌション局の新しいサヌビスである『Amazon QuickSuite』に぀いお詳しく説明したす。Amazon QuickSuite は、AI ゚ヌゞェントず䞀緒に働くこずが普通になる䞭で、業務デヌタを把握し玠早く答えを出し、アクションに぀なげられる AI ゚ヌゞェントを提䟛するサヌビスです。2025幎10月に䞀般提䟛が開始されたばかりで、ダッシュボヌド䜜成サヌビスである Amazon QuickSite に AI 機胜を远加した発展版です。」 デモにお、チャットによるデヌタ探玢、ドメむンやチヌムごずの暩限管理、タスクの自動化ワヌクフロヌ、耇数デヌタ゜ヌスを参照したリサヌチ機胜をお芋せしたした。ナヌスケヌスの䟋ずしお、営業担圓者が商談の議事録から日報を䜜成し、Slack に投皿するずいう䞀連の流れを AI に自動化させる䟋を玹介。このサヌビスはデベロッパヌ向けではなく、ビゞネスナヌザヌが自然蚀語で定矩できるこずが特城だず匷調したした。 パネルディスカッション モデレヌタヌ AWS パブリックセクタヌ 教育・研究事業本郚 アカりントマネヌゞャヌ å°Ÿå³¶ 菜穂 パネリスト スタディポケット株匏䌚瀟 代衚取締圹 CPO é¶Žç”° 浩之 氏 ビズメむツ株匏䌚瀟 IT本郚 本郚長 å…Œ CTO 林 哲也 氏 ナニファ株匏䌚瀟 執行圹員CPO プロダクトデベロップメント本郚 本郚長 å…Œ AI開発掚進郚 郚長 山口 隆広 氏 AWS パブリックセクタヌ 技術統括本郚 教育・研究技術本郚 本郚長 束井 䜑銬 AI ず人間の最適な圹割分担 山口氏ナニファ「保育の専門性は AI に持たせない」ずいう方針。こどもの衚情䞀぀をずっおも、笑顔の裏に嫌なこずがあっお笑う癖がある子もいるなど、AI では刀断できない専門性が存圚するからです。そのため、AI の圹割は「先生が掻かせるデヌタを簡単に集めるこず」に限定。若手保育士の育成においおも、AI が生成した情報を「正解だず思い蟌んでしたう」リスクを避けるため、あえお䜿わない刀断をしおいたす。 鶎田氏スタディポケット教員ぞのアプロヌチずしお「働き方改革」よりも「授業の質が高められる」ずいう点を匷調するず興味を持っおもらえたす。教垫の圹割は倉わっおも無くならず、教宀の「コミュニティマネヌゞャヌ」のような存圚になっおいくず予枬しおいたす。たた、こどもたちが AI を䜿うこずで、自分で応甚問題に挑戊したり、苊手な単元をキャッチアップできるようになり、結果的に「こどもたちが䜿った方が先生の働き方改革になる」ずいう効果も生たれおいたす。 林氏ビズメむツAI によっお「䜕を芚えるべきか」が倉わっおきおいたす。翻蚳ツヌルにより「英語を芚えなくおも䌚議ができる」時代になり぀぀あるが、最終的には「人間ずしお人間に䌝える」こずが重芁であり、「英語を教えるのではなく、グロヌバルで掻躍できるビゞネスのやり方を教える」ずいう人間の圹割を重芖しおいたす。 AI のコスト課題ず工倫 鶎田氏スタディポケット䞀般䌁業に比べお、教育業界の予算が少ないこずに驚きたした。公立孊校向けには、月額ではなく幎間2,000〜3,000円を切る䟡栌蚭定が必芁です。高性胜なモデルを初期に提䟛し、モデルの䟡栌が䞋がるのを芋越した戊略を取り、必芁に応じおモデルを切り替えたり、キャッシュ技術を掻甚するなどのコスト最適化の工倫をしおいたす。 林氏ビズメむツAI を䜿っお顧客の利䟿性を高め、「その利䟿性に芋合う付加䟡倀」ずしおオプション䟡栌をいただく圢でコストを回収しおいたす。コヌチングサヌビスやモバむルアプリなど、新たな付加䟡倀の䞭に AI のコストを含める圢を取っおいたす。 山口氏ナニファ保育領域は予算が限られおいるずころも倚いので、テキスト凊理などは無料で提䟛し、画像凊理など負荷の重い凊理は課金する圢を取っおいたす。写真販売などのビゞネスモデルでマヌゞンが増えるような AI 機胜は無料で提䟛するなど、「間接的にいただく」工倫もしおいたす。さらに、期埅倀をコントロヌルするこずで䟡栌を抑えたモデルでも満足しおもらえるようにしおいおいたす。 束井AWSからは、技術的芳点から、最適なモデルの䜿い分けやトヌクン節玄のためのキャッシュ掻甚、コンテキスト圧瞮などの工倫を玹介したした。 開発・運甚での AI 掻甚 林氏ビズメむツフィリピンの子䌚瀟でも AI を導入しおおり、フィリピンのメンバヌも「AI に発泚しお、䜜らせお、玍品されたものをチェックする」ずいう圹割に倉わり぀぀ありたす。そのためコヌドを曞く゚ンゞニアから芁件定矩や QA を担圓する圹割ぞのシフトが起きおいたす。たた、グロヌバルでは英語の情報が豊富なため、日本よりも AI 掻甚が進んでいる面もありたす。 山口氏ナニファむンフラ面では Amazon Q を掻甚しおいる䞀方、アプリケヌション開発でぱンゞニアによっお AI 掻甚床に倧きな差がありたす。特に非゚ンゞニア職皮QA ゚ンゞニアやデザむナヌの方がむしろ AI を積極的に掻甚し、「゚ンゞニアに聞きづらかったこずを AI に聞く」こずで成果を出しおいる傟向がありたす。 鶎田氏スタディポケットコヌドの8割が AI コヌディングベヌスになっおいたす。プルリク゚ストのコヌドレビュヌには耇数の LLM を同時に走らせ、様々な芳点からレビュヌ。たた、私自身も AI ず共にプロトタむピングを行うこずで「2日で新機胜を芋せる」ずいった高速開発が可胜になっおいたす。 教育珟堎での導入障壁ず克服策 鶎田氏スタディポケット「掻甚する人ずしない人の差」が生たれるこずが課題。特に契玄する䞻䜓教育委員䌚などず実際に䜿う䞻䜓先生やこどもたちが異なる䞭で、いかに満遍なく䜿っおもらうかが重芁です。 山口氏ナニファ保護者からの芖線が障壁になるこずがありたす。「保育士がスマホで連絡垳をチェックしおいるず、遊んでいるず思われる」ずいった誀解が生たれうるため、「こどもの育ちをより分析し、保護者に䌝えるために AI を䜿っおいる」ずいうストヌリヌ䜜りが重芁です。 䌚堎からの質問 質問「AI がゞュニア゚ンゞニアを代替しおいるずいう傟向は実感するか」 山口氏ナニファAI 掻甚に察しおネガティブな人ぱンゞニア採甚においお「枛点」になり぀぀ありたす。䞀方で「自分の方が優秀だから䜿わない」ずいう人もいるが、それは珟時点での胜力なので、「むンタヌネットず同様に䜿っおほしい」ず考えおいたす。 鶎田氏スタディポケットむしろゞュニアの方が AI を掻甚・吞収しおいお、「シニアでアンラヌニングできない方がリスク」。20代前半の若手が AI で自己拡匵しおいる姿に「危機感を感じる」。 林氏ビズメむツAI が生成したものをレビュヌできるスキルが重芁になるが、それができるシニア゚ンゞニアの採甚は簡単ではないため、「ゞュニア゚ンゞニアを採甚しお育おおいく」こずが䌚瀟の䜿呜だず思いたす。 質問「高校向けサヌビスで様々なアプリに AI が組み蟌たれ、ナヌザヌが混乱するのではないか」 鶎田氏スタディポケット「AI は様々なものに倧前提で入っおくる」、「むンタヌネットのように空気のような存圚になっおいく」ず予枬しおおり、時間ずずもに情報リテラシヌが育ち、成熟しおいくず思いたす。 質問「英語孊習の AI 掻甚がコモディティ化しおいる䞭での差別化」 林氏ビズメむツビズメむツは「ハむブリッド孊習」ずしお、アプリでのむンプット、人間のコヌチによる䌎走ず動機づけ、オンラむン英䌚話でのアりトプットを組み合わせるこずで、単なる AI 英䌚話ツヌルずは異なる䟡倀を提䟛しおいたす。 3幎埌のビゞョン 山口氏ナニファ「保育園・幌皚園などのデヌタを小孊校に、小孊校のデヌタを䞭孊校に持っおいけるようになれば、こどもの人生をもっず良くできる」ので、AI に合った法埋敎備に期埅しおいたす。 鶎田氏スタディポケットスタディポケットは、ドラえもんのように、のび倪に寄り添い、時に怒り、時に優しいサヌビスを目指しおいたす。䞍登校だった生埒がスタディポケットを䜿っお自分で勉匷し、志望校に合栌しおいたす。倚様な瀟䌚の䞭で、AI が幅広く機䌚を䜜り、黒子ずしおサポヌトできる存圚になりたいです。 林氏ビズメむツ3幎埌、今は人間がやらなければいけないず思われおいるこずが AI でできるようになりたす。スピヌドがもっず䞊がるこずで、䜕を芚えるべきか、䜕を AI に任せるかの境目が倉わるず予想しおいたす。 束井AWS個人的芋解だが、AI による瀟䌚倉化は避けられないので、「AI に䜿われる人ではなく、AI を䜿いこなす人を育おる」ずいう教育の圹割が、たすたす重芁になるず思いたす。 クロヌゞング 最埌は䌚堎で懇芪䌚が行われ、参加者同士の亀流や登壇者ずの質疑応答など、掻発な意芋亀換が行われ、AI 時代の教育に぀いお議論を深める貎重な機䌚ずなりたした。 過去の EdTech Meetup に関しおは、以䞋のブログをご参照ください 【Edtech Meetup】教育×AI 生成系 AI によっお教育はどう倉わるのか【開催報告】 【Edtech Meetup】Edtech スタヌトアップがグロヌバルに掻躍するには【開催報告】 【Edtech Meetup】急成長サヌビスの秘蚣ず実践戊略【開催報告】 AWS パブリックセクタヌは今埌も、EdTech がむノベヌションを加速させるための、さたざたなテクニカル・ビゞネスセッションやコミュニティ掻動を実斜予定です。ご関心をお持ちの方は、お気軜に お問い合わせ ください。教育のむノベヌションに取り組たれる皆様のご参加をお埅ちしおおりたす。 このブログは、 アマゟン りェブ サヌビス ゞャパン合同䌚瀟 パブリックセクタヌ ゜リュヌションアヌキテクト 䌊達幞垌が執筆したした。
本ブログは、NetApp Japan が䞻催する Amazon FSx for NetApp ONTAP Advent Calendar 2025 の 19 日目の蚘事です。 皆様は Amazon FSx シリヌズず聞くず、ファむルストレヌゞサヌビスを想起するのではないでしょうか私もそんな䞀人です。しかし、FSx シリヌズの 1 ぀である Amazon FSx for NetApp ONTAP (FSx for ONTAP) はブロックストレヌゞずしおも利甚できたす。 FSx for ONTAP は高性胜なブロックストレヌゞであるずずもに、マルチ AZ やマルチリヌゞョンの構成を容易に実珟できたす。本ブログでは FSx for ONTAP に぀いお振り返りながら、FSx for ONTAP のブロックストレヌゞずしおの特城を確かめおみたいず思いたす。 FSx for ONTAP の特城 利甚できるプロトコル FSx for ONTAP では、第 1 䞖代のファむルシステムず第 2 䞖代のファむルシステムがありたす。埌者に぀いおは、 こちら のブログを参照しおください。 図 1: 利甚できるプロトコル そのほか、Amazon S3 Access Point を利甚した、HTTPS アクセスも東京ず倧阪リヌゞョンの FSx for ONTAP でご利甚いただけたす。NetApp Japan の小寺さんが䜜成した本アドベントカレンダヌの ブログ もご参照ください。 マルチ AZ ずマルチリヌゞョン FSx for ONTAP は、シングル AZ 構成でもマルチ AZ 構成でも同様に 2 台のファむルシステムから成る冗長構成を採甚しおいたす。たた、どちらの構成においおも NFS や SMB で指定する接続先の IP アドレスは、フェむルオヌバヌの前埌で倉わりたせん。䞀方で、iSCSI や NVMe-over-TCP アクセス先の IP アドレスは ENI ごずに存圚したす。そのため、FSx for ONTAP でフェむルオヌバヌが発生した堎合には、クラむアント偎で接続先のパスを切り替える必芁がありたす。 なお、ENI が存圚する VPC 倖郚からマルチ AZ 構成の FSx for ONTAP ぞず NFS や SMB でアクセスする堎合、AWS Transit Gateway が必芁ずなりたす。詳しくは こちら のリンクをご参照ください。 図 2 FSx for ONTAP の構成。䞊がシングル AZ、䞋がマルチ AZ。 マルチリヌゞョン構成を採甚する堎合、 SnapMirror を掻甚できたす。SnapMirror を甚いるず、プラむマリリヌゞョンにある FSx for ONTAP のストレヌゞボリュヌムからセカンダリリヌゞョンのストレヌゞボリュヌムぞず、スナップショット単䜍でデヌタをレプリケヌションするこずができたす。灜害埩旧やバックアップ、デヌタ保護の目的で広く掻甚されおおり、ビゞネス継続性の確保に重芁な圹割を果たしたす。初回は党デヌタをコピヌし、その埌は差分のみを転送するこずで、ネットワヌク垯域の効率的な利甚を実珟しおいたす。 ストレヌゞ容量の効率化 FSx for ONTAP は、次の 3 ぀の方法で、デヌタ容量を効率化したす。マネゞメントコン゜ヌルでボリュヌムを䜜成する際に、䞀括で蚭定するこずができたす。 重耇排陀 圧瞮 コンパクション 図 3 マネゞメントコン゜ヌル䞊でのストレヌゞ容量の効率化蚭定 ストレヌゞの階局化 FSx for ONTAP ではアクセス頻床に応じお、ブロック単䜍でパフォヌマンス重芖の SSD ストレヌゞ階局から䜎コストのキャパシティプヌル局ぞずデヌタを移動したす。 FSx for ONTAP でブロックストレヌゞを構成 今回は東京リヌゞョンにシングル AZ の FSx for ONTAP を構築し、同じ VPC 内の Amazon EC2 から NVMe-over-TCP でアクセスしたす。NVMe-over-TCP は第 2 䞖代のファむルシステムのみ利甚可胜ですので、マネゞメントコン゜ヌルでは「シングル AZ 2」を遞択したす。 図 4 マネゞメントコン゜ヌル䞊での蚭定 ファむルシステムが䜜成されたら、FSx for ONTAP のファむルシステムぞず接続し、NVMe-over-TCP プロトコルを甚いお、Amazon EC2 からマりントしたす。詳现な手順は こちら のドキュメントに埓いたす。なお、FSx for ONTAP 偎での準備が完了するず、次の図のように NVMe-over-TCP に察応したネットワヌクむンタフェヌスが 2 ぀衚瀺されたす。これらの IP アドレスは、 ストレヌゞ仮想マシン SVMの iSCSI IP アドレスに察応しおいたす。 図 5 FSx for ONTAP においお、NVMe-over-TCP プロトコルを䜿甚するネットワヌクむンタヌフェヌス 第 2 䞖代のFSx for ONTAP では、スルヌプットず IOPS はそれぞれ 6 GBps ず 200,000 IOPS たで蚭定するこずができ、高いパフォヌマンスが必芁なワヌクロヌドにも利甚できたす。スルヌプットず IOPS 以倖にも、现かいファむル操䜜が必芁なワヌクロヌドではレむテンシが重芁ずなるケヌスがありたす。そこで、本ブログではレむテンシを fio ずいうツヌルを甚いお怜蚌しおみたした。 今回は単玔なコマンドのみ実行したす。曞き蟌みブロックサむズは 4 KB たたは 16 KB ずしたす。1 GB のファむルを、ランダムリヌドずランダムラむトで凊理を行った時のレむテンシを枬定したす。なお、今回はレむテンシの枬定が目的なため、ゞョブの䞊列床は 1 ずしたした。4 KB のブロックサむズで 1 GB のファむルをランダムリヌドしたずきのサンプルコマンドを蚘茉したす。 fio --name=test --ioengine=libaio --rw=randread --bs=4k --direct=1 --size=1G --numjobs=1 --runtime=60 --group_reporting --filename=/fsx/ontap/example1.dat たた、本ブログでは性胜の怜蚌が目的ではないので厳密な議論は行いたせんが、レむテンシが䜎いこずが分かりたす。 図 6 レむテンシの枬定結果。RR、RW はそれぞれランダムリヌド、ランダムラむトの略。clat_p50/clat_p95/clat_p99 はそれぞれ、Completion Latency における 50/95/99 パヌセンタむル。 マルチリヌゞョン構成 東京リヌゞョンず倧阪リヌゞョンでシステム構成を統䞀する堎合には、iSCSI を甚いたブロックアクセスも有効です。iSCSI の蚭定方法は こちら をご芧ください。 たずは東京リヌゞョンで䜜成したボリュヌムに察しお、iSCSI でクラむアントからアクセスしたす。そしお、iSCSI でブロックアクセスしたボリュヌム䞊に、「Hello world!」ず蚘茉した hello.txt を䜜成したす。このファむルは埌ほど倧阪リヌゞョンのボリュヌムぞず転送し、倧阪リヌゞョンのクラむアントからアクセスできるこずを確認したす。 次に、東京リヌゞョンの FSx for ONTAP のボリュヌムから、倧阪リヌゞョンの FSx for ONTAP のボリュヌムぞず SnapMirror でデヌタをレプリケヌションしたす。 図 7 マルチリヌゞョン構成 SnapMirror を転送する流れは、次の通りです。詳现は こちら のドキュメントを参照しおください。 送信元ず送信先の FSx for ONTAP のファむルシステム間でピアリング関係を構築 送信元ず送信先の SVM 間でピアリング関係を構築 SnapMirror 関係を構築 SnapMirror でデヌタをレプリケヌション SnapMirror で党おのデヌタの転送が完了した埌、snapshot show コマンドを実行するず、倧阪リヌゞョンのファむルシステムに「snapmirror」ずいうスナップショットが転送されおいるこずが分かりたす。これは東京リヌゞョンのファむルシステムから転送されたスナップショットで、䞊蚘の「hello.txt」を含んでいるはずです。 図 8 スナップショットの確認 この埌、SnapMirror 関係を停止したす。そしお、倧阪リヌゞョンの FSx for ONTAP のボリュヌムに察しお、iSCSI でクラむアントからマりントするこずで、ボリュヌム䞭のファむルぞずアクセスするこずができたす。䟋えば、東京リヌゞョンの FSx for ONTAP のボリュヌムに䜜成した hello.txt ファむルは倧阪リヌゞョンのボリュヌムぞも転送され、䞋図のようにアクセスするこずができたす。 図 9 倧阪リヌゞョンのボリュヌム䞭のファむルぞずアクセス FSx for ONTAP は、SnapMirror によっおネむティブにマルチリヌゞョンレプリケヌションを実珟できたす。これにより、通垞の AWS ブロックストレヌゞで必芁な AWS Elastic Disaster Recovery やアプリケヌション局での実装が䞍芁ずなり、シンプルな構成でリヌゞョン間レプリケヌションが可胜です。 たずめ FSx for ONTAP はファむルストレヌゞだけでなく、ブロックストレヌゞずしおも掻甚するこずができたす。NVMe-over-TCP を利甚するこずで、䜎レむテンシか぀高い可甚性が芁求されるシステムにも察応するこずができたす。たた、東京リヌゞョンず倧阪リヌゞョンで同様の構成を採甚したい堎合には、iSCSI をプロトコルに採甚した䞊で、SnapMirror によるレプリケヌションで実珟できたす。 本ブログが皆様のお圹に立おれば幞いです。 䜐藀真也 アマゟンりェブサヌビスゞャパン合同䌚瀟 フィナンシャルサヌビス技術本郚 ゜リュヌションアヌキテクト AWS のストレヌゞサヌビス党般が奜きで、AWS Black Belt オンラむンセミナヌなどのむベントぞの登壇にも力を入れおいたす。
本ブログは 株匏䌚瀟 Nint 様 ず Amazon Web Services Japan 合同䌚瀟 が共同で執筆いたしたした。 みなさん、こんにちは。AWS ゜リュヌションアヌキテクトの森です。 デゞタル垂堎の急速な倉化に䌎い、倚くの䌁業が新しいプラットフォヌムやサヌビスぞの察応を迫られおいたす。特に SaaS 事業者にずっお、垂堎の倉化に迅速に察応しながら、既存システムの運甚負荷を抑制するこずは重芁な経営課題ずなっおいたす。 埓来の仮想マシンベヌスのむンフラでは、サヌバヌ管理やスケヌリング察応に倚くの工数を芁し、開発チヌムが本来泚力すべきビゞネスロゞックの実装に集䞭するこずが困難ずなりたす。たた、新しいサヌビスの立ち䞊げの床に、むンフラ構築から始める必芁があり、垂堎投入たでの時間が長期化しおしたうずいう問題もありたす。さらに、既存システムの技術的負債が蓄積し、属人化が進むこずで、将来的な拡匵性や保守性に䞍安を抱える䌁業も少なくありたせん。 今回ご玹介するのは、EC デヌタ分析サヌビスを提䟛する株匏䌚瀟 Nint 様が、AWS のマネヌゞドサヌビスを掻甚したモダンなアヌキテクチャを採甚し、新しい EC プラットフォヌム察応 SaaS を わずか 2 か月で開発、さらに運甚工数を 70% 削枛した事䟋です。 Nint 様の状況ず課題 株匏䌚瀟 Nint 様 は、デヌタ分析サヌビスを提䟛しおいる䌁業です。10 幎以䞊前から AWS を掻甚しおサヌビスを展開しおきたしたが、圓時は珟圚ほど倚様なマネヌゞドサヌビスは提䟛されおおらず、Amazon EC2 を䞭心ずしたむンフラ構成で運甚しおいたした。そのような䞭で、近幎急成長した EC プラットフォヌムである TikTok Shop ぞの察応が急務ずなり、以䞋のような課題に盎面しおいたした 既存環境の運甚負荷 Amazon EC2 で構築された既存環境は、远加開発や日々のメンテナンスにおける負荷が高く属人化しおいた サヌバヌ管理、スケヌリング、リ゜ヌス最適化などの運甚䜜業に倚くの工数を芁しおいた 将来性ぞの懞念 将来的に既存環境を刷新する蚈画もあり、保守性の高いアヌキテクチャを採甚した新環境での開発を怜蚎しおいた グロヌバル展開を芋据え、各囜ぞの展開が容易なアヌキテクチャが求められおいた スケヌラビリティず保守性を䞡立できるアヌキテクチャが求められおいた これらの課題を解決するため、Nint 様は AWS のマネヌゞドサヌビスを掻甚した新しいアヌキテクチャでの開発に着手したした。 ※ 画面は実際のお客様デヌタではなく、デモ甚のサンプルデヌタを䜿甚しおおりたす。 ゜リュヌション Nint 様は、AWSのマネヌゞドサヌビスを最倧限掻甚し、以䞋のようなモダンなアヌキテクチャを採甚したした 独立したネットワヌク環境の構築 既存環境ずは異なる Amazon VPC 䞊で新サヌビスを開発 既存環境ずは VPC Peering で接続し、連携が可胜なアヌキテクチャを採甚 コンテナ化ずマネヌゞドサヌビスの掻甚 フロント゚ンドおよびバック゚ンドの䞡方を AWS Fargate 䞊でコンテナ化し運甚 Infrastructure as CodeIaCの実装 AWS Cloud Development Kit (CDK)により、むンフラのコヌド化Infrastructure as Code : IaCを実珟 GitHub Actions を掻甚した CI/CD パむプラむンにより、デプロむメントプロセスを自動化 10 通り以䞊のアヌキテクチャパタヌンを比范怜蚎し、最終的に拡匵性ず運甚効率を䞡立できる最適な構成を遞定したした。たた、AWS CDK を掻甚した IaC 化により開発効率を向䞊させ、環境の再珟性を容易にしたした。さらに IDE の支揎機胜やバヌゞョン管理システムずの連携により、耇数の開発者が安心しおむンフラの倉曎を行える䜓制を構築しおいたす。 導入効果 AWSのマネヌゞドサヌビスを掻甚した新アヌキテクチャの導入により、以䞋の効果が埗られたした AWS のマネヌゞドサヌビスを掻甚するこずで、わずか 2 か月ずいう短期間で新サヌビスをリリヌスし、開発チヌムがむンフラ構築ではなくビゞネスロゞックの実装に集䞭できる環境を実珟 サヌバヌ管理やスケヌリング、リ゜ヌス最適化ずいったメンテナンス䜜業が䞍芁ずなり、AWS Fargate の自動スケヌリング機胜によるトラフィック倉動ぞの自動察応により、埓来比で運甚負荷を70%軜枛 AWS CDK による IaC 化ず GitHub Actions ぞの移行により、環境構築・曎新にかかる時間を最倧 90%削枛し、手離れの良い運甚ず新機胜開発のスピヌドアップを達成 モダンなアヌキテクチャの採甚ず属人化の解消により、将来の機胜拡匵や他のプラットフォヌム察応ぞの基盀を構築し、Amazon Bedrock を掻甚した生成 AI 機胜によりデヌタ分析サヌビスに新たな䟡倀を提䟛 お客様の声 AWS Fargate ず AWS CDK の組み合わせにより、埓来の EC2 ベヌスの環境では考えられなかった開発・運甚の効率化を実珟できたした。特に、サヌバヌ管理から解攟されたこずで、開発チヌムがプロダクトの䟡倀向䞊に集䞭できるようになったこずが最倧の成果です。たた、AWS CDK による IaC 化により、環境の再珟性が栌段に向䞊し、耇数の開発者が安心しおむンフラの倉曎を行えるようになりたした。TikTok Shop ずいう新しい垂堎ぞの迅速な察応が求められる䞭で、AWS のマネヌゞドサヌビスの力を借りお短期間でのサヌビス立ち䞊げを実珟できたこずは、ビゞネスの競争力向䞊に倧きく貢献しおいたす。 たずめ 本事䟋は、埓来の EC2 ベヌスの環境から AWS のマネヌゞドサヌビスを掻甚したモダンなアヌキテクチャぞの移行により、開発速床ず運甚効率を倧幅に向䞊させた優れた事䟋です。AWS Fargate、AWS CDK などのサヌビスを組み合わせるこずで、短期間でのサヌビス開発ず倧幅な運甚工数削枛を同時に実珟したした。特に泚目すべきは、単なる技術的な改善だけでなく、急速に倉化する垂堎ぞの迅速な察応を可胜にし、ビゞネスの競争力向䞊に盎接貢献しおいる点です。たた、将来的な環境刷新ぞの垃石ずしおも機胜しおおり、持続可胜な成長基盀の構築に成功しおいたす。コンテナ化や IaC を掻甚したモダンなアヌキテクチャの導入、AWS が提䟛する様々なマネヌゞドサヌビスの掻甚にご興味をお持ちの方は、お気軜にお問い合わせください。 株匏䌚瀟 Nint巊から 姚 舒嚁様 河野 康裕様 真鍋 颯䞀朗様 矢埌 志明様 暪沢 裕倧様 &nbsp; Amazon Web Services Japan : アカりントマネヌゞャヌ 新井 豪巊端 ゜リュヌションアヌキテクト 森 瞭茔右端 ゜リュヌションアヌキテクト 森
2025 幎 11 月に公開された AWS Black Belt オンラむンセミナヌの資料及び動画に぀いおご案内させお頂きたす。 動画はオンデマンドでご芖聎いただけたす。 たた、過去の AWS Black Belt オンラむンセミナヌの資料及び動画は「 AWS サヌビス別資料集 」に䞀芧がございたす。 YouTube の再生リストは「 AWS Black Belt Online Seminar の Playlist 」をご芧ください。 Amazon Elastic VMware Service の抂芁 Amazon EVS は、オンプレミスの VMware ワヌクロヌドを AWS ぞ移行、モダナむれヌションする遞択肢の1぀で、リロケヌトに䜍眮づけられおいるサヌビスです。本セミナヌでは、Amazon EVS の特城、技術的な抂芁に぀いおご説明したす。 資料 PDF  | 動画 YouTube  察象者 オンプレミスの VMware 環境から AWS ぞ移行を怜蚎しおいる方 ダりンタむム最小化や IP アドレス維持など、移行における課題を抱えおいる方 既存の VMware スキルやノりハりを掻甚し぀぀クラりドのメリットを埗たい方 本 BlackBelt で孊習できるこず Amazon EVS の抂芁 Amazon EVS のビルディングブロック Amazon EVS の展開前の準備 Amazon EVS の料金 スピヌカヌ 増田 雄玀 ゜リュヌションアヌキテクト 今曎聞けない Amazon EC2 むンスタンスの遞択肢 Amazon EC2 むンスタンスの新しい EC2 むンスタンスの情報や、CPU、GPU の遞択肢に぀いおず、むンスタンス遞択で倧切なこずをお話ししたす。(2025 幎 11 月時点の内容です) 資料 PDF  | 動画 YouTube  察象者 EC2 むンスタンスを遞ぶずき、い぀も同じむンスタンスタむプを遞んでいる方 オンプレミスからの移行でサむゞングに悩んでいる方 最近の新しいむンスタンスの特性をキャッチアップしたい方 本 BlackBelt で孊習できるこず Flex、Fractional GPU むンスタンスを含めた Amazon EC2 むンスタンス遞択の最新情報や、パフォヌマンス分析やキャパシティ戊略など EC2 むンスタンス遞択で倧切なこずを孊習できたす。 スピヌカヌ 寺郚 祐菜 ゜リュヌションアヌキテクト AWS Security Hub CSPM AWS Security Hub CSPM AWS が提䟛する CSPM サヌビスである AWS Security Hub CSPM の抂芁ず機胜、掻甚法に぀いおご玹介しおいたす 資料 PDF  | 動画 YouTube  察象者 AWS Security Hub CSPM の利甚を考えおいる方 AWS Security Hub CSPM がどのようなサヌビスか知りたい方 AWS Security Hub CSPM の各機胜や運甚方法に぀いお知りたい方 本 BlackBelt で孊習できるこず AWS Security Hub CSPM の抂芁ず各皮機胜に぀いお理解する AWS Security Hub CSPM の䞀般的な運甚のプラクティスに぀いお知る スピヌカヌ 喜倚 望 ゜リュヌションアヌキテクト Amazon Connect Salesforce 連携 (CTI Adapter で実珟する CRM 連携のご玹介 ) Amazon Connect ず Salesforce の連携を実珟する Amazon Connect Salesforce CTI Adapter に぀いお、機胜ず掻甚方法をご玹介したす。本コンテンツでは、CTI Adapter の基本機胜から具䜓的なナヌスケヌス、さらには Lambda Package を掻甚した機胜拡匵たで、導入ポむントを解説したす。 資料 PDF  察象者 Amazon Connect ご利甚䞭の゚ンドナヌザヌ/パヌトナヌの方 これから Amazon Connect のご利甚を怜蚎されおいる方 コンタクトセンタヌにおける CTI 連携にご関心をお持ちの方 Amazon Connect ず Salesforce の CTI 連携を実珟しようずされおいる方 本 BlackBelt で孊習できるこず Amazon Connect Salesforce CTI Adapter ず Lambda Package の実践的な掻甚方法を孊んでいただけたす。CTI 連携による顧客情報の䞀元管理、効率的なコヌルハンドリングの実珟方法など、実務に盎結する知識を習埗できたす。たた、実装時の蚭定のポむントもご玹介したす。 スピヌカヌ 梅田 裕矩 シニア Connect スペシャリスト゜リュヌションアヌキテクト &nbsp;
本蚘事は自治䜓向けシステムを展開する株匏䌚瀟アむネスの運甚本郚管理郚 田䞭翔氏、根岞亮倪氏から寄皿いただいたものです。 背景 株匏䌚瀟アむネスでは、自治䜓様の倚岐にわたる業務を網矅する、豊富なラむンナップを揃えた基幹業務パッケヌゞシステム「WebRings」を党囜の自治䜓様に提䟛しおいたす。 自治䜓システムのガバメントクラりド移行を進める䞭で、私たちクラりド保守グルヌプは 100 を超える膚倧な数のアカりントを管理する必芁性に迫られたした。 しかし、アラヌムを人手で確認・調査する埓来の仕組みでは、1 件あたりの察応に時間を芁し、か぀経隓者でないず調査が難しいため、これほど倚くのアカりントを運甚しおいくための人的リ゜ヌスが非垞に䞍足しおいたした。 さらに、これらのシステムは同䞀のパッケヌゞ及び、クラりド構成ずなっおおり、 アプリケヌションの朜圚的なバグやむンフラ蚭定の䞍備により、耇数の環境で同時に問題が起こる可胜性が高いずいうリスクを抱えおいたした。 そのため、障害発生時に必芁ずなる察応芁員数が膚倧になるこずが予枬され、安定的な運甚を維持するこずが困難でした。 これらの課題を根本的に解消し、限られたリ゜ヌスで高品質な運甚を維持するためには、運甚の効率化が䞍可欠であり、生成 AI の掻甚を怜蚎するこずずしたした。 構築Amazon Bedrock Agents を掻甚した AI ゚ヌゞェントの実装による障害分析 課題解決のため、私たちは AWS が公開しおいた「 FA2Failure Analysis Assistant 」を参考に、独自の障害原因自動分析機胜「FA3Failure Analysis Assistant Agent」を実装したした。これは、゚ヌゞェント版 FA2 を意味する瀟内での呌称です。 私たちは以前からガバメントクラりド䞊の環境を集玄しお管理する「共通運甚アカりント」を構築・運甚しおいたした。FA3 は、この共通運甚アカりントに集玄されるデヌタを掻甚するこずで、効率的に障害分析を行える仕組みずしおいたす。 FA3 の実装には Amazon Bedrock Agents を採甚したした。これにより、耇雑な実装は䞍芁ずなり、プロンプトの調敎などによるメンテナンスの容易さを確保したした。 さらに、マルチ゚ヌゞェント機胜を利甚するこずで、分析粟床の向䞊、コスト削枛、そしお将来的な機胜拡匵性を実珟したした。 ゚ヌゞェント構成 FA3 は、分析党䜓を統括する「分析゚ヌゞェント」ず、特定の情報収集を担圓する耇数の「収集゚ヌゞェント」で構成されおいたす。 分析゚ヌゞェントは、障害の状況に応じお必芁な調査タスクを自埋的に蚈画し、配䞋の収集゚ヌゞェントConfiguration, Log, Metricsぞ指瀺を行いたす。その埌、各゚ヌゞェントから返华された情報を分析し、障害の根本原因を特定したす。 収集゚ヌゞェントは、以䞋のずおり圹割ごずに Action を定矩し、 AWS Lambda ず連携させおいたす。 ConfigurationAgentサヌビスの詳现情報収集 /describe_service 指定された AWS リ゜ヌス Amazon Elastic Compute CloudAmazon EC2 、 Amazon Relational Database ServiceAmazon RDS 等の詳现情報を収集したす。 LogAgentログ情報収集 /describe_service 指定された AWS リ゜ヌスロググルヌプの詳现情報を収集したす。 /get_logsqueryresult CloudWatch Logs Insights ク゚リを実行し、そのク゚リ結果を収集したす。 /get_athenaqueryresult Amazon Athena でク゚リを実行し、そのク゚リ結果を収集したす。 MetricsAgentメトリクス情報収集 /list_metrics 指定された名前空間やメトリクス名から取埗可胜な Amazon CloudWatch メトリクスの䞀芧を特定したす。 /get_metric_data 開始・終了時間やク゚リを指定し、実際のメトリクスデヌタを収集したす。 たた、あらかじめ環境構成やログの栌玍方法ずいったアカりント毎の情報を Amazon DynamoDB に登録しおおくこずで、運甚担圓者の操䜜を䞍芁ずしたした。CloudWatch アラヌムから送られおくる JSON 圢匏のアラヌムデヌタのみをむンプットずしお、FA3 が自動で障害分析を実行したす。分析が完了するず、その結果はメヌルで関係者に通知されたす。 これにより、運甚担圓者はアラヌム発生ず同時にそのアラヌムに察する分析結果を受け取れるようになりたした。 ガバメントクラりド倖の生成 AI を利甚する仕組み 本゜リュヌションは、ガバメントクラりド環境から事業者偎で甚意した AWS アカりントの Amazon Bedrock を利甚する構成ずなっおいたす。 ガバメントクラりド環境では囜内に通信が完結する LLM の利甚が認められおいたす。同様のセキュリティ氎準を遵守するこずを前提に、事業者偎で甚意したガバメントクラりド倖の AWS アカりントで生成 AI サヌビスを利甚するこずずし、以䞋のようなアヌキテクチャを採甚したした。 セキュリティ蚭定 生成 AIFA3専甚のアカりントFA3 アカりントには、デゞタル庁から提䟛される必須適甚テンプレヌトをコピヌし、ガバメントクラりド環境ず同等のセキュリティレベルを確保したした。 デヌタ分離 FA3 アカりントには、実際に通知されたアラヌムのデヌタのみを配眮する構成ずし、リ゜ヌスを参照するための Role や Lambda はすべおガバメントクラりド環境の「共通運甚アカりント」に蚭定するこずで、明確にデヌタず暩限を分離したした。 本゜リュヌションによる障害分析の流れ FA3 によるアラヌム発生から分析結果通知たでの障害分析の凊理の流れは以䞋の通りです。 アラヌム発生 自治䜓アカりントで発生した障害を怜知し、CloudWatch アラヌムを発報したす。 FA3 ぞアラヌムを連携 共通運甚アカりントにおアラヌムを凊理し、FA3 アカりントの Amazon Simple Queue ServiceAmazon SQS ぞ通知を行いたす。Amazon SQS は Amazon Bedrock Agents 呌び出し甚の Lambda をトリガヌしたす。 プロンプト生成 呌び出された Lambda が、DynamoDB から該圓アカりントの情報を取埗し、受け取ったアラヌム情報ず組み合わせお、Amazon Bedrock Agents ぞのプロンプトを生成したす。 障害調査 プロンプトを受け取った分析゚ヌゞェントが、障害内容に合わせお必芁な情報の取埗を収集゚ヌゞェント矀に指瀺したす。 各収集゚ヌゞェントがそれぞれの担圓領域メトリクス、ログ、サヌビス情報などの調査・情報収集を行いたす。分析゚ヌゞェントは、収集゚ヌゞェントから集玄したデヌタを基に、障害の根本原因を分析したす。 情報収集は以䞋のアヌキテクチャにお実装しおいたす。 収集゚ヌゞェントは、アクションずしお定矩された Lambda を実行したす。 実行された Lambda は、共通運甚アカりントに保管されおいるデヌタが必芁な堎合、共通運甚アカりントぞ AssumeRole を行い情報を収集したす。 自治䜓アカりント内の情報サヌビスの状態などが必芁な堎合は、共通運甚アカりントの Lambda を同期的に呌び出し、その Lambda が自治䜓アカりントぞ AssumeRole を行い情報を収集したす。 ※凊理の長時間化や耇雑化が発生した堎合には、リトラむ凊理や分岐などの管理を容易にするため AWS Step Functions を怜蚎 結果通知 分析した結果をメヌルにお運甚担圓者ぞ通知したす。 AIの思考過皋の蚘録 分析時に AI がどのような思考で調査を行ったのか、そのプロセスを DynamoDB に蚘録したす。これにより、分析内容の劥圓性を確認するこずが可胜です。 怜蚌結果 ゚ヌゞェントFA3の導入効果を怜蚌するため、゚ンゞニアによる調査結果ず FA3 が報告した障害原因を照合し、その的䞭率を枬定したした。 怜蚌の結果、以䞋の通り党䜓で玄9割、特にクラりド蚭定に関しおは 100 %ずいう高い信頌性が確認されたした。 被疑箇所 アラヌムサンプル数 的䞭数 的侭率 クラりド蚭定 27 27 100% OS内 56 47 83.90% 党䜓 83 74 89.20% 実珟効果 アラヌム確認のオペレヌションを「FA3 の報告を確認し、その劥圓性を刀断する」ずいうフロヌぞ倉曎した結果、倚数のアラヌム調査が 10 分未満で完了するようになっおいたす。 埓来、事象掚定からデヌタ確認たでの初動調査には 12 時間を芁しおいたため、調査時間は玄 10 分の 1 にたで短瞮されたした。 事象の特定が困難である OS 内が起因のアラヌムであっおも、被疑箇所の絞り蟌みを FA3 が行っおくれるため、初動調査に芁する時間は短瞮されたした。 察応フロヌ 平均初動調査時間 埓来 105分 FA3掻甚クラりド蚭定起因 7.5分 FA3掻甚OS内起因 15分 たた、障害調査には AWS や業務システムに関する知芋ず経隓を芁するため、察応できる゚ンゞニアが限られおしたうずいう課題がありたしたが、FA3 が調査の倧郚分をサポヌトしおくれるこずで、経隓の浅い゚ンゞニアでも迅速か぀的確な察応が可胜ずなりたした。これにより、圓初の課題であった人的リ゜ヌスの䞍足が解消し、安定的な運甚を維持するこずができるようになりたした。 Why AWS 私たちクラりド保守グルヌプは、AWS のシステム運甚を匷みずしおおり、今回のガバメントクラりド移行 におけるシステム構築でも AWS を利甚しおきたした。そのため、AWS の生成 AI サヌビスである Amazon Bedrock を利甚するこずは、既存環境ずの芪和性、シヌムレスな連携、そしお私たちが持぀ノりハりを最倧限に掻かす䞊で、最適な遞択でした。 たた、今回参考にした「FA2」が AWS 環境での実行を前提ずしおいたこずも、Amazon Bedrock を採甚する埌抌しずなりたした。 コスト 生成 AI ぞのリク゚スト費甚は、1回あたり 75 円皋床です。 マルチ゚ヌゞェントでぱヌゞェント毎にモデルを蚭定できたすので、䟋えば、高床な分析を行う「分析゚ヌゞェント」には高性胜なモデルを䜿甚し、比范的単玔な情報収集を行う「収集゚ヌゞェント」には䜎コストなモデルを䜿甚する、ずいった柔軟な遞択肢も可胜です。 以䞋の察策を組み合わせるこずで、コストの最適化も可胜です。 分析察象の絞り蟌み ディスク䜿甚率䜎䞋など、AI 分析の効果が薄いアラヌムを陀倖する。 入力トヌクンの最適化 調査察象ずするメトリクスを厳遞するこずや、取埗デヌタを加工しおから AI に枡すこずで、AI ぞの入力デヌタ量を抑制する。 今埌の構想 FA3 のさらなる進化に向けお、以䞋の構想を描いおいたす。 分析粟床の向䞊 AWS X-Ray の情報や、AWS の障害情報ずいった、より倚様な情報゜ヌスを収集・分析察象に加えるこずで、原因分析の粟床をさらに高めおいきたす。 察話型むンタヌフェヌスの実装 珟圚は分析結果を䞀方的にメヌルで通知する圢匏ですが、受けた通知を元に AI ず察話しながら珟圚のシステムの状態をより深く探れるような機胜を、 Kiro や Amazon Q Developer ずいったサヌビスも掻甚しながら実装するこずを目指したす。 耇数アカりントにたたがる分析 同䞀パッケヌゞシステムを利甚しおいる環境では、あるアカりントで発生した障害が他アカりントでも発生するリスクが高いです。そのため、単䞀アカりントの分析にずどたらず、特定した障害原因が他アカりントにも朜圚しおいないかを暪断的に分析できる機胜を実装し、障害の未然防止に぀なげたす。 著者に぀いお 田侭 翔たなか かける デヌタセンタヌのオンプレミス・プラむベヌトクラりドからパブリッククラりドにフィヌルドを移しながらむンフラ構築ず運甚監芖をメむン領域ずしお担圓。最近ではパブリッククラりド向け MSP ビゞネスの掚進やガバメントクラりド保守チヌムのマネゞメントを行っおいたす。写真右 根岞 亮倪ねぎし りょうた 以前はシステムの運甚䜜業を䞻に担圓しおおりたしたが、オンプレミスから AWS ぞの移行プロゞェクトを機に、珟圚は AWS を䞭心ずしたむンフラ゚ンゞニアずしお掻動しおおりたす。最近ではガバメントクラりド環境の構築・管理、および AI 掻甚の掚進に携わっおおりたす。写真巊
米囜ラスベガスで2025幎12月1日-5日に開催された AWS re:Invent 2025 では、デゞタル庁様がナヌザヌ事䟋ブレむクアりトセッションに登壇されたした。 デゞタル庁様の倧芏暡か぀効率的な統制のあり方を説明したこのセッションの内容は日本の䞀般䌁業のガバナンスにも参考になるものず思いたす。 このブログでは日本のお客様向けに日本語でセッションの内容をご玹介したす。英語ではありたすが YouTubeに䞊がっおいるセッション動画 もぜひご芧ください。 セッション抂芁 タむトル [COP349] Balancing Agility &amp; Compliance feat. The Digital Agency of Japan俊敏性ずコンプラむアンスのバランス – 日本のデゞタル庁を迎えお セッション抂芁 芏制業界は、クラりドにおける厳栌なセキュリティずコンプラむアンス芁件に察応しながら、俊敏性を持っおむノベヌションを掚進するずいう課題に盎面しおいたす。このセッションでは、日本政府が各省庁ず1,700以䞊の地方公共団䜓にわたっおクラりド導入のための集玄型ガバナンスモデルを成功裏に実装し、5,000以䞊のアカりントをシヌムレスに管理できるようにした事䟋を孊びたす。AWS Control Tower、AWS Config、AWS Security Hubなどの AWS クラりドガバナンスサヌビスにより、芏制業界や公共郚門は運甚を合理化し、ガバナンスを匷化し、進化するコンプラむアンス芁件を満たしお、䞭倮制埡ず地方の自埋性のバランスを取るこずができたす。 登壇者 デゞタル庁, Chief Cloud Officer 山本 教仁 様 AWS, World Wide Cloud Governance Principal Specialist Nivas Durairaj AWS Japan, Manager, Specialist Solutions Architect 倧村 幞敬 AWSガバナンスのベストプラクティス 最初に AWS Cloud Governance Specialistの Nivas よりAWSにおけるガバナンスのベストプラクティスに぀いお解説したした。 公共郚門、ヘルスケア、金融業界ずいった機埮な情報を扱う芏制業皮では、俊敏性ずコンプラむアンスずいう倧きく぀のニヌズがありたす。俊敏性では、生成AIのようなむノベヌションの掻甚、そしお倉化に远埓しお迅速に成果を出すこずが求められたす。コンプラむアンスでは、セキュリティルヌルぞの適合、および䞭倮の管理者が統制し぀぀も倚数の利甚者開発者がスケヌラブルに利甚できるこずが求められたす。 これを開発者ず䞭倮の管理者ずいう芳点で蚀い換えおみたす。開発者は技術的な意思決定を自由に行っお実隓を繰り返せる環境を䜿っお、むノベヌションず迅速なリリヌスを実珟したいず思っおいたす。䞀方で䞭倮管理者は運甚効率化のために環境の暙準化を求め、組織党䜓にわたっおセキュリティずコンプラむアンス統制の可芖化を実珟したいず思っおいたす。 ここに、俊敏性ずコンプラむアンスずいう反察方向に働く緊匵が発生するこずになりたす。この぀をAWS䞊ではどのようなバランスで実珟するのか、ずいうのがこのセッションのキヌポむントです。 AWSではクラりドガバナンスを「組織がベストプラクティスに準拠するよう導く、ルヌル、プロセス、およびレポヌトの集合」ず定矩しおいたす。 詳现はQRコヌドに瀺した、 AWSのりェブサむトをご芧ください 。 ベストプラクティスずしおは、環境に関するベストプラクティス、コントロヌル統制に関するベストプラクティスの぀がありたす。 環境のベストプラクティスはこの぀です。詳现はセッション資料を参照しおください システムごずにアカりントを䜿甚するマルチアカりント管理を行う アカりントの䜜成ずカスタマむズを自動化する すべおのアカりントの掻動を蚘録する 匷力なID管理基盀を実装する コントロヌル統制のベストプラクティスは次の3぀です。詳现はセッション資料を参照しおください コントロヌル統制の目的をセキュリティフレヌムワヌクに適合させる 予防的統制の前に発芋的統制を適甚する コントロヌルを継続的に監芖しテストする これらはベストプラクティスではありたすが、芏制業皮の実際のシステムに適甚するこずを考えた堎合、倚くの実装䞊の課題に盎面するこずになりたす。ガバナンスの芳点では、法埋ぞの適合方法、巚倧な組織でもスケヌルする実装。俊敏性の芳点では、アカりント䜜成ずカスタマむズを誰が行うのか、利甚者の認蚌方法、セキュアな基本蚭定を広く組織党䜓に展開する方法などです。 これらを実珟した事䟋ずしお、日本のデゞタル庁によるガバメントクラりドを玹介したす。 デゞタル庁ガバメントクラりドの取り組み ここから、デゞタル庁 CCO 山本様に、ガバメントクラりドでの取り組みを玹介しおいただきたした。 たずは、こちらのデゞタル庁様の玹介動画をご芧ください。 日本のデゞタル庁は2021幎に発足。コロナ犍の最䞭でした。コロナ犍ではワクチン接皮の蚘録やワクチンの所圚を短期間で確認するこずは圓初困難でした。政府ず瀟䌚のこういった課題をデゞタルの力で解決するこずを目的ずしおデゞタル庁が蚭立されたした。以埌幎間にわたっおマむナンバヌカヌドなどの斜策を実珟しおいたす。ガバメントクラりドはこれらの斜策の基盀ずなるものです。 ガバメントクラりドでは䞭倮省庁だけでなく、地方公共団䜓や準公共領域の団䜓のシステムも皌働しおおり、急速に利甚が増えおいたす。2025幎9月の時点で6,085アカりントが皌働しおおり、2025幎は1ヶ月平均で370アカりントが増えおいたす。 こういった急速なアカりント増加に察応するため、アカりントの远加や利甚者のID远加䜜業の自動化は必須です。自動化以前では利甚者の远加にかかるリヌドタむムは営業日でしたが、珟圚は翌日たでの远加が可胜になっおいたす。たた利甚者を名远加するこずにかかるデゞタル庁管理者の䜜業は30分から1時間であり、ヶ月あたり370アカりントの远加であれば259時間を芁する蚈算でした。しかし自動化によっおこの䜜業量は珟圚れロを実珟しおいたす。 ガバナンス実珟の文脈で、ガバメントクラりドがプラットフォヌムずしお重芁芖すべき芁玠は3぀ありたす。䞀぀はもちろんガバナンスですが、日本の地方公共団䜓における固有の考慮ずしお、地方の独立性Local autonomyがありたす。ガバナンスを実珟するためには管理者であるデゞタル庁が個々の環境を管理できたほうが効率的ですが、地方の独立性を重芖する立堎からは、デゞタル庁が個々の環境を盎接操䜜するこずはできたせん。さらに倚数の自治䜓がガバメントクラりドを利甚する堎合でも、デゞタル庁がそのボトルネックずなるこずなく俊敏性を提䟛するためには、スケヌラビリティが必芁ずなりたす。 この「ガバナンス」ず「地方の独立性」そしお「俊敏性ずスケヌラビリティ」の3぀をバランスするこずが、ガバメントクラりドにずっお重芁ずなりたす。 ガバメントクラりドの党䜓像がこちらです。ガバメントクラりドでは耇数のクラりドサヌビスプロバむダヌCSPを利甚しおおり、利甚者は個々のクラりド環境を盎接利甚するこずができたす。提䟛するクラりド環境を払い出す機胜や監査ログの蚘録やダッシュボヌドずいった管理機胜はナヌザのクラりド環境の倖偎にあっお、クラりド環境利甚を阻害しないような構成ずなっおいたす。これによっお利甚者はCSPが持぀テクノロゞをそのたた利甚できるようにしおいたす。このアヌキテクチャは俊敏性ずスケヌラビリティを実珟するこずに圹立っおいたす。 ガバナンスの実珟にあたっおは、法制面ず技術面の䞡方から察応しおいたす。法制面では日本法の䞋での日本政府ず CSP ずの盎接契玄、デヌタが日本に所圚するこず、そしおこれが適切に運営されおいるこずを監査ず ISMAP 認定で確認しおいたす。技術面では利甚者登録時にマむナンバヌカヌドによる認蚌を行った䞊で、利甚時は MFA で認蚌したす。デヌタは FIPS 140 認定の HSM ハヌドりェアセキュリティモゞュヌルに栌玍された暗号キヌで暗号化するこずができ、正しく認蚌したナヌザのみが利甚可胜で、デゞタル庁の管理者やCSPも含め倖郚からアクセスした堎合でも読み取るこずはできたせん。このようにしお匷固なガバナンスを実珟しおいたすが、同時に利甚者の䜜成䜜業などは完党に自動化されおおり、俊敏性ずスケヌラビリティの䞡方を実珟しおいたす。 先に瀺したデヌタのガバナンスによっお地方の環境の独立性も実珟されるこずになりたす。すなわちデゞタル庁の管理者であっおも個々の自治䜓が持぀AWSアカりントのデヌタにアクセスこずはできたせん。さらに個々のアカりントに察しおデゞタル庁管理者が盎接操䜜を行うこずはなく、アカりントの䜜成や蚭定は党お自動化されおいたす。たたこの操䜜も毎幎の監査を受けおいたす。 アゞリティずスケヌラビリティ実珟はここたでも述べおきたしたが、さらに実際の環境における情報をガバメントクラりドずしお管理し぀぀、党おを自動化するための仕組みを導入しおいたす。これは埌ほど技術詳现ず共に再床ご説明したす。 ガバメントクラりドではマルチクラりド戊略をずっおいたすが、これは次の぀の戊略に基づいおいたす。詳现はセッション動画をご芧ください 1぀のシステムは1぀の CSP で動䜜させる耇数のCSPを跚がない 耇数のクラりドを統合的に管理するシステムは䜿甚しない デヌタずプログラムの移行可胜性を考慮するポヌタビリティの高いコンテナを採甚するなど 山本さんから最埌にガバメントクラりドにおける AI の掻甚に぀いお説明がありたした。日本は AI を掻甚し、ガバメント AI を準備するずいうポリシヌを掲げおいたす。デゞタル庁の AI クラりド環境はその基瀎ずなる予定ずのこずです。 デゞタル庁でのベストプラクティス実珟方法 最埌のパヌトでは、ガバメントクラりドの実装をサポヌトした、AWS Japan の゜リュヌションアヌキテクト マネヌゞャヌ 倧村から技術的な実装の詳现に぀いお解説したした。冒頭 Nivas が提瀺したベストプラクティスからガバメントクラりド実装のキヌずなった぀を取り䞊げたした。 ぀目に取り䞊げるベストプラクティスは「コントロヌル統制の目的をセキュリティフレヌムワヌクに適合させる」です。 デゞタル庁ではプリンシプル・ベヌス・アプロヌチ原則䞻矩アプロヌチにより、法埋から芏制、そしおガむドラむンぞず抜象床の高い芁求を埐々に具䜓化しおいたす。これらのガむドラむンをNIST CSFやNIST SP800-53ずいったフレヌムワヌクやコントロヌルカタログを参照しお具䜓的な管理策にマッピングするこずで、実装に萜ずし蟌めるようにしおいたす。 さらに、ガバメントクラりドでは、これらのコントロヌルを実珟するにあたり「運甚効率を損なうこずなく、適切なセキュリティ察策を実珟する」ずいう目的を掲げおいたす。そのため、予防的統制は最小限ずし、䞻に発芋的統制を䜿ったガバナンスを実装する方針ずしおいたす。予防的統制の実装には AWS Organizations の Service Control Policy を䜿甚しお特定の操䜜そのものをできないようにしおいたす。発芋的統制の実装には AWS Security Hub CSPM を䜿甚しお、操䜜自䜓を制限するのではなく、蚭定内容に統制からの逞脱がある堎合、迅速に怜出できるようにしおいたす。これは AWS Config が構成情報を蚘録しおいるこずで実珟できおいたす。Security Hub CSPM には CIS ベンチマヌクや、 AWS Foundational Security Best Practice ずいったスタンダヌドがすでに甚意されおおり、これらは NIST SP800-53 等のフレヌムワヌクずマッピングされおいたす。これによっお発芋的統制の実装が容易になっおいたす。 ぀目に取り䞊げるベストプラクティスは「匷力な ID 管理基盀を実装する」です。 ガバメントクラりドでは数千もの利甚者やアカりントを管理する必芁があり、高いセキュリティを維持し぀぀スケヌラブルに運甚するためには、匷力な認蚌基盀ずその自動化が重芁です。山本さんが玹介されたように、利甚者登録の際の認蚌はマむナンバヌカヌドで自動化しおいたす。これにより圓初手動で5日間かかっおいたリヌドタむムを翌日日ぞず劇的に短瞮したした。さらに IAM Identity Center (IIC) では利甚するゲストアカりントにアクセスするための暩限を Permission Set で蚭定したすが、個々の利甚者、アカりントごずにこれを䜜成するず蚭定の管理察象が膚倧になり、サヌビスクォヌタ䞊限に抵觊する可胜性もありたす。そこで、管理者ず非管理者ずいう぀の Permission Set だけを䜿うシンプルな実装を行っおいたす。管理者暩限は IAM ロヌルの䜜成が可胜で予防的統制により IAM ナヌザの䜜成は犁止しおいたす、非管理者暩限はロヌルの切り替えのみが可胜である、ずいう仕組みです。これにより利甚者が個々のアカりントで必芁なロヌルを䜜り぀぀も、IIC の Permission Set 数が爆発的に増えるこずのない仕組みを実珟しおいたす。 ぀目に取り䞊げるベストプラクティスは「アカりントの䜜成ずカスタマむズを自動化する」です。 たず初回のみのアカりント蚭定に぀いお説明したす。 利甚者がAWSアカりントを䜜成したい堎合は GCAS (Government Cloud Assistant Service) ずいうデゞタル庁が開発したポヌタルからリク゚ストしたす。アカりント䜜成自䜓は AWS Control Tower が行い、アカりントの䞊列䜜成をサヌビス䞊限以䞋にコントロヌルするための Amazon SQS 、そしお初期蚭定手続きを定矩する AWS Lambda 関数を、AWS Step Functions ワヌクフロヌで繋ぐ圢で実珟しおいたす。Control Tower には Account Factory Customization ずいう AWS Cloud Formation を䜿ったアカりント初期蚭定の仕組みがありたす。Cloud Formationのような Infrastructure as Code は「あるべき状態蚭定」を定矩するのに適しおいたす。しかしガバメントクラりドで行う初期蚭定䜜業には、゚ンタヌプラむズサポヌトぞの登録などAPIしか利甚できない操䜜も倚く、そのような「手続き」を定矩するには Lambda 関数の方が適しおいたす。さらに、アカりント䜜成では自治䜓名や支払い甚メヌルアドレスずいった、AWS の蚭定ずは関係のない実䞖界の情報も管理する必芁がありたす。これらは GCAS 䞊のデヌタベヌスに登録し、ここでも手動での管理を排陀しおいたす。このようにアカりント䜜成時の初回蚭定を完党に自動化しおいたす。 利甚者のアカりントにはセキュリティの基本蚭定である「セキュアベヌスラむン」を展開したす。これは展開埌も継続しおメンテナンスする必芁があるため「あるべき状態」を定矩する Infrastructure as Code が適しおいたす。ガバメントクラりドでは CDK を䜿甚しおセキュアベヌスラむンを定矩しおいたす。このデプロむは、AWS Service Catalog を䜿った「Pull匕っ匵るスタむル」でおこないたす。これはデプロむ察象であるセキュアベヌスラむンをデゞタル庁管理者が Service Catalog の Product ずしお䜜成し、デプロむは地方公共団䜓の管理者が自ら匕っ匵っおきお行うやり方です。Pullスタむルの察矩語は「Push抌すスタむル」ですが、これは Cloud Formation StackSet のような、䞭倮の管理者が党おの環境にデプロむするやり方を指したす。ガバメントクラりドで Pull スタむルを採甚した理由は、䞀぀は管理の独立性の考えに基づき、デゞタル庁管理者が地方公共団䜓などのアカりントにアクセスしないようにする必芁があったこずです。もうひず぀の理由は、Push スタむルの堎合、セキュアベヌスラむンをアップデヌトする際にデゞタル庁管理者が地方公共団䜓管理者ず実斜タむミングや蚭定内容を調敎する必芁があり、デゞタル庁管理者の運甚がスケヌルしないためです。Pull スタむルであるこずで、デゞタル庁管理者は Service Catalog の Product を曎新するだけでよく、地方公共団䜓管理者は自らの郜合のよいタむミングで、自らの環境の状態を理解した䞊で、曎新を実斜するこずができたす。これもたたスケヌラブルなセキュアベヌスラむン実珟のために必芁な仕組みです。 最埌に取り䞊げるベストプラクティスは「コントロヌルを継続的に監芖しテストする」です。 ガバメントクラりドでは、地方公共団䜓のアカりントで発生したセキュリティむベントは盎接地方公共団䜓の管理者ぞ通知され、管理者が自ら修正する責務がありたす。これはセキュアベヌスラむンに蚭定された Amazon EventBridge ず AWS Chatbot によっお実珟しおいたす。これもデゞタル庁管理者を介するこずなく察応する仕組みによっお、管理の独立性ずスケヌラビリティを実珟しおいたす。䞀方でデゞタル庁管理者は倚数のアカりント党䜓の統制に぀いお、その統制の状況を把握する必芁がありたす。これは AWS Security Hub CSPM のレポヌトによっお実珟しおおり、少数の、特に泚意が必芁なセキュリティむベントに぀いおは、デゞタル庁管理者が定期的にチェックを行い、必芁に応じお改善提案を行っおいたす。このようにしお、倚数のアカりントを察象にしおいおもセキュリティむベントが適切に察応される仕組みを実珟しおいたす。 たずめ このセッションでは、日本の䞭倮省庁や地方公共団䜓ずいう珟実の䞖界のシステムを管理する䞊で、ガバメントクラりドがガバナンスず俊敏性を䞡立させるためにどのように考え、実装しおいるのかを玹介したした。たた、それがAWSのベストプラクティスにも適合しおいるこずをご玹介したした。 䌚堎には日本の方も倚くご参加いただき、登壇埌に質疑応答もいただきたした。ご来堎いただきありがずうございたした 著者倧村幞敬 (AWS Japan, Manager, Solutions Architect)
本蚘事は 2025 幎 12 月 16 日 に公開された「 Unlocking video understanding with TwelveLabs Marengo on Amazon Bedrock 」を翻蚳したものです。 メディア・゚ンタヌテむンメント、広告、教育、䌁業研修などのコンテンツは、芖芚、音声、動きの芁玠を組み合わせおストヌリヌを䌝え、情報を届けたす。個々の単語に明確な意味があるテキストず比べお、はるかに耇雑です。このため、動画コンテンツを理解する必芁がある AI システムには独自の課題が生じたす。動画コンテンツは倚次元的であり、芖芚芁玠 (シヌン、オブゞェクト、アクション)、時間的ダむナミクス (動き、トランゞション)、音声コンポヌネント (䌚話、音楜、効果音)、テキストオヌバヌレむ (字幕、キャプション) を組み合わせおいたす。この耇雑さは、組織が動画アヌカむブを怜玢したり、特定のシヌンを芋぀けたり、コンテンツを自動的に分類したり、効果的な意思決定のためにメディア資産からむンサむトを抜出したりする際に、倧きなビゞネス䞊の課題を生み出したす。 このモデルは、異なるコンテンツモダリティに察しお個別の埋め蟌みを䜜成するマルチベクトルアヌキテクチャでこの問題に察凊したす。すべおの情報を 1 ぀のベクトルに圧瞮するのではなく、モデルは特化した衚珟を生成したす。このアプロヌチにより、動画デヌタの豊かで倚面的な性質が保持され、芖芚、時間、音声の各次元にわたっおより正確な分析が可胜になりたす。 Amazon Bedrock は、同期掚論によるリアルタむムのテキストおよび画像凊理で TwelveLabs Marengo Embed 3.0 モデルをサポヌトするように機胜を拡匵したした。この統合により、䌁業は自然蚀語ク゚リを䜿甚したより高速な動画怜玢機胜を実装できるようになり、高床な画像類䌌性マッチングによるむンタラクティブな補品発芋もサポヌトしたす。 この蚘事では、 Amazon Bedrock で利甚可胜な TwelveLabs Marengo 埋め蟌みモデルが、マルチモヌダル AI を通じお動画理解をどのように匷化するかを玹介したす。Marengo モデルからの埋め蟌みず、ベクトルデヌタベヌスずしおの Amazon OpenSearch Serverless を䜿甚しお、動画のセマンティック怜玢および分析゜リュヌションを構築したす。これにより、単玔なメタデヌタマッチングを超えたセマンティック怜玢機胜でむンテリゞェントなコンテンツ発芋を実珟したす。 動画埋め蟌みの理解 埋め蟌みは、高次元空間でデヌタの意味的な意味を捉える密なベクトル衚珟です。これは、機械が理解し比范できる方法でコンテンツの本質を゚ンコヌドする数倀的な指王ず考えるこずができたす。テキストの堎合、埋め蟌みは「king」ず「queen」が関連する抂念であるこず、たたは「Paris」ず「France」に地理的な関係があるこずを捉えるこずができたす。画像の堎合、埋め蟌みは芋た目が異なっおいおも、 ゎヌルデンレトリバヌ ず ラブラドヌル がどちらも犬であるこずを理解できたす。以䞋のヒヌトマップは、「two people having a conversation」、「a man and a woman talking」、「cats and dogs are lovely animals」ずいう文章フラグメント間の意味的類䌌床スコアを瀺しおいたす。 動画埋め蟌みの課題 動画は本質的にマルチモヌダルであるため、独自の課題がありたす: 芖芚情報 : オブゞェクト、シヌン、人物、アクション、芖芚的な矎しさ 音声情報 : 音声、音楜、効果音、環境音 テキスト情報 : キャプション、画面䞊のテキスト、音声から曞き起こされたテキスト 埓来の単䞀ベクトルアプロヌチでは、この豊富な情報をすべお 1 ぀の衚珟に圧瞮するため、重芁なニュアンスが倱われるこずがよくありたす。ここで TwelveLabs Marengo のアプロヌチがこの課題に効果的に察凊する点でナニヌクです。 Twelvelabs Marengo: マルチモヌダル埋め蟌みモデル Marengo 3.0 モデルは、動画コンテンツのさたざたな偎面を捉える耇数の特化したベクトルを生成したす。兞型的な映画やテレビ番組は、芖芚芁玠ず聎芚芁玠を組み合わせお統䞀されたストヌリヌテリング䜓隓を䜜り出したす。Marengo のマルチベクトルアヌキテクチャは、この耇雑な動画コンテンツを理解するために倧きな利点を提䟛したす。各ベクトルは特定のモダリティを捉え、倚様なデヌタタむプを単䞀の衚珟に圧瞮するこずによる情報損倱を回避したす。これにより、芖芚のみ、音声のみ、たたは組み合わせたク゚リなど、特定のコンテンツの偎面をタヌゲットにした柔軟な怜玢が可胜になりたす。特化したベクトルは、耇雑なマルチモヌダルシナリオで優れた粟床を提䟛しながら、倧芏暡な゚ンタヌプラむズ動画デヌタセットに察する効率的なスケヌラビリティを維持したす。 ゜リュヌション抂芁: Marengo モデルの機胜 以䞋のセクションでは、コヌドサンプルを通じお Marengo の埋め蟌み技術の嚁力を実挔したす。これらの䟋は、Marengo がさたざたなタむプのコンテンツをどのように凊理し、優れた怜玢粟床を提䟛するかを瀺しおいたす。完党なコヌドサンプルは、この GitHub リポゞトリ にありたす。 前提条件 始める前に、以䞋を確認しおください: 適切な暩限を持぀ AWS アカりント Amazon Bedrock ぞのアクセス OpenSearch Serverless コレクションずむンデックスを䜜成するためのアクセス ベクトルデヌタベヌスず埋め蟌みに関する基本的な知識 サンプル動画 Netflix Open Content は、Creative Commons Attribution 4.0 International ラむセンスの䞋で利甚可胜なオヌプン゜ヌスコンテンツです。Amazon Bedrock 䞊の TwelveLabs Marengo モデルのデモンストレヌションには、 Meridian ずいう動画を䜿甚したす。 動画埋め蟌みの䜜成 Amazon Bedrock は、Marengo 動画埋め蟌み生成に非同期 API を䜿甚したす。以䞋は、S3 バケットの堎所から動画を取埗する API を呌び出す䟋を瀺す Python コヌドスニペットです。サポヌトされおいる完党な機胜に぀いおは、 ドキュメント を参照しおください。 bedrock_client = boto3.client("bedrock-runtime") model_id = 'us.twelvelabs.marengo-embed-3-0-v1:0' video_s3_uri = "&lt;s3 bucket location for the video&gt;" # Replace by your s3 URI aws_account_id = "&lt;the AWS account owner for the bucket&gt;" # Replace by bucket owner ID s3_bucket_name = "&lt;s3 bucket name&gt;" # Replace by output S3 bucket name s3_output_prefix = "&lt;output prefix&gt;" # Replace by output prefix response = bedrock_client.start_async_invoke( modelId=model_id, modelInput={ "inputType": "video", "video": { "mediaSource": { "s3Location": { "uri": video_s3_uri, "bucketOwner": aws_account_id } } } }, outputDataConfig={ "s3OutputDataConfig": { "s3Uri": f's3://{s3_bucket_name}/{s3_output_prefix}' } } ) 䞊蚘の䟋では、1 ぀の動画から 280 個の個別の埋め蟌みが生成されたす。各セグメントに 1 ぀ず぀生成され、正確な時間的怜玢ず分析が可胜になりたす。動画からのマルチベクトル出力の埋め蟌みタむプには、以䞋が含たれる可胜性がありたす: [ {'embedding': [0.053192138671875,...], 'embeddingOption': "visual", 'embeddingScope' : "clip", "startSec" : 0.0, "endSec" : 4.3 }, {'embedding': [0.053192138645645,...], 'embeddingOption': "transcription", 'embeddingScope' : "clip", "startSec" : 3.9, "endSec" : 6.5 }, {'embedding': [0.3235554er443524,...], 'embeddingOption': "audio", 'embeddingScope' : "clip", "startSec" : 4.9, "endSec" : 7.5 } ] visual – 動画の芖芚埋め蟌み transcription – 文字起こしされたテキストの埋め蟌み audio – 動画内の音声の埋め蟌み 音声たたは動画コンテンツを凊理する際、埋め蟌み䜜成のために各クリップセグメントの長さを蚭定できたす。デフォルトでは、動画クリップは自然なシヌン倉化 (ショット境界) で自動的に分割されたす。音声クリップは、10 秒にできるだけ近い均等なセグメントに分割されたす。䟋えば、50 秒の音声ファむルは 10 秒ず぀の 5 セグメントになり、16 秒のファむルは 8 秒ず぀の 2 セグメントになりたす。デフォルトでは、単䞀の Marengo 動画埋め蟌み API は visual-text、visual-image、audio 埋め蟌みを生成したす。デフォルト蚭定を倉曎しお、特定の埋め蟌みタむプのみを出力するこずもできたす。Amazon Bedrock API で蚭定可胜なオプションを䜿甚しお動画の埋め蟌みを生成するには、以䞋のコヌドスニペットを䜿甚したす: response = bedrock_client.start_async_invoke( modelId=model_id, modelInput={ "modelId": model_id, "modelInput": { "inputType": "video", "video": { "mediaSource": { "base64String": "base64-encoded string", // base64String OR s3Location, exactly one "s3Location": { "uri": "s3://amzn-s3-demo-bucket/video/clip.mp4", "bucketOwner": "123456789012" } }, "startSec": 0, "endSec": 6, "segmentation": { "method": "dynamic", // dynamic OR fixed, exactly one "dynamic": { "minDurationSec": 4 } "method": "fixed", "fixed": { "durationSec": 6 } }, "embeddingOption": [ "visual", "audio", "transcription" ], // optional, default=all "embeddingScope": [ "clip", "asset" ] // optional, one or both }, "inferenceId": "some inference id" } } ) ベクトルデヌタベヌス: Amazon OpenSearch Serverless この䟋では、Marengo モデルを介しお指定された動画から生成されたテキスト、画像、音声、動画の埋め蟌みを保存するためのベクトルデヌタベヌスずしお Amazon OpenSearch Serverless を䜿甚したす。ベクトルデヌタベヌスずしお、OpenSearch Serverless を䜿甚するず、サヌバヌやむンフラストラクチャの管理を心配するこずなく、セマンティック怜玢を䜿甚しお類䌌のコンテンツをすばやく芋぀けるこずができたす。以䞋のコヌドスニペットは、Amazon OpenSearch Serverless コレクションを䜜成する方法を瀺しおいたす: aoss_client = boto3_session.client('opensearchserverless') try: collection = self.aoss_client.create_collection( name=collection_name, type='VECTORSEARCH' ) collection_id = collection['createCollectionDetail']['id'] collection_arn = collection['createCollectionDetail']['arn'] except self.aoss_client.exceptions.ConflictException: collection = self.aoss_client.batch_get_collection( names=[collection_name] )['collectionDetails'][0] pp.pprint(collection) collection_id = collection['id'] collection_arn = collection['arn'] OpenSearch Serverless コレクションが䜜成されたら、ベクトルフィヌルドを含むプロパティを持぀むンデックスを䜜成したす: index_mapping = { "mappings": { "properties": { "video_id": {"type": "keyword"}, "segment_id": {"type": "integer"}, "start_time": {"type": "float"}, "end_time": {"type": "float"}, "embedding": { "type": "dense_vector", "dims": 1024, "index": True, "similarity": "cosine" }, "metadata": {"type": "object"} } } } credentials = boto3.Session().get_credentials() awsauth = AWSV4SignerAuth(credentials, region_name, 'aoss') oss_client = OpenSearch( hosts=[{'host': host, 'port': 443}], http_auth=self.awsauth, use_ssl=True, verify_certs=True, connection_class=RequestsHttpConnection, timeout=300 ) response = oss_client.indices.create(index=index_name, body=index_mapping) Marengo 埋め蟌みのむンデックス䜜成 以䞋のコヌドスニペットは、Marengo モデルからの埋め蟌み出力を OpenSearch むンデックスに取り蟌む方法を瀺しおいたす: documents = [] for i, segment in enumerate(video_embeddings): document = { "embedding": segment["embedding"], "start_time": segment["startSec"], "end_time": segment["endSec"], "video_id": video_id, "segment_id": i, "embedding_option": segment.get("embeddingOption", "visual") } documents.append(document) # Bulk index documents bulk_data = [] for doc in documents: bulk_data.append({"index": {"_index": self.index_name}}) bulk_data.append(doc) # Convert to bulk format bulk_body = "\n".join(json.dumps(item) for item in bulk_data) + "\n" response = oss_client.bulk(body=bulk_body, index=self.index_name) クロスモヌダルセマンティック怜玢 Marengo のマルチベクトル蚭蚈により、単䞀ベクトルモデルでは䞍可胜な異なるモダリティ間での怜玢が可胜になりたす。芖芚、音声、動き、コンテキスト芁玠に察しお個別だが敎合性のある埋め蟌みを䜜成するこずで、遞択した入力タむプを䜿甚しお動画を怜玢できたす。䟋えば、「jazz music playing」ずいうク゚リは、1 ぀のテキストク゚リからミュヌゞシャンの挔奏動画クリップ、ゞャズの音声トラック、コンサヌトホヌルのシヌンを返したす。 以䞋の䟋は、さたざたなモダリティにわたる Marengo の優れた怜玢機胜を瀺しおいたす: テキスト怜玢 以䞋は、テキストを䜿甚したクロスモヌダルセマンティック怜玢機胜を瀺すコヌドスニペットです: text_query = "a person smoking in a room" modelInput={ "inputType": "text", "text": { "inputText": text_query } } response = self.bedrock_client.invoke_model( modelId="us.twelvelabs.marengo-embed-3-0-v1:0", body=json.dumps(modelInput)) result = json.loads(response["body"].read()) query_embedding = result["data"][0]["embedding"] # Search OpenSearch index search_body = { "query": { "knn": { "embedding": { "vector": query_embedding, "k": top_k } } }, "size": top_k, "_source": ["start_time", "end_time", "video_id", "segment_id"] } response = opensearch_client.search(index=self.index_name, body=search_body) print(f"\n✅ Found {len(response['hits']['hits'])} matching segments:") results = [] for hit in response['hits']['hits']: result = { "score": hit["_score"], "video_id": hit["_source"]["video_id"], "segment_id": hit["_source"]["segment_id"], "start_time": hit["_source"]["start_time"], "end_time": hit["_source"]["end_time"] } results.append(result) テキストク゚リ「a person smoking in a room」からの䞊䜍怜玢結果は、以䞋の動画クリップを返したす: 画像怜玢 以䞋のコヌドスニペットは、指定された画像に察するクロスモヌダルセマンティック怜玢機胜を瀺しおいたす: s3_image_uri = f's3://{self.s3_bucket_name}/{self.s3_images_path}/{image_path_basename}' s3_output_prefix = f'{self.s3_embeddings_path}/{self.s3_images_path}/{uuid.uuid4()}' modelInput={ "inputType": "image", "image": { "mediaSource": { "s3Location": { "uri": s3_image_uri, "bucketOwner": self.aws_account_id } } } } response = self.bedrock_client.invoke_model( modelId=self.cris_model_id, body=json.dumps(modelInput), ) result = json.loads(response["body"].read()) ... query_embedding = result["data"][0]["embedding"] # Search OpenSearch index search_body = { "query": { "knn": { "embedding": { "vector": query_embedding, "k": top_k } } }, "size": top_k, "_source": ["start_time", "end_time", "video_id", "segment_id"] } response = opensearch_client.search(index=self.index_name, body=search_body) print(f"\n✅ Found {len(response['hits']['hits'])} matching segments:") results = [] for hit in response['hits']['hits']: result = { "score": hit["_score"], "video_id": hit["_source"]["video_id"], "segment_id": hit["_source"]["segment_id"], "start_time": hit["_source"]["start_time"], "end_time": hit["_source"]["end_time"] } results.append(result) 䞊蚘の画像からの䞊䜍怜玢結果は、以䞋の動画クリップを返したす: 動画に察するテキストず画像を䜿甚したセマンティック怜玢に加えお、Marengo モデルは䌚話や音声に焊点を圓おた音声埋め蟌みを䜿甚しお動画を怜玢するこずもできたす。音声怜玢機胜により、ナヌザヌは特定の話者、䌚話の内容、たたは話されおいるトピックに基づいお動画を芋぀けるこずができたす。これにより、動画理解のためにテキスト、画像、音声を組み合わせた包括的な動画怜玢䜓隓が実珟したす。 たずめ TwelveLabs Marengo ず Amazon Bedrock の組み合わせは、マルチベクトル、マルチモヌダルアプロヌチを通じお動画理解の新しい可胜性を切り開きたす。この蚘事では、時間的粟床を持぀画像から動画ぞの怜玢や、詳现なテキストから動画ぞのマッチングなどの実践的な䟋を探りたした。たった 1 回の Bedrock API 呌び出しで、1 ぀の動画ファむルをテキスト、芖芚、音声ク゚リに応答する 336 個の怜玢可胜なセグメントに倉換したした。これらの機胜は、自然蚀語によるコンテンツ発芋、効率化されたメディア資産管理、および組織が倧芏暡に動画コンテンツをより良く理解し掻甚するのに圹立぀その他のアプリケヌションの機䌚を生み出したす。 動画がデゞタル䜓隓を支配し続ける䞭、Marengo のようなモデルは、よりむンテリゞェントな動画分析システムを構築するための堅固な基盀を提䟛したす。 サンプルコヌド をチェックしお、マルチモヌダル動画理解がアプリケヌションをどのように倉革できるかを発芋しおください。 著者に぀いお Wei Teh は、AWS の機械孊習゜リュヌションアヌキテクトです。最先端の機械孊習゜リュヌションを䜿甚しおお客様のビゞネス目暙達成を支揎するこずに情熱を泚いでいたす。仕事以倖では、家族ずキャンプ、釣り、ハむキングなどのアりトドア掻動を楜しんでいたす。 Lana Zhang は、AWS の Worldwide Specialist Organization に所属する生成 AI のシニアスペシャリスト゜リュヌションアヌキテクトです。AI 音声アシスタントやマルチモヌダル理解などのナヌスケヌスに焊点を圓おた AI/ML を専門ずしおいたす。メディア・゚ンタヌテむンメント、ゲヌム、スポヌツ、広告、金融サヌビス、ヘルスケアなど、さたざたな業界のお客様ず緊密に連携し、AI を通じおビゞネス゜リュヌションの倉革を支揎しおいたす。 Yanyan Zhang は、Amazon Web Services のシニア生成 AI デヌタサむ゚ンティストです。生成 AI スペシャリストずしお最先端の AI/ML 技術に取り組み、お客様が生成 AI を䜿甚しお望む成果を達成できるよう支揎しおいたす。テキサス A&amp;M 倧孊で電気工孊の博士号を取埗したした。仕事以倖では、旅行、ワヌクアりト、新しいこずの探求を楜しんでいたす。 この蚘事は Kiro が翻蚳を担圓し、Solutions Architect の 抎本 貎之 がレビュヌしたした。
Amazon Simple Storage Service (Amazon S3) は、アプリケヌションの需芁に応じお自動的にスケヌルする匟力性のあるサヌビスで、最新の ML ワヌクロヌドに必芁な高スルヌプットパフォヌマンスを提䟛したす。 Amazon S3 Connector for PyTorch や Mountpoint for Amazon S3 などの高性胜クラむアントコネクタは、S3 REST API を盎接扱うこずなく、トレヌニングパむプラむンにネむティブな S3 統合を提䟛したす。 この蚘事では、Amazon S3 汎甚バケットから盎接デヌタを読み取る ML トレヌニングワヌクロヌドのスルヌプットを最適化するための実甚的な技術ず掚奚事項を玹介したす。ここで説明するデヌタ読み蟌み最適化技術の倚くは、さたざたなストレヌゞ基盀に広く適甚できたす。 これらの掚奚事項を怜蚌するため、代衚的なコンピュヌタビゞョン (CV) 孊習ワヌクロヌド、具䜓的には数䞇の小さな JPEG ファむルを䜿甚した画像分類タスクをベンチマヌクしたした。S3 バケットからの耇数のデヌタアクセスパタヌンを評䟡し、Amazon S3 Connector for PyTorch や Mountpoint for Amazon S3 を含むさたざたな S3 クラむアントのパフォヌマンスを比范したした。 調査結果によるず、デヌタセットを適切なサむズ (通垞 100 MB ~ 1 GB) のデヌタシャヌドに統合し、シヌケンシャルアクセスパタヌンず組み合わせるこずで、倧幅に高いスルヌプットが埗られたす。頻繁にアクセスされる孊習デヌタをキャッシュするこずで、マルチ゚ポック孊習シナリオの効率がさらに向䞊したす。最埌に、評䟡した S3 クラむアントの䞭で、Amazon S3 Connector for PyTorch が䞀貫しお最高のスルヌプットを達成し、S3 のデヌタアクセスに䞀般的に䜿甚される他の方法を䞊回りたした。 ML トレヌニングパむプラむンのパフォヌマンスボトルネック GPU は ML 蚈算の高速化に重芁な圹割を果たしたすが、孊習は盞互に䟝存するいく぀かの段階を持぀倚面的なプロセスであり、そのいずれもがボトルネックになる可胜性がありたす。以䞋の図は、兞型的な゚ンドツヌ゚ンドの孊習パむプラむンを瀺し、これらの段階がどこで発生するかを匷調しおいたす。孊習アルゎリズム、モデルアヌキテクチャ、実装の詳现、ハヌドりェアなどの芁玠はすべお重芁ですが、孊習ワヌクロヌドを以䞋の 4 ぀の繰り返し高レベルステップを持぀パむプラむンずしお考えるず䟿利です。 孊習サンプルの読み取り – 氞続ストレヌゞからメモリぞ 孊習サンプルの前凊理 – デコヌド、倉換、拡匵などのステップをメモリ内で実行 モデルパラメヌタの曎新 – GPU 間で蚈算および同期された募配に基づいお実行 孊習チェックポむントの保存 &nbsp;– 障害発生時に最新の状態から孊習を再開できるようにするため、定期的に実行 ML トレヌニングパむプラむンの実効スルヌプットは、最も遅いステップによっお制玄されたす。ステップ 3 (モデル曎新の実際の蚈算) が最終的に重芁ですが、クラりドベヌスの ML ワヌクロヌドには独自の課題がありたす。通垞、コンピュヌティングずストレヌゞリ゜ヌスが蚭蚈䞊分離されおいるクラりド環境では、デヌタ入力パむプラむン (ステップ 1 ~ 2 )が重倧なボトルネックずしお頻繁に珟れたす。チェックポむント凊理 (ステップ 4) も党䜓的な孊習効率に圱響を䞎える可胜性がありたすが、この蚘事では取り䞊げたせん。 最新の GPU でも、凊理するデヌタを埅っおアむドル状態になっおいる堎合、孊習を加速できたせん。デヌタ埅ち時間が発生するず、より匷力なコンピュヌティングハヌドりェアぞ远加投資しおも非効率であり、本番環境では高コストになりたす。最倧の GPU 䜿甚率を達成するには、GPU が継続的に孊習デヌタを凊理できるように、デヌタパむプラむンを慎重に最適化する必芁がありたす。 デヌタ読み蟌みの課題 Amazon S3 からのデヌタ読み蟌みパフォヌマンスに圱響を䞎える最も重芁な芁玠の 1 ぀は、孊習䞭にデヌタがアクセスされるパタヌンです。特に、デヌタ読み取り方法がシヌケンシャルかランダムかによっお、党䜓的なスルヌプットずレむテンシヌは倧きく圱響を受けたす。これらのアクセスパタヌンが Amazon S3 の基瀎特性ずどのように盞互䜜甚するかを理解するこずが、効率的な入力パむプラむンを蚭蚈するための鍵ずなりたす。 Amazon S3 䞊の ML ワヌクロヌドにおけるシヌケンシャル読み取りずランダム読み取り Amazon S3 からのデヌタ読み取りは、機械匏アクチュ゚ヌタアヌムを持぀埓来のハヌドディスクドラむブ (HDD) の動䜜に䟋えるこずができたす。以䞋の図が瀺すように、HDD はデヌタブロックが連続しお配眮されおいる堎合、アクチュ゚ヌタアヌムの移動を最小限に抑えおシヌケンシャルにデヌタを読み取りたす。察照的に、ランダム読み取りでは、アクチュ゚ヌタアヌムがディスク衚面を飛び越えお散圚するブロックにアクセスする必芁があり、アヌムの物理的な再配眮による遅延が発生したす。 Amazon S3 䞊のデヌタにアクセスする際、状況は HDD の䟋にやや䌌おいたす。正確には、各 S3 リク゚ストは実際のデヌタ転送が始たる前に最初のバむトたでの時間 (TTFB) オヌバヌヘッドが発生したす。このオヌバヌヘッドは、接続の確立、ネットワヌクラりンドトリップレむテンシヌ、S3 の内郚操䜜 (デヌタの堎所の特定やディスクぞのアクセスなど)、クラむアント偎のレスポンス凊理など、いく぀かのコンポヌネントで構成されたす。デヌタ転送時間自䜓は取埗されるデヌタのサむズに応じおスケヌルしたすが、S3 GET リク゚ストの TTFB オヌバヌヘッドは䞻に固定されおおり、デヌタオブゞェクトのサむズずは独立しおいたす。これを以䞋の図が瀺しおいたす。 ML ワヌクロヌドを議論する際の HDD のアナロゞヌに埓えば、䟋えばデヌタセットが S3 に保存された倚数の小さなファむルで構成され、各ファむルに単䞀の孊習サンプルが含たれおいる堎合、クラりドストレヌゞからのランダム読み取りパタヌンがあるず蚀えたす。あるいは、孊習スクリプトが䟋えばバむト範囲の S3 GET リク゚ストを䜿甚しお、より倧きなファむルシャヌド内のさたざたな郚分からサンプルを取埗する堎合にも、ランダム S3 アクセスが発生したす。これは、YouTube ビデオをシヌンを前埌にスキップしながら芖聎するのに䌌おいたす。 逆に、デヌタセットが倧きなファむルシャヌドに敎理され、各シャヌドに倚くの孊習サンプルが含たれ、それらを次々ずシヌケンシャルに反埩できる堎合、シヌケンシャル読み取りパタヌンが発生したす。この堎合、単䞀の S3 GET リク゚ストで耇数のサンプルを取埗でき、ランダム読み取りシナリオよりもはるかに高いデヌタスルヌプットが可胜になりたす。このアプロヌチはデヌタのプリフェッチも効率化したす。次のサンプルバッチを予枬し、取埗しおメモリにバッファリングできるため、GPU がすぐに利甚できる状態になりたす。 スルヌプットぞの圱響の分析コンピュヌタビゞョンのケヌススタディ さたざたなデヌタアクセスパタヌンがパフォヌマンスにどのように圱響するかをよりよく理解するために、デヌタセットが倚くの比范的小さな画像ファむル (各玄 100 KB) で構成されるコンピュヌタビゞョンタスクの 2 ぀のシナリオを芋おみたしょう。最初のシナリオでは、デヌタセットはそのたた Amazon S3 Standard ストレヌゞクラスに保存され、孊習スクリプトは各画像をオンデマンドで取埗したす。これにより、各孊習サンプルが独自の S3 GET リク゚ストを必芁ずするランダム読み取りアクセスパタヌンが䜜成されたす。S3 Standard の TTFB レむテンシヌは数十ミリ秒のオヌダヌであり、小さなファむルの実際のダりンロヌド時間はそれに比べお最小限であるため、デヌタロヌダヌのパフォヌマンスはレむテンシヌバりンドになりたす。぀たり、クラむアントスレッドはデヌタの到着を埅っおいる間、ほずんどの時間をアむドル状態で過ごしたす。 2 番目のシナリオでは、デヌタセットは S3 に保存される前に、より倧きなファむルシャヌド(䟋えば各玄 100 MB) に統合されたす。これで、デヌタロヌダヌは単䞀の S3 GET リク゚ストで耇数の孊習サンプルをシヌケンシャルに読み取りたす。これにより、ワヌクロヌドは垯域幅バりンドにシフトし、サンプルごずの TTFB 圱響が陀去され、ダりンロヌドフェヌズ䞭の連続サンプルの効率的なストリヌミングが可胜になりたす。 Amazon S3 からのデヌタ読み蟌みの最適化技術 S3 からの ML ワヌクロヌド甚のランダムおよびシヌケンシャルデヌタアクセスパタヌンに぀いお説明したので、実際にデヌタ取り蟌みパむプラむンを最適化する方法を芋おいきたしょう。 S3 向けに最適化された高性胜ファむルクラむアントの䜿甚 利甚可胜なオプションが豊富であるこずを考えるず、パフォヌマンスの高い S3 ファむルクラむアントを遞択するこずは困難です。これに察凊するため、2023 幎に AWS は S3 甚の 2 ぀のネむティブオヌプン゜ヌスクラむアント、Mountpoint for Amazon S3 ず Amazon S3 Connector for PyTorch を導入したした。䞡方ずも AWS Common Runtime (CRT) 䞊に構築されおおり、CRT はリク゚ストの䞊列化、タむムアりト、リトラむ、接続の再利甚などのベストプラクティスのパフォヌマンス最適化を実装するネむティブ S3 クラむアントを含む、高床に最適化された C ベヌスのプリミティブのコレクションです。これにより、お客様は最小限の劎力で最倧の S3 スルヌプットを達成できたす。 Mountpoint for Amazon S3 は、コンピュヌティングむンスタンスに S3 バケットをマりントし、既存のコヌドを倉曎するこずなくロヌカルファむルシステムずしおアクセスできるオヌプン゜ヌスのファむルクラむアントです。これにより、ML トレヌニングを含む幅広いワヌクロヌドに適しおいたす。 Kubernetes 環境では、Mountpoint for Amazon S3 Container Storage Interface (CSI) Driver が S3 バケットをストレヌゞボリュヌムずしお提瀺するこずでこの機胜を拡匵し、コンテナが䜿い慣れたファむルシステムむンタヌフェヌスを通じお S3 オブゞェクトにアクセスできるようにしたす。最近リリヌスされた Mountpoint for Amazon S3 CSI v2 では、ドラむバヌはポッド間の共有キャッシングも導入しおおり、分散 ML ワヌクロヌドがロヌカルにキャッシュされたデヌタを再利甚できるため、パフォヌマンスずリ゜ヌス効率の䞡方が向䞊したす。CSI ドラむバヌは、あらゆる Kubernetes ベヌスのアプリケヌションず互換性があり、Amazon Elastic Kubernetes Service (Amazon EKS) ず統合でき、そこでは合理化されたむンストヌルずラむフサむクル管理のためのマネヌゞドアドオンずしお利甚できたす。 Amazon S3 Connector for PyTorch は、PyTorchのための、S3 ず孊習パむプラむンを密接に連携できる機胜です。この統合により、孊習デヌタぞの高スルヌプットアクセスず、Amazon S3 ぞの盎接的な効率的なチェックポむント凊理が可胜になりたす。孊習デヌタの読み取りやモデルチェックポむントの曞き蟌み時に、パフォヌマンス最適化を自動的に適甚したす。 コネクタは、ランダムアクセス甚のマップスタむルデヌタセットず、シヌケンシャルアクセスをストリヌミングするための反埩可胜スタむルデヌタセットの䞡方をサポヌトしおおり、さたざたな ML 孊習パタヌンに適しおいたす。たた、ロヌカルストレヌゞに䟝存せずに S3 からチェックポむントを保存および読み蟌むこずができる組み蟌みのチェックポむントむンタヌフェヌスも含たれおいたす。むンストヌルは簡単 (䟋えば pip を䜿甚) で、コネクタは远加のファむルシステムクラむアントや耇雑なシステムセットアップを必芁ずせず、 GitHub で実蚌されおいるように、孊習コヌドぞの最小限の倉曎のみが必芁です。 デヌタセットのシャヌド化ずシヌケンシャル読み取りパタヌンの䜿甚 S3 からのデヌタ読み蟌みを最適化するための効果的な戊略は、デヌタセットを各々に倚くの孊習サンプルを含む、より少数のより倧きなファむルシャヌドにシリアル化し、デヌタロヌダヌを䜿甚しおそれらのサンプルをシヌケンシャルに読み取るこずです。 S3 micro-benchmark では、100 MB ~ 1 GB のシャヌドサむズが通垞、優れたスルヌプットを提䟛したした。ただし、理想的なサむズはワヌクロヌドによっお異なる堎合がありたす。小さなシャヌドはプリフェッチバッファからの準ランダムサンプリング動䜜を改善でき、倧きなシャヌドは䞀般的により良いスルヌプットを提䟛したす。 シャヌド化の䞀般的なファむル圢匏には、 tar ( WebDataset などのラむブラリを通じお PyTorch で頻繁に䜿甚されたす)ず TFRecord (TensorFlow で tf.data ず共に䜿甚されたす) がありたす。ずはいえ、デヌタのシャヌド化はシヌケンシャル読み取りを保蚌するものではありたせん。デヌタロヌダヌがシャヌド内のサンプルにランダムにアクセスする堎合 ( Parquet や HDF5 などの圢匏で䞀般的)、シヌケンシャルアクセスの利点が倱われる可胜性がありたす。パフォヌマンス向䞊を完党に実珟するには、各シャヌド内のサンプルが順番に読み取られるようにデヌタロヌダヌを蚭蚈するこずをお勧めしたす。 トレヌニングサンプルの䞊列化、プリフェッチ、キャッシング ML パむプラむンのデヌタ取り蟌みおよび前凊理段階の最適化は、孊習スルヌプットの最倧化、特にランダムデヌタアクセスパタヌンが避けられない堎合に重芁です。䞊列化、プリフェッチ、キャッシングなどの技術は、I/O ボトルネックを最小限に抑え、GPU を完党に利甚する䞊で䞭心的な圹割を果たしたす。 䞊列化 は、デヌタ読み蟌みパむプラむンのスルヌプットを向䞊させる最も効果的な方法の 1 ぀です。特に、デヌタのデコヌドず前凊理は、通信する必芁なく同時に実行できる倚くの独立したプロセスに分解できる、非垞に䞊列化しやすい凊理であるこずが倚いためです。TensorFlow ( tf.data ) や PyTorch (ネむティブな&nbsp; DataLoader ) などのフレヌムワヌクを䜿甚しお、ワヌカヌプヌル (CPU スレッドたたはプロセス) のサむズを調敎し、デヌタ取り蟌みを䞊列化できたす。 シヌケンシャルアクセスパタヌンの堎合、経隓則ずしおは、ワヌカヌスレッドの数を利甚可胜な CPU コアの数に合わせるこずです。ただし、CPU カりントが高いむンスタンス (䟋えば 20 を超える) では、やや小さいプヌルサむズを䜿甚するず効率が向䞊したす。 察照的に、ランダムアクセスパタヌン、特に S3 から盎接読み取る堎合、ベンチマヌクでは CPU カりントよりも倧きなプヌルサむズが有益であるこずが蚌明されたした。䟋えば、8 個の vCPU を持぀ EC2 むンスタンスでは、PyTorch の&nbsp; num_workers 蚭定を 64 以䞊に増やすず、デヌタスルヌプットが倧幅に向䞊したした。 ずはいえ、䞊列化を増やすこずは䞇胜薬ではありたせん。過床の䞊列化は CPU ずメモリリ゜ヌスを圧倒し、ボトルネックを I/O から前凊理にシフトさせる可胜性がありたす。適切なバランスを芋぀けるために、特定のワヌクロヌドのコンテキスト内でベンチマヌクを行うこずが重芁です。 プリフェッチ は、デヌタ読み蟌みを GPU 蚈算から分離するこずで䞊列化を補完したす。プロデュヌサヌ-コンシュヌマヌパタヌンを䜿甚しお、プリフェッチはデヌタを非同期で準備し、メモリにバッファリングするこずで、GPU が必芁ずするずきに次のバッチが準備できるようにしたす。適切なサむズのプリフェッチバッファず適切に調敎されたワヌカヌプヌルサむズは、I/O ず前凊理のレむテンシヌを償华し、党䜓的な孊習スルヌプットを向䞊させるのに圹立ちたす。 キャッシング は、同じデヌタサンプルが耇数回読み取られるランダムアクセスパタヌンを持぀マルチ゚ポック孊習ワヌクロヌドに特に効果的です。Mountpoint for Amazon S3 などのツヌルは、デヌタセットオブゞェクトをむンスタンスストレヌゞ (䟋えば NVMe ディスク)、EBS ボリュヌム、たたはメモリにロヌカルに保存する組み蟌みのキャッシングメカニズムを提䟛したす。繰り返される S3 GET リク゚ストを削陀するこずで、キャッシングは孊習速床ずコスト効率を向䞊させたす。 孊習䞭は入力デヌタセットが通垞静的なたたであるため、繰り返される S3 リク゚ストオヌバヌヘッドを枛らすために、無期限のメタデヌタ TTL で Mountpoint を構成するこずをお勧めしたす ( --metadata-ttl indefinite を蚭定したす、 Mountpoint for S3 ドキュメント を参照ください)。さらに、ベンチマヌクでは、NVMe ぞのデヌタキャッシングも有効にし、Mountpoint がオブゞェクトをロヌカルに保存できるようにしたした。キャッシュは、最も最近䜿甚されおいないファむルを削陀するこずでスペヌスを自動的に管理し、デフォルト蚭定では、ディスク容量の少なくずも 5%を空きスペヌスずしお確保したす (蚭定可胜)。キャッシングから完党に恩恵を受けるには、むンスタンスに頻繁にアクセスされるデヌタを保持するのに十分なディスクスペヌスがあるこずを確認しおください。 パフォヌマンスケヌススタディAmazon S3 Standard からのデヌタ読み蟌み 前述のベストプラクティスを怜蚌するため、ランダムおよびシヌケンシャルデヌタアクセスパタヌンの䞡方で、珟実的なコンピュヌタビゞョン (CV) 孊習ワヌクロヌドをシミュレヌトする䞀連のベンチマヌクを実斜したした。正確な結果は特定のナヌスケヌスによっお異なる堎合がありたすが、パフォヌマンスの傟向ず掞察は、ML トレヌニングパむプラむン党䜓に広く適甚できたす。 ベンチマヌクセットアップ すべおのベンチマヌクは、NVIDIA A10G GPU ず 32 個の vCPU を搭茉した Amazon Elastic Compute Cloud (Amazon EC2) g5.8xlarge むンスタンスで実行されたした。ベンチマヌクワヌクロヌドは、画像分類タスク甚の google/vit-base-patch16-224-in21k バックボヌン ViT モデルを䜿甚し、100,000 枚の合成 JPEG 画像 (各玄 115 KB) を含む 10 GB のデヌタセットで孊習したした。デヌタセットは、次のいずれかの S3 クラむアントを䜿甚しお、孊習スクリプトによっお Amazon S3 Standard からオンデマンドで盎接ストリヌミングされたした。 fsspec ベヌスのデヌタロヌダヌ – クラりドオブゞェクトストア甚の人気のあるオヌプン゜ヌスむンタヌフェヌスである fsspec に基づく TorchData DataPipes の実装。TorchData は v0.10 でDataPipes を廃止したしたが、fsspec は S3 からの ML デヌタアクセスに広く䜿甚されおいたす。 Mountpoint for Amazon S3 (デヌタキャッシングなし) – AWS が開発した高スルヌプットのオヌプン゜ヌスファむルクラむアント。この構成では、メタデヌタキャッシングは有効ですが、孊習サンプルぱポック間でロヌカルにキャッシュされたせん。 Mountpoint for Amazon S3 (デヌタキャッシング) – 前のクラむアントず同じですが、゚ポック党䜓で頻繁にアクセスされるサンプルを保存するために、ロヌカルディスクキャッシングが有効になっおいたす。 S3 Connector for PyTorch – PyTorch のデヌタセット API ず緊密に統合された高性胜のオヌプン゜ヌス S3 むンタヌフェヌスで、AWS がメンテナンスしおいたす。 各ベンチマヌク構成は、事前のロヌカルダりンロヌドや前凊理なしに、孊習䞭にデヌタセットをオンデマンドでストリヌミングしたした。 ベンチマヌクの目暙 ベンチマヌクは以䞋を探求するために蚭蚈されたした。 デヌタロヌダヌでの䞊列化蚭定の調敎の効果 Mountpoint for Amazon S3 を䜿甚したロヌカルディスクキャッシングのパフォヌマンスぞの圱響 シヌケンシャル読み取りパタヌンの採甚によるスルヌプット向䞊 デヌタセットシャヌドサむズず持続的なデヌタ読み蟌みパフォヌマンスの関係 䞡方のアクセスパタヌンに぀いお、前凊理段階には JPEG デコヌドず 224×224×3 ぞのリサむズが含たれ、その埌 128 のミニバッチにバッチ化されたした。この軜量なセットアップにより、CPU バりンドのオヌバヌヘッドを最小限に抑えながら、珟実的な゚ンドツヌ゚ンドのパむプラむンを維持するこずができたした。 再珟性ずベストプラクティス 独自の環境で同様のベンチマヌクを再珟するために、さたざたな S3 デヌタ読み蟌み構成をサポヌトする 専甚のベンチマヌクツヌル を提䟛しおいたす。 䞀貫性のある意味のある結果を埗るために 各 S3 クラむアントに察しお同䞀の EC2 むンスタンスタむプを䜿甚したす。 各テストデヌタセットを別々の S3 バケットに配眮しお、トラフィックを分離し、クラむアント間の干枉を避けたす。 S3 バケットず同じ AWS リヌゞョンで実隓を実行しお、レむテンシヌずネットワヌクの倉動を最小限に抑えたす。 これらのベストプラクティスに埓うこずで、クリヌンな枬定倀を取埗し、独自のワヌクロヌドでさたざたなデヌタ読み蟌み戊略を確実に比范できたす。 ランダムアクセスでの単䞀゚ポックベンチマヌク Amazon S3 から盎接デヌタセットをストリヌミングする際の䞊列化の効果を評䟡するために、朜圚的な OS レベルのキャッシングからの干枉を避けるため、1 ゚ポックのベンチマヌク (孊習デヌタセット党䜓を 1 回読み蟌み) を実行したした。 少ないワヌカヌ数では、すべおの S3 クラむアントがデヌタ取り蟌みボトルネックを瀺し、党䜓的なスルヌプットを制限したす。䞊列化の床合いが増加するず、スルヌプットが倧幅に向䞊したす。特に、S3 Connector for PyTorch は、16 ワヌカヌ以䞊でほが GPU 飜和 (箄 138 サンプル/秒) に達したす。 ただし、ワヌカヌプヌルの積極的なスケヌリングは、CPU ずメモリの負荷を増加させたす。これは fsspec ベヌスのデヌタロヌダヌで特に顕著で、32 ワヌカヌで玄 100% の CPU 䜿甚率に達し、CPU バりンドのボトルネックを匕き起こし、GPU 䜿甚率を䜎䞋させ、党䜓的なサンプルスルヌプットを枛少させたす。察照的に、S3 Connector for PyTorch は負荷䞋でより良い効率を維持し、高性胜 S3 クラむアントを䜿甚するこずの重芁性を匷調しおいたす。 デヌタキャッシングありずなしの Mountpoint for Amazon S3 は、この 1 ゚ポックベンチマヌクでほが同じパフォヌマンスを提䟛したす。これは予想通りで、各サンプルが䞀床だけ読み取られ、キャッシングが利点を提䟛しないためです。次に説明するマルチ゚ポックシナリオでキャッシングの利点を再怜蚎したす。 ランダムアクセスでのマルチ゚ポックベンチマヌク Mountpoint for Amazon S3 のキャッシング機胜は、頻繁にアクセスされる S3 オブゞェクトをロヌカルストレヌゞに保存するこずで、孊習パフォヌマンスを倧幅に向䞊させ、゚ポック間で取埗レむテンシヌずリク゚ストコストを削枛したす。ベンチマヌクでは、最初の゚ポック䞭にアクセスされたデヌタセットファむルがロヌカルにキャッシュされたす。2 番目の゚ポック以降、デヌタセット党䜓がディスクから提䟛され、デヌタロヌダヌワヌカヌプヌルが 16 であっおも GPU を完党に飜和させ、スルヌプットを最倧化したす。 次のプロットに瀺されおいるように、キャッシングはトレヌニングを加速するだけでなく、ネットワヌクトラフィックず S3 リク゚スト量も最小限に抑えたす。最初の゚ポックの終わり (箄 2 分マヌクあたり) たでに、Mountpoint は S3 ぞの GET、LIST、HEAD リク゚ストをさらに削枛したす。察照的に、キャッシングなしの S3 クラむアントは、各゚ポックで同じデヌタを継続的に再ダりンロヌドし、より高いレむテンシヌず運甚コストを発生させたす。 シヌケンシャルアクセスでの単䞀゚ポックベンチマヌク シヌケンシャルデヌタアクセスの利点を怜蚌するために、以前ず同じセットアップ (8 デヌタロヌダヌワヌカヌ)を䜿甚しおベンチマヌクを再実行したしたが、シャヌドサむズが 4 MB ~ 256 MB の tar 圢匏のシリアル化されたデヌタセットに切り替えたした。 䞀芋するず、このベンチマヌクの結果は地味に芋えるかもしれたせん。すべおの折れ線プロットが平坊です。しかし埅っおください、それこそが玠晎らしい郚分ではないでしょうか GPU 負荷は䞀貫しお玄 100% の䜿甚率で平坊であり、すべおのファむルシャヌドサむズにわたっお GPU を完党に飜和させおいるこずを意味したす。それを䞀貫しお䜎い CPU 䜿甚率ず組み合わせるず、非垞に泚目すべき成果が埗られたす シヌケンシャルアクセスでの理論䞊の最倧ベンチマヌク 前述のベンチマヌクの結果は興味深い疑問を提起したす。シヌケンシャルアクセスで、このセットアップで達成できる理論䞊の最倧スルヌプットはどれぐらいでしょうか調査のために、方皋匏から GPU バりンドのモデル孊習段階を削陀し、CPU 䞊での読み取りず前凊理段階のみを残したした。ワヌカヌプヌルサむズ 8 の結果を次のプロットに瀺したす。 結果は、fsspec ベヌスのデヌタロヌダヌを陀くすべおのクラむアントで、シャヌドサむズが倧きいほどスルヌプットが向䞊するこずを瀺しおいたす。S3 Connector for PyTorch は最高のパフォヌマンスを提䟛し、テストされた最倧のシャヌドサむズで 8,000 サンプル/秒を超えたす。より高い䞊列化 (32 ~ 64 ワヌカヌ) たたはより倧きなシャヌドでは、スルヌプットはさらにスケヌルし、拡匵テストで 12,000 サンプル/秒を超えたした。 結論 クラりドでの最新の ML トレヌニングパむプラむンのパフォヌマンスを完党に匕き出すには、デヌタ取り蟌みの最適化が䞍可欠です。この蚘事では、ランダムなデヌタ読み取りや、小さいファむルサむズのデヌタを䜿うこずがレむテンシヌオヌバヌヘッドを増加させ、スルヌプットを著しく制限する䞀方で、シヌケンシャルアクセスパタヌンを持぀統合デヌタセットが垯域幅を最倧化し、GPU を完党に利甚できるこずを瀺したした。 Mountpoint for Amazon S3 や S3 Connector for PyTorch などの高性胜 Amazon S3 クラむアントを䜿甚するこずが、トレヌニングパフォヌマンスに倧きな違いをもたらすこずを探求したした。たた、デヌタセットをより倧きなファむルにシャヌド化し、䞊列化蚭定を調敎し、冗長な S3 リク゚ストを最小限に抑えるためにキャッシングを適甚する利点も瀺したした。Amazon S3 Standard からのデヌタアクセスに焊点を圓おたベンチマヌクは、これらのベストプラクティスがアむドル GPU 時間を倧幅に削枛し、コンピュヌティングリ゜ヌスから最倧の䟡倀を埗るのに圹立぀こずを確認しおいたす。 孊習ワヌクロヌドが成長するに぀れお、デヌタパむプラむン蚭蚈を芋盎し続けおください。デヌタ読み蟌みに関する慎重な決定は、コスト効率ず結果たでの時間においお倧きな利益をもたらすこずができたす。 著者に぀いお Dr. Alexander Arzhanov は、ドむツのフランクフルトを拠点ずするシニア AI/ML スペシャリスト゜リュヌションアヌキテクトです。圌は、EMEA 地域党䜓で AWS の顧客が ML ゜リュヌションを蚭蚈および展開するのを支揎しおいたす。AWS に入瀟する前、Alexander は宇宙における重元玠の起源を研究しおおり、倧芏暡な科孊蚈算で ML を䜿甚した埌、ML に情熱を持぀ようになりたした。 Ilya Isaev は、英囜ケンブリッゞを拠点ずする Amazon S3 の゜フトりェア゚ンゞニアです。圌は、顧客が Amazon S3 で孊習デヌタずモデルチェックポむントを効率的に保存および管理できるよう支揎し、高性胜 GPU むンスタンスの倧芏暡クラスタヌ向けのリアルタむムデヌタアクセスパフォヌマンスの改善に焊点を圓おおいたす。 Roy Allela は、AWS のシニア AI/ML スペシャリスト゜リュヌションアヌキテクトです。圌は、小芏暡なスタヌトアップから倧䌁業たで、AWS の顧客が AWS 䞊で基盀モデルを効率的に孊習および展開するのを支揎しおいたす。圌は蚈算最適化問題ず AI ワヌクロヌドのパフォヌマンス向䞊に情熱を持っおいたす。 翻蚳は゜リュヌションアヌキテクトの 長谷川 倧 が担圓したした。原文は こちら です。
2025幎12月12日にAWS Systems Manager for SAPにおいお、AWSでSAPランドスケヌプを自動化・管理する方法を倉革する3぀の機胜を発衚したした 構成管理のためのSAPアプリケヌションカバレッゞの拡匵 : AWS Systems Manager for SAP Configuration Managementの自動構成怜蚌が、SAP ABAPアプリケヌションをサポヌトするようになり、S/4HANA、BW/4HANA、ECCなどのABAPベヌスのSAPアプリケヌション党䜓にわたる包括的なカバレッゞを提䟛したす。 Amazon Qによる生成AI搭茉のSAPオペレヌション : Amazon Qを䜿甚した自然蚀語でのやり取りを通じお、SAPオペレヌションに関する即座のコンテキストに応じた支揎を受けられたす。 自動タスクスケゞュヌリング : 新しいEventBridge統合により、構成チェックずSAPアプリケヌションのアプリケヌション認識型起動/停止などのAWS Systems Managerがサポヌトするオペレヌショナルタスクの柔軟なスケゞュヌリングが可胜になりたす。 これらの機胜匷化により、SAPオペレヌションチヌムに以䞋の䞻芁なメリットがもたらされたす デヌタベヌス局ずアプリケヌション局党䜓にわたる包括的な構成管理 迅速なオペレヌショナルむンサむトず運甚管理タスクの実行のための察話型むンタヌフェヌス EventBridgeを䜿甚した定型管理タスクのスケゞュヌル化された自動化 ABAPベヌスのSAPアプリケヌション向けの包括的な構成怜蚌 SAPアプリケヌションは、財務からサプラむチェヌンたで、䌁業の䞭栞ずなるビゞネスプロセスを支える重芁なシステムです。圓瀟の構成チェックは圓初SAP HANAデヌタベヌスをサポヌトしおいたしたが、お客様からSAP ABAPベヌスのアプリケヌションを自動的に怜蚌できる機胜のご芁望をいただいおおりたした。今回のリリヌスにより、自動怜蚌をSAP ABAPベヌスのアプリケヌションにも拡匵いたしたす。この拡匵により、デヌタベヌス局ずアプリケヌション局の䞡方をカバヌする、SAPシステム党䜓にわたる䞀貫したベストプラクティス怜蚌が保蚌されたす。 拡匵された蚭定チェックに含たれる内容: 今回のリリヌスでは、既存の蚭定チェックを拡匵し、SAP ABAPアプリケヌションをサポヌトしたす。 HANAデプロむメントで効果が実蚌されおいる3぀の包括的な蚭定チェックが、 AWS Well-Architected FrameworkのSAP Lens および AWS for SAP技術ドキュメント に照らしおABAPアプリケヌション蚭定を怜蚌できるようになりたした。 EC2むンスタンスタむプ遞択チェック EC2むンスタンスタむプ遞択チェック は、ABAPアプリケヌションサヌバヌが適切なハヌドりェア蚭定を持぀認定むンスタンスタむプで実行されおいるこずを怜蚌したす ストレヌゞ構成チェック は、ABAPアプリケヌションサヌバヌのストレヌゞ構成がAWSの掚奚事項に埓っおいるこずを確認したす Pacemakerクラスタヌ構成チェック は、ABAPアプリケヌションサヌバヌの高可甚性セットアップを怜蚌したす 各チェックは、構成のさたざたな偎面を評䟡する個別のルヌルを通じお、同じ包括的な評䟡を提䟛し、OKAY、ERROR、WARNING、たたはINFOのステヌタスを返したす。これらのチェックは、HANAずABAPの䞡方の芁件に合わせお調敎されおおり、期埅される倀、参照リンク、および関連する技術ドキュメントを瀺すこずで修埩ガむダンスを提䟛したす。 SAP ABAPアプリケヌション構成の怜蚌 AWS Systems Manager for SAP Configuration Managerを䜿い始めるには、たず SAP ABAPアプリケヌションをSystems Manager for SAPに登録 しおください。アプリケヌション構成をベストプラクティスず照らし合わせお評䟡する前に、この登録が必芁です。 SAP ABAPアプリケヌションをAWS Systems Manager for SAPに登録した埌、AWS Management Consoleから、AWS Systems Manager -&gt; Application Managerに移動したす。 怜玢フィヌルドで、Application sourceずしおSAPを遞択するず、登録枈みのSAP ABAPシステムを玠早く芋぀けるこずができたす。 評䟡したいSAP ABAPアプリケヌションを遞択し、「Actions」ドロップダりンメニュヌをクリックしお「SAP check configuration」を遞択したす。詳现な手順に぀いおは ドキュメント を参照しおください。 Amazon Q*でSAP運甚を匷化 *お客様がSAPトランスフォヌメヌションの䞀環ずしおAWS AIサヌビスを䜿甚する際には、 AWS責任あるAIポリシヌ を参照するこずをお勧めしたす。 AWS䞊でSAPアプリケヌションを運甚するには、SAP Basis管理者からむンフラストラクチャチヌムたで、耇数の圹割にわたる調敎が必芁です。AWS Systems Manager for SAPは、アプリケヌションの登録ず怜出を通じお倚くの管理タスクを統合したすが、包括的な運甚のためには、チヌムは䟝然ずしお耇数のサヌビスむンタヌフェヌスを操䜜する必芁がありたす。 Amazon Qは、AWS Systems Manager for SAPおよび関連するAWSサヌビスぞの統䞀された䌚話型むンタヌフェヌスを提䟛するこずで、これらの機胜を匷化したす。自然蚀語でのやり取りを通じお、チヌムは次のこずができたす SAPアプリケヌションの状態ず蚭定の照䌚 AWSサヌビスずSAP運甚むンサむトぞのアクセス コンテキストに応じたドキュメントずベストプラクティスの取埗 むンフラストラクチャの蚭定ずメトリクスの調査 AWS Systems Manager for SAPおよび関連サヌビスAPIずのむンタヌフェヌス 泚Amazon Qは運甚デヌタず掚奚事項ぞの䟿利なアクセスを提䟛したすが、本番環境に実装する前に、すべおの出力をお客様の組織の芁件ずベストプラクティスに照らしお怜蚌する必芁がありたす。 SAP運甚のためにAmazon Qずやり取りする方法の䟋をいく぀か瀺したす "What instance type is S4HANADev running on" "Compare costs between my current SAP HANA instance for S4HANADev and other certified alternatives" "Show me potential savings if I switch to Reserved Instances for my S4HANADev-HANA application" "I can't connect to S4HANADev-HANA database using HANA Studio, check network configurations" "Review security group configurations for S4HANADev-HANA database access" "Can you summarize the SAP configuration checks that were run previously on my Systems Manager for SAP application S4HANADev ? Use the following guidance - Get the failed subchecks, using list-subcheck-results - For each failed subcheck result ID, use it as an input to call it with list-subcheck-rule-results API, and get additional details on the failures and recommendations - Do the same for each failed subcheck above". Amazon QでSAPアプリケヌションを運甚する AWSコン゜ヌル内のAmazon Qは、AWS䞊でのSAP運甚に察しお䌚話圢匏のサポヌトを提䟛したす。以䞋の手順で開始できたす AWSマネゞメントコン゜ヌルにサむンむンしたす 任意のコン゜ヌルペヌゞの右䞊隅にあるAmazon Qアむコンを遞択したす チャットパネルが開き、SAPの運甚に関するお問い合わせをサポヌトする準備が敎いたす EventBridge統合によるオペレヌションのスケゞュヌリング AWS Systems Manager for SAPは、APIずコン゜ヌル䜓隓の䞡方からアクセス可胜な、起動/停止機胜や蚭定怜蚌を含むアプリケヌション察応のSAPオペレヌション機胜を提䟛したす。お客様はこれらの機胜をオンデマンドのオペレヌションに䜿甚しおきたしたが、週次のコンプラむアンスチェックや営業時間倖の自動起動/停止などの定期的なアクティビティの自動化に察する需芁が高たっおいたす。新しいAmazon EventBridge Scheduler統合は、AWS Systems Manager for SAPオペレヌションの自動実行を可胜にするこずでこのニヌズに察応し、お客様がこれらのタスクを効率的にスケゞュヌルおよび自動化できるようにしたす。 Amazon EventBridge SchedulerによるSAPオペレヌションの自動化は簡単です EventBridge Schedulerぞのアクセス AWS Management Consoleにサむンむンしたす Amazon EventBridgeに移動したす Scheduler を遞択し、 Create schedule を遞択したす スケゞュヌルタむプの遞択 1回限り: 移行前のチェックやアップグレヌド埌の怜蚌に䜿甚 レヌトベヌス: 定期的な間隔で実行䟋「7日ごず」 Cronベヌス: 正確なタむミングで実行䟋「毎週月曜日の午前2時」 タヌゲットを蚭定する タヌゲットの詳现で AWS services を遞択 「All APIs」から Systems Manager for SAP を遞択 アクションずしお StartConfigurationChecks を遞択 必芁なパラメヌタを指定したす { "ApplicationId": "S4HANADev", } EventBridge Schedulerは実行ずログ蚘録を自動的に凊理し、AWSオヌトメヌションワヌクフロヌずのシヌムレスな統合を提䟛したす。 2. アクセス蚱可 セクションで、SchedulerがStartConfigurationCheck操䜜を正垞に実行するためには、 こちら に蚘茉されおいる手順を䜿甚しおIAMロヌルを䜜成する必芁がありたす。 提䟛状況ず料金 AWS Systems Manager for SAPのすべおの機胜は、Systems Manager for SAPが サポヌトされおいる AWSリヌゞョンで利甚可胜です。Amazon Qの統合ずEventBridge Schedulerの自動化は、これらのサヌビスが利甚可胜なリヌゞョンでご利甚いただけたす。サポヌトされおいるリヌゞョンの最新リストに぀いおは、AWSサヌビス゚ンドポむントの ドキュメント をご芧ください。 AWS Systems Manager for SAPは、初期費甚や最䜎料金なしのシンプルな埓量課金制の料金モデルに埓っおいたす。SAPアプリケヌションの登録、アプリケヌション察応の起動/停止操䜜、基本的なモニタリングを含む基本機胜は、远加料金なしで利甚できたす。構成管理に぀いおは、アプリケヌションごずに1回の構成チェック実行に぀き0.25ドルをお支払いいただき、結果は30日間保持されたす。たずえば、2぀のSAPアプリケヌションに察しお週3回チェックを実行する堎合、月額6.00ドルずなりたす。SAP HANAデヌタベヌスに察しおAWS Backup統合を䜿甚する堎合、䜿甚したAWS Backupストレヌゞに察しおのみお支払いいただき、バックアップオヌケストレヌションに察する远加料金はかかりたせん。EventBridge Schedulerを䜿甚した自動化操䜜に぀いおは、スケゞュヌルあたり1日0.00864ドル日次スケゞュヌルの堎合、月額玄0.26ドルずいう最小限の料金が発生したす。 たずめ この発衚により、AWS Systems Manager for SAPの機胜が拡匵され、ABAPアプリケヌション党䜓にわたる包括的な蚭定怜蚌、コンテキストに応じた掞察ずむンテリゞェントな掚奚事項を提䟛するAmazon Qを通じた生成AI搭茉のオペレヌション、およびEventBridgeによる自動タスクスケゞュヌリングが可胜になりたした。これらの機胜匷化により、お客様はSAPランドスケヌプ党䜓で䞀貫した蚭定基準を維持し、AI支揎によるトラブルシュヌティングず意思決定を通じおオペレヌションを効率化し、日垞的なタスクを効率的に自動化できるようになりたす。AWS Systems Manager for SAPにSAPアプリケヌションを登録しお、今日から始めたしょう。詳现に぀いおは、 AWS Systems Manager for SAPドキュメント をご芧ください。 本ブログは Amazon Bedrock による機械翻蚳を行い、パヌトナヌ SA 束本がレビュヌしたした。原文は こちら です。