<?xml version="1.0" encoding="UTF-8" standalone="no"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" version="2.0">

<channel>
	<title>Amazon Web Services ブログ</title>
	<atom:link href="https://aws.amazon.com/jp/blogs/news/feed/" rel="self" type="application/rss+xml"/>
	<link>https://aws.amazon.com/jp/blogs/news/</link>
	<description/>
	<lastBuildDate>Wed, 08 Apr 2026 12:20:55 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>大豊建設が AWS で実現した大豊 AI：業務の様々な場面で活躍する生成 AI 活用事例</title>
		<link>https://aws.amazon.com/jp/blogs/news/genai-case-study-taiho/</link>
		
		<dc:creator><![CDATA[Suguru Sugiyama]]></dc:creator>
		<pubDate>Wed, 08 Apr 2026 12:20:55 +0000</pubDate>
				<category><![CDATA[General]]></category>
		<guid isPermaLink="false">6a7d63209d3a4fb69acab8393a511eddfb5e26ff</guid>

					<description>はじめに 本ブログは 大豊建設株式会社 様と Amazon Web Services Japan 合同会社が共 […]</description>
										<content:encoded>&lt;h2&gt;はじめに&lt;/h2&gt; 
&lt;p&gt;本ブログは &lt;a href="https://www.daiho.co.jp/"&gt;大豊建設株式会社&lt;/a&gt; 様と Amazon Web Services Japan 合同会社が共同で執筆しました。&lt;/p&gt; 
&lt;p&gt;みなさん、こんにちは。ソリューションアーキテクト 杉山 卓 です。&lt;/p&gt; 
&lt;p&gt;本ブログでは、大豊建設様が AWS を基盤として生成 AI を活用した「大豊 AI」を構築し、社内で活用されている取り組みを紹介します。議事録の自動生成、資料の要約、社内規程の検索、そして日常的な疑問への回答まで、業務の様々な場面で活躍しています。&lt;/p&gt; 
&lt;p&gt;2025 年 6 月の全社展開から約 8 ヶ月で、307 名の社員が利用し、累計 32,709 回以上の利用回数を記録するなど、幅広く活用されています。規程検索だけでも約 250 時間の業務時間削減を実現し、文書作成やファイル分析を含めると、さらに大きな効果が生まれています。今後は、施工計画書の作成支援や社内資料作成支援といった、エージェント技術を活用した業務効率化も目指しています。&lt;/p&gt; 
&lt;h2&gt;建設企業が直面する業務効率化の課題&lt;/h2&gt; 
&lt;p&gt;大豊建設様は、土木・建築工事を中心とした総合建設会社です。現場での施工管理や営業活動において、情報へのアクセス、文書作成、そして知識の共有は業務品質を維持する上で重要な要素です。&lt;/p&gt; 
&lt;p&gt;しかし、大豊建設様では長年、業務効率化において複数の課題を抱えていました。&lt;/p&gt; 
&lt;p&gt;まず、&lt;strong&gt;社内の情報にアクセスしにくい&lt;/strong&gt;という問題がありました。従来の文書管理システムでは、フォルダ構成が複雑で、どこに何の情報が格納されているのかが分かりにくい状態でした。「社内規程は、月に数回の頻度でアップデートが必要です」と大豊建設の落藤様が語るように、監査室の指摘や法改正に伴い社内規程が頻繁に更新されます。変更された規程がどこに格納されているのか探すのに時間がかかり、キーワード検索を利用しても意図しない文書まで検索結果に含まれてしまうという問題がありました。&lt;/p&gt; 
&lt;p&gt;社内規程の検索は、出張旅費規程のような全社員に関わるものから、土木工事における業者との契約に関する専門的なものまで多くの種類があります。現場監督や営業担当者が必要な情報を素早く見つけられないことは、業務効率の低下だけでなく、コンプライアンス上のリスクにもつながっていました。&lt;/p&gt; 
&lt;p&gt;また、工事が完了すると完成資料がシステムに格納されますが、その後は十分に活用されないまま保管されるだけでした。過去の類似工事の知見を活かすことができれば、施工計画書の作成や見積もりの精度向上に役立つはずですが、そのための仕組みが整っていませんでした。&lt;/p&gt; 
&lt;p&gt;次に、&lt;strong&gt;文書作成の負担が大きい&lt;/strong&gt;という課題がありました。資料や議事録の作成など、日々の業務には多くの文書作業が伴います。特に議事録の作成は、会議の内容を思い出しながら整理するのに時間がかかることも珍しくありません。&lt;/p&gt; 
&lt;p&gt;さらに、&lt;strong&gt;中堅社員不足による知識共有の難しさ&lt;/strong&gt;もありました。建設業界全体で抱える課題でもありますが、大豊建設様でも年齢層に偏りがあり、特に中堅社員と呼べる世代が不足しています。「現場によっては若手社員とベテランの所長がペアで工事を監督するケースも多く、若手からは『質問があっても聞くタイミングを逃しがち』という声を聴くことがありました」と落藤様は振り返ります。若手社員が基本的な疑問を気軽に相談できる環境が不足していました。&lt;/p&gt; 
&lt;p&gt;こうした課題を解決するため、生成 AI に法律や社内ルール、過去の知見などを連携させ、必要な情報を即座に得られるようにすることで、ミスを減らし、誰もが共通の情報にアクセスできる環境を整えることを目指されました。&lt;/p&gt; 
&lt;h2&gt;「大豊 AI」を自作する挑戦&lt;/h2&gt; 
&lt;p&gt;大豊建設様が生成 AI の活用を検討し始めたのは、2023 年末の頃でした。&lt;/p&gt; 
&lt;p&gt;それ以前から社内では竣工データの利活用を目指した検索システムの構築に取り組んでいました。しかし、検索精度を高めるためにはドキュメントへの適切なラベリングなど、システム外の運用負荷が高く、広く利用されるには至っていませんでした。&lt;/p&gt; 
&lt;p&gt;そういった中、生成 AI が登場しました。「人手によるラベリングなどの労力をある程度削減しながら、社内の文書検索ができるようになるのでは」という期待から、本格的な検討が始まります。さらに、同業他社が既に AWS 環境で生成 AI の検索システムを構築し、活用事例を発表していたことも後押しとなりました。「同業他社様ができるなら、私たちも実現できるはず」という前向きな姿勢で、大豊 AI を作成するプロジェクトを推進しました。&lt;/p&gt; 
&lt;p&gt;プロジェクトは段階的に進められました。2024 年 3 月、まずは LINE WORKS を使った AI ボットの構築から開始。モバイル端末から手軽に検索できる利便性を確認した一方で、長文のドキュメントを閲覧する際の見づらさといった課題も明らかになりました。&lt;/p&gt; 
&lt;p&gt;そこで 2024 年 10 月には、Web サイトでの提供へと方針を転換しました。同時に、生成 AI ワーキンググループを設置しました。本社だけでなく、各支店から業務に精通し、生成 AI 活用に興味を持つ 11 名のメンバーを集め、協力会社である &lt;a href="https://wonder-soft.com/"&gt;ワンダーソフト株式会社&lt;/a&gt; の 1 名を含めた 12 名体制でスタートしました。&lt;/p&gt; 
&lt;p&gt;生成 AI ワーキンググループでは、2024 年 10 月から 2025 年 4 月まで、計 4 回のミーティングを実施しました。第一回では「こういうことをやった方が便利なのではないか」という機能要件を議論し、その後のミーティングでは構築した機能の説明と今後の方向性を全体で検討していきました。現場の声を取り入れながら段階的に機能を拡充していったことが、後の成功につながります。&lt;/p&gt; 
&lt;p&gt;そして 2025 年 6 月、全社員に大豊 AI の展開を開始しました。社内の掲示板などを通じて「大豊 AI を作ったので、ぜひ使ってみてください」と案内し、興味を持った社員から順次利用が始まっていきました。&lt;/p&gt; 
&lt;h2&gt;実際にどのように活用しているのか&lt;/h2&gt; 
&lt;p&gt;「大豊 AI で、実際にどんなことをしているのか？」という疑問は、DX 推進を検討する多くの方が持つものです。ここでは、現場での具体的な活用シーンを紹介します。&lt;/p&gt; 
&lt;h3&gt;利用頻度の高い機能トップ 5&lt;/h3&gt; 
&lt;p&gt;ワンダーソフト様の協力のもと、大豊 AI の利用状況を分析したところ、以下の 5 つの機能が多く利用されていることが分かりました。最も利用頻度が高いのはフリートークで、次いで社内規程検索、ファイルチャット、社内資料の全文検索、ユースケース別検索の順となっています。&lt;/p&gt; 
&lt;p&gt;以下、それぞれの機能について、具体的な使われ方を紹介します。&lt;/p&gt; 
&lt;h3&gt;① フリートーク：気軽な質問から専門知識まで&lt;/h3&gt; 
&lt;p&gt;フリートークは、生成 AI と自由に対話できる機能です。利用データを分析したところ、質問内容は以下のように分類されました。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;日常的な質問や翻訳、Excel の関数検索など：60.9%&lt;/li&gt; 
 &lt;li&gt;建設業に特化した専門的な質問：24.1%&lt;/li&gt; 
 &lt;li&gt;文章生成：8.3%&lt;/li&gt; 
 &lt;li&gt;文章の添削・校正：6.7%&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;一見すると専門性を有しない質問が 6 割を占めているように見えますが、これには意味があります。「身近なことを AI に気軽に質問する」という習慣が社内に根付くことで、本当に必要な時にスムーズに活用できる土台が形成されているのです。&lt;/p&gt; 
&lt;h4&gt;メール作成：正確で丁寧な文面を手軽に&lt;/h4&gt; 
&lt;p&gt;業務の中で、メールの作成は日々発生する作業の一つです。しかし、適切な言葉遣いや内容の整理に負担を感じることも少なくありません。特に、社外の取引先や発注者への連絡では、正しい敬語表現やビジネスマナーに沿った文面が求められるため、一通のメール作成に想定以上の時間がかかるケースもあります。&lt;/p&gt; 
&lt;p&gt;大豊 AI では、フリートークやユースケース別の「メール作成」テンプレートを活用することで、伝えたい要点を入力するだけで、正しい日本語で適切な文面を生成してくれます。例えば、「工事の進捗報告を発注者に送りたい」「会議日程の変更を関係者に連絡したい」といった要件を伝えるだけで、ビジネスメールとしてふさわしい構成・敬語表現を備えた文面が提示されます。メール作成は一見すると小さな業務に思えますが、1日に何通も作成する社員にとっては、積み重なることで大きな時間削減効果をもたらしています。&lt;/p&gt; 
&lt;h4&gt;&lt;em&gt;若手社員の学習支援&lt;/em&gt;&lt;/h4&gt; 
&lt;p&gt;施工計画について分からないことがあっても、ベテランの方に聞くのは気が引けるという若手社員がいます。そんな時、フリートークで「〇〇工法のメリットとデメリットを教えて」「△△の場合の注意点は？」といった質問をすることで、基礎知識を習得できます。ある程度調査したうえでベテランの方に相談すればよいため、若手社員の心理的負担が軽減され、ベテラン社員の時間も有効活用できるようになりました。&lt;/p&gt; 
&lt;h3&gt;② 規程検索：必要な情報に素早くアクセス&lt;/h3&gt; 
&lt;p&gt;社内規程の検索は、大豊 AI 構築の当初からの主要な目的の一つでした。&lt;/p&gt; 
&lt;p&gt;従来の文書管理システムでは、フォルダ構成が複雑で、どこに何の情報が格納されているのかが分かりにくい状態でした。現在は、&lt;a href="https://aws.amazon.com/jp/bedrock/knowledge-bases/"&gt;Amazon Bedrock Knowledge Bases&lt;/a&gt; を活用した検索機能により、自然な文章で質問するだけで、関連する規程を見つけられるようになりました。&lt;/p&gt; 
&lt;h3&gt;③ ファイルチャット：文書分析の効率化&lt;/h3&gt; 
&lt;p&gt;ファイルチャットは、PDF などのファイルをアップロードして、その内容について AI に質問できる機能です。議事録作成、文書の内容確認、添削など、様々な場面で活用されています。&lt;/p&gt; 
&lt;h4&gt;&lt;em&gt;議事録の自動生成&lt;/em&gt;&lt;/h4&gt; 
&lt;p&gt;最も効果が大きいのが、議事録の自動生成です。工事現場では定期的にミーティングが実施されます。従来は、会議後に記憶を頼りに議事録を作成していましたが、これには時間がかかることもありました。&lt;/p&gt; 
&lt;p&gt;現在は、会議を文字起こしでテキスト化し、それを PDF にして大豊 AI のファイルチャットにアップロードします。「この内容から議事録を作成して」と依頼すると、大豊 AI が議事録の初稿を生成してくれます。担当者は手直しするだけで完成するため、議事録作成にかかる時間が大幅に短縮されました。&lt;/p&gt; 
&lt;p&gt;この仕組みは海外の現場でも活用されています。大豊建設様では海外での事業も展開しています。現地の言語で行われた会議の内容を整理し、議事録として仕上げる作業は従来大きな負担でしたが、大豊 AI を活用することでこの工程が大幅に効率化されました。国内・海外を問わず、同じ仕組みで業務効率化が実現されています。&lt;/p&gt; 
&lt;h3&gt;④ 社内資料の全文検索：過去の知見と法令情報への横断アクセス&lt;/h3&gt; 
&lt;p&gt;大豊 AI の検索対象は社内資料から外部サイトまで多岐にわたります。外部サイトの例として、法令に関する資料が掲載されている政府の「e-Gov」から労働安全衛生法などの情報を PDF 化して検索対象としています。「手すりの高さに関するルールを教えて」と質問すると、大豊 AI は e-Gov から取得した法令データと社内規程を横断検索し、関連する情報を提示します。複数の資料を探し回る必要がなくなり、正確な情報に素早くアクセスできるようになりました。&lt;/p&gt; 
&lt;h3&gt;⑤ ユースケース別検索：AI 初心者にも使いやすいテンプレート機能&lt;/h3&gt; 
&lt;p&gt;大豊 AI は、リリース当初、ユーザー自身でプロンプトを設定できる仕様にしていました。しかし、AI 初心者にとって詳細なプロンプト設定は難易度が高く、利用の障壁となっていることが判明しました。そこで、管理者側で一般的なユースケース別にプロンプトを事前設定し、ユーザーは選択するだけで利用できる機能を開発しました。2025 年 12 月にリリースしたこの機能は、利用回数の上位にランクインしており、一定の需要があることが確認できています。&lt;/p&gt; 
&lt;p&gt;現在提供している 8 種類のユースケースは以下の通りです：&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;文書校正&lt;/li&gt; 
 &lt;li&gt;文書チェック&lt;/li&gt; 
 &lt;li&gt;議事録作成&lt;/li&gt; 
 &lt;li&gt;議事録要約&lt;/li&gt; 
 &lt;li&gt;メール作成&lt;/li&gt; 
 &lt;li&gt;Excel 関数検索&lt;/li&gt; 
 &lt;li&gt;用語解説&lt;/li&gt; 
 &lt;li&gt;翻訳&lt;/li&gt; 
&lt;/ul&gt; 
&lt;h2&gt;自社業務に最適化できる生成 AI 基盤の選択&lt;/h2&gt; 
&lt;p&gt;これらのユースケースを支える技術基盤として、大豊建設様は AWS を選択しました。その理由は大きく三つあります。&lt;/p&gt; 
&lt;p&gt;まず、&lt;strong&gt;既存システムとの統合のしやすさ&lt;/strong&gt;です。大豊建設様では、社内アプリケーションの多くをワンダーソフト様に依頼して構築していました。これらのアプリケーションは AWS 環境で稼働しており、生成 AI を組み込む際にも同じ基盤を活用することで、スムーズな連携が可能になると考えたのです。「AWS で稼働している既存の社内アプリに生成 AI 機能を追加する際には、セキュリティや実装における利便性などで AWS が最適」という判断でした。&lt;/p&gt; 
&lt;p&gt;次に、&lt;strong&gt;カスタマイズの自由度の高さ&lt;/strong&gt;です。世の中にある SaaS やパッケージ化された生成 AI サービスは、自社の業務要件に合わせた柔軟なカスタマイズが難しい場合があります。大豊建設様では、社内規程だけでなく、外部の法令サイトの情報や、建築部門で配信している資料など、多様な情報源を統合して検索できるようにしたいという要望がありました。AWS を基盤とすることで、こうした独自の要件に対応でき、「自分たちがやりやすくて、見やすいものができるのでは」と考え、カスタマイズ性の高さを評価しました。&lt;/p&gt; 
&lt;p&gt;そして、&lt;strong&gt;AWS チームとの協業体制&lt;/strong&gt;です。ワンダーソフト様は次のように語ります。「実装における AWS サービスのインテグレーションが簡単な点が AWS を選定した一つのポイントです。ドキュメントが充実しているのは、生成 AI 以前から感じていました。また、AWS の担当アカウントチームとの打ち合わせを通じて情報提供をいただけるのは大変ありがたい。」と支援体制を評価しました。&lt;/p&gt; 
&lt;p&gt;また、将来的には、グループ会社や他社への展開も視野に入れる中で、「AWS Blog で事例化」という形で外部に実績を示すことができるのは、さらなる展開を目指すうえでも有効だと考えています。&lt;/p&gt; 
&lt;h3&gt;システム構成と技術的な工夫&lt;/h3&gt; 
&lt;p&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/28/システム構成図_大豊建設_生成AI_drawio.png"&gt;&lt;img loading="lazy" class="alignnone size-full wp-image-182027" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/28/システム構成図_大豊建設_生成AI_drawio.png" alt="" width="997" height="961"&gt;&lt;/a&gt;&lt;/p&gt; 
&lt;p&gt;
 &lt;!-- TODO: 大豊建設様よりシステム構成図をいただいて、画像を貼り付ける予定 --&gt;&lt;/p&gt; 
&lt;p&gt;大豊建設様が構築した「大豊 AI」システムは、&lt;a href="https://aws.amazon.com/jp/bedrock/"&gt;Amazon Bedrock&lt;/a&gt; を中心とした AWS サービスで構成されています。認証基盤には Auth0 を利用していますが、基本的には AWS のサービスで統一されています。&lt;/p&gt; 
&lt;p&gt;主要な AWS サービスは以下の通りです。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;a href="https://aws.amazon.com/jp/bedrock/"&gt;&lt;strong&gt;Amazon Bedrock&lt;/strong&gt;&lt;/a&gt;：さまざまなAI基盤モデルをAPI経由で簡単に利用できるフルマネージドサービス&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://aws.amazon.com/jp/bedrock/knowledge-bases/"&gt;&lt;strong&gt;Amazon Bedrock Knowledge Bases&lt;/strong&gt;&lt;/a&gt;：RAG 検索の実装&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;&lt;a href="https://aws.amazon.com/jp/lambda/"&gt;AWS Lambda&lt;/a&gt;&lt;/strong&gt;：アプリケーションロジックの実行&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;&lt;a href="https://aws.amazon.com/jp/s3/"&gt;Amazon S3&lt;/a&gt;&lt;/strong&gt;：社内ドキュメントを格納するためのオブジェクトストレージ&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;プロジェクトを進める中で、いくつかの技術的な試行錯誤がありました。&lt;/p&gt; 
&lt;p&gt;当初は &lt;a href="https://aws.amazon.com/jp/kendra/"&gt;Amazon Kendra&lt;/a&gt; を使用していましたが、検索精度の課題、特に社内規程に含まれる表の取り扱いが難しかったため、Amazon Bedrock Knowledge Bases へ移行しました。特に、PDF を一枚丸ごと取り込んで表示できる「Advanced RAG」の機能が有効だったとワンダーソフト様は語ります。今後は、Amazon S3 Vectors を利用したコスト削減についても検討を進めていく方針です。&lt;/p&gt; 
&lt;p&gt;また、新しいモデルが登場した際に、それを大豊 AI に積極的に取り込む点にもチャレンジしています。バージニア北部やオレゴンなどのリージョンでは素早くモデルが追加されるため、それを大豊 AI に取り込むことで、最新モデルを活用できる体制を構築しています。モデルの更新に加え、ユーザーの利便性向上にも日々取り組んでいます。&lt;/p&gt; 
&lt;h2&gt;エージェント技術による次なる業務変革への挑戦&lt;/h2&gt; 
&lt;p&gt;大豊建設様の生成 AI 活用は、エージェント技術を積極的に取り込み、以下の方針でこれからも取り組みを続けていきます。&lt;/p&gt; 
&lt;h3&gt;エージェント機能の実装&lt;/h3&gt; 
&lt;p&gt;Amazon Bedrock AgentCore を活用し、次の二つの業務領域での自動化を検討しています。&lt;/p&gt; 
&lt;h4&gt;施工計画書の作成支援&lt;/h4&gt; 
&lt;p&gt;工事が始まる前に作成する施工計画書は、ゼロから作成するのが大変な業務です。現場の担当者は過去の竣工データから類似工事の施工計画書を探し出し、参考にして作成していますが、この作業を AI エージェントが支援することで、大幅な効率化が期待されています。&lt;/p&gt; 
&lt;h4&gt;社内資料の作成支援&lt;/h4&gt; 
&lt;p&gt;「パワーポイントでこのファイルを作って」といった指示に基づいて、AI が資料の初稿を作成し、担当者が最終調整を行うワークフローの実現を目指しています。既存の資料に対して「この部分を変更して」といった細かい要望にも対応できることを目指しています。&lt;/p&gt; 
&lt;h2&gt;まとめ&lt;/h2&gt; 
&lt;p&gt;大豊 AI は検索システムとして始まりましたが、実際には文書作成、ファイル分析、相談相手など、業務の様々な場面で活用されています。単一の用途に限定せず、ユーザーが自由に活用できる環境を提供することで、想定以上の効果が生まれました。フリートークでの時事ネタの質問も、「AI を気軽に使う習慣」を醸成し、本当に必要な時にスムーズに活用できる土台となっています。&lt;/p&gt; 
&lt;p&gt;生成 AI の活用は、単なる技術導入ではなく、業務プロセスの再設計や組織文化の変革を伴う取り組みです。「入社当時はまだフロッピーディスクを使用していましたが、10 年を経て最新エージェント技術へ」という落藤様の言葉に象徴されるように、新たなことに挑戦する姿勢は、建設業界における生成 AI 活用のモデルケースとして大いに参考になります。&lt;/p&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>Kiro スタートアップクレジットプログラムが復活します</title>
		<link>https://aws.amazon.com/jp/blogs/news/kiro-bringing-back-startup-credits/</link>
		
		<dc:creator><![CDATA[Mizuki Ugajin (syobochim)]]></dc:creator>
		<pubDate>Wed, 08 Apr 2026 07:09:39 +0000</pubDate>
				<category><![CDATA[Amazon Q]]></category>
		<category><![CDATA[Amazon Q Developer]]></category>
		<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Developer Tools]]></category>
		<category><![CDATA[Kiro]]></category>
		<category><![CDATA[Developer]]></category>
		<guid isPermaLink="false">135d2c7ea8e7d5dfd286120bda13d1463698f4d7</guid>

					<description>起業家の皆さん、12 月のスタートアップクレジットにたくさんのご応募をいただきありがとうございました。昨年 Kiro スタートアップクレジットプログラムを開始した際、その反応は予想を大きく上回るものでした。数千もの応募が寄せられ、ニーズは明確でした。アーリーステージのチームには、成長に合わせてスケールする開発者ツールが必要だということです。 そこで、このプログラムを復活させます。本日より、対象となるスタートアップは最大 1 年分の Kiro Pro+ を無料で申請できます。仕様駆動開発と高度な AI エージェントを活用して、コストを気にせず開発を加速できます。</description>
										<content:encoded>&lt;p&gt;本記事は 2026 年 4 月 7 日に公開された Deepak Singh の「&lt;a href="https://kiro.dev/blog/bringing-back-startup-credits/" target="_blank" rel="noopener"&gt;We’re bringing back the Kiro startup credits program&lt;/a&gt;」を翻訳したものです。&lt;/p&gt; 
&lt;p&gt;起業家の皆さん、12 月の&lt;a href="https://kiro.dev/startups/" target="_blank" rel="noopener"&gt;スタートアップクレジット&lt;/a&gt;にたくさんのご応募をいただきありがとうございました。昨年 Kiro スタートアップクレジットプログラムを開始した際、その反応は予想を大きく上回るものでした。数千もの応募が寄せられ、ニーズは明確でした。アーリーステージのチームには、成長に合わせてスケールする開発者ツールが必要だということです。&lt;/p&gt; 
&lt;p&gt;そこで、このプログラムを復活させます。本日より、対象となるスタートアップは最大 1 年分の Kiro Pro+ を無料で申請できます。仕様駆動開発と高度な AI エージェントを活用して、コストを気にせず開発を加速できます。&lt;/p&gt; 
&lt;h2&gt;提供内容&lt;/h2&gt; 
&lt;p&gt;アーリーステージから Series A までのスタートアップであれば、最大 1 年分の Kiro Pro+ クレジットを受け取れます。クレジットは AWS アカウントに自動的に適用されます。チーム規模に応じて 3 つのティアを用意しています。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;em&gt;&lt;span style="text-decoration: underline"&gt;&lt;strong&gt;Starter ティア&lt;/strong&gt;&lt;/span&gt;&lt;/em&gt; – 最大 2 ユーザー&lt;/li&gt; 
 &lt;li&gt;&lt;em&gt;&lt;span style="text-decoration: underline"&gt;&lt;strong&gt;Growth ティア&lt;/strong&gt;&lt;/span&gt;&lt;/em&gt; – 最大 10 ユーザー&lt;/li&gt; 
 &lt;li&gt;&lt;em&gt;&lt;span style="text-decoration: underline"&gt;&lt;strong&gt;Scale ティア&lt;/strong&gt;&lt;/span&gt;&lt;/em&gt; – 最大 30 ユーザー&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;申請は順次審査し、結果はメールでお知らせします。ティアのユーザー上限を超えた場合や Pro+ 以上にアップグレードした場合は、追加料金が発生することがあります。&lt;/p&gt; 
&lt;p&gt;&lt;span style="text-decoration: underline"&gt;&lt;em&gt;&lt;strong&gt;注意:&lt;/strong&gt;&lt;/em&gt;&lt;/span&gt; すでに AWS Activate クレジットを受け取っている場合、本プログラムの対象外となります。&lt;/p&gt; 
&lt;h2&gt;仕様駆動開発が重要な理由&lt;/h2&gt; 
&lt;p&gt;IDE でも CLI でも、すぐにコードを書き始めるスタイルでも事前に計画・設計するスタイルでも、Kiro はツール、環境、チームを横断して AI コーディングに構造をもたらします。私たちが仕様駆動開発を推進しているのは、構造化によってコード品質が向上し、手戻りが減り、開発時間全体を短縮できると確信しているからです。多くのツールを使い分けたり、プロンプトエンジニアリングに何時間も費やす代わりに、Kiro では要件を定義するだけで、テスト済みのコードを数分でリリースできます。ドキュメント作成、テスト、レビューは AI エージェントが自動で処理するため、本当に重要なプロダクト開発に集中できます。&lt;/p&gt; 
&lt;p&gt;MVP からプロダクトマーケットフィットへ進む起業家にとって、これはすべてを変える力になります。イテレーションが速くなり、チームの足並みが揃い、複雑さが増してもスケーリングがボトルネックになりません。開発速度は短距離走ではなく、持続可能な前進になります。&lt;/p&gt; 
&lt;p&gt;「Kiro のおかげで開発チームをスケールでき、デバッグの高速化、テストカバレッジによるコード品質の向上、革新的な PoC の迅速な作成が可能になりました。テスト開始まで 24〜32 週間かかると見積もっていたプロジェクトが、わずか 5〜7 週間で完了しました。現在、Terraform コード、ユニットテスト、Playwright のオブジェクトモデルの 80% を Kiro で生成しており、プラットフォームチームは週 8〜12 時間を節約しています。さらに、MCP サーバーやエージェント全体を 80% の AI 支援で構築できるようになりました。これはイノベーションのスピードを根本から変える成果です。」 — &lt;em&gt;Matthew Trevathan、SVP Architecture and Innovation、Nymbus&lt;/em&gt;&lt;/p&gt; 
&lt;p&gt;「CoverTree では、住宅向けの保険商品とインフラを構築しています。複雑なルール、エッジケース、そして間違えれば実際のコンプライアンスリスクにつながる領域です。何を作るのか、どう作るのかを明確にすることが日々欠かせません。Kiro は、適切な場面で立ち止まり、コードを書く前に要件をしっかり考える習慣をチームにもたらしてくれました。Kiro 導入以降、自動テストカバレッジは 60% 以上向上し、テストやドキュメント作成にかかる時間は約 60〜70% 削減されました。以前はテスト可能な状態になるまで 3〜4 週間かかっていた機能が、今では数日で準備できます。Kiro は要件定義からテスト生成、コードレビューまで、コアとなるエンジニアリングの作業全体で活用されています。日々の開発プロセスの一部となっており、プロダクトの成熟とともに Kiro チームと一緒に成長していけることを楽しみにしています。」 — &lt;em&gt;Divyansh Sharma、Co-founder and CTO、CoverTree&lt;/em&gt;&lt;/p&gt; 
&lt;h2&gt;申請方法&lt;/h2&gt; 
&lt;p&gt;本プログラムはほとんどの国でグローバルに利用可能です。&lt;a href="https://kiro.dev/startups/" target="_blank" rel="noopener"&gt;今すぐ申請して&lt;/a&gt;、Kiro で 1 年間の高速開発を始めましょう。&lt;a href="https://kiro.dev/startups/terms/" target="_blank" rel="noopener"&gt;利用規約&lt;/a&gt;もご確認ください。&lt;/p&gt; 
&lt;p&gt;ハッシュタグ&amp;nbsp; &lt;span style="text-decoration: underline"&gt;&lt;strong&gt;#KiroforStartups&lt;/strong&gt;&lt;/span&gt; または &lt;span style="text-decoration: underline"&gt;&lt;strong&gt;#BuildwithKiro&lt;/strong&gt;&lt;/span&gt; を使って、あなたが作っているものをぜひ共有してください。&lt;a href="https://x.com/kirodotdev" target="_blank" rel="noopener"&gt;X&lt;/a&gt;、&lt;a href="https://www.linkedin.com/showcase/kirodotdev" target="_blank" rel="noopener"&gt;LinkedIn&lt;/a&gt;、&lt;a href="https://www.instagram.com/kirodotdev" target="_blank" rel="noopener"&gt;Instagram&lt;/a&gt; では @kirodotdev、&lt;a href="https://bsky.app/profile/kiro.dev" target="_blank" rel="noopener"&gt;Bluesky&lt;/a&gt; では @kiro.dev でお待ちしています！&lt;/p&gt; 
&lt;h2&gt;スタートアップ向けのその他のリソース&lt;/h2&gt; 
&lt;p&gt;&lt;a href="https://aws.amazon.com/activate/" target="_blank" rel="noopener"&gt;AWS Activate&lt;/a&gt; は Amazon Web Services のスタートアップ専用プログラムで、プロモーションクレジット、テクニカルサポート、ビジネスリソースを提供し、構築とスケーリングを支援します。コンピューティングや機械学習からデータベース、セキュリティまで、AWS Activate はスタートアップの成長に必要なインフラとサポートを提供します。&lt;/p&gt; 
&lt;p&gt;&lt;em&gt;&lt;span style="text-decoration: underline"&gt;&lt;strong&gt;お困りですか？&lt;/strong&gt;&lt;/span&gt;&lt;/em&gt; &lt;a href="https://discord.gg/kirodotdev" target="_blank" rel="noopener"&gt;Kiro コミュニティの Discord&lt;/a&gt; に参加して、他のビルダーとつながり、ベストプラクティスを共有し、テクニカルサポートを受け、最新機能の情報を入手しましょう。コミュニティがあなたの成功をサポートします。&lt;/p&gt; 
&lt;p&gt;翻訳は App Dev Consultant の宇賀神が担当しました。&lt;/p&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>Amazon OpenSearch Service、FAISS エンジンでのベクトル検索トラブル対処の考え方：新規ベクトルデータの投入が不安定、または失敗する場合</title>
		<link>https://aws.amazon.com/jp/blogs/news/opensearch-service-faiss-trouble-shoot-indexing/</link>
		
		<dc:creator><![CDATA[Takuo Kuroki]]></dc:creator>
		<pubDate>Tue, 07 Apr 2026 06:37:56 +0000</pubDate>
				<category><![CDATA[Advanced (300)]]></category>
		<category><![CDATA[Amazon OpenSearch Service]]></category>
		<category><![CDATA[Analytics]]></category>
		<guid isPermaLink="false">36c2b27b1ab5c6627b7ede1d01e580c9fc3a1185</guid>

					<description>はじめに Amazon OpenSearch Service を使用したベクトル検索では exact k-NN […]</description>
										<content:encoded>&lt;h1&gt;はじめに&lt;/h1&gt; 
&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/what-is.html"&gt;Amazon OpenSearch Service&lt;/a&gt; を使用したベクトル検索では exact k-NN もしくは Approximate k-NN が使用されます。exact k-NNでは総当たり的に近傍を探索することにより最も正確な検索が可能ですが、ベクトルデータ数に対して線形に実行時間が増えるため、大規模なデータセットに対しては深刻にパフォーマンスが悪化する可能性があります。一方で Approximate k-NN は精度を一定落とす代わりに高速な検索を実現する手法です。Amazon OpenSearch Service において利用できるApproximate k-NNアルゴリズム用のベクトル検索エンジンは主に FAISS と Lucene があり、FAISS エンジンにはアルゴリズムとして HNSW と IVF があります(&lt;a href="https://docs.opensearch.org/latest/mappings/supported-field-types/knn-methods-engines/"&gt;参考&lt;/a&gt;)。&lt;/p&gt; 
&lt;p&gt;本ブログでは、FAISS エンジンを使用したベクトル検索において、&lt;strong&gt;新規ベクトルデータの投入が不安定、または失敗する場合&lt;/strong&gt;の原因調査および対処法選択の考え方について説明します。&lt;/p&gt; 
&lt;h1&gt;シナリオ：新規ベクトルデータの投入が不安定、または失敗する&lt;/h1&gt; 
&lt;p&gt;一度ベクトルデータベースのセットアップが完了し問題なく稼働していたとしても、検索対象となるドキュメント数が増えたり、使用するユーザー数が増加していくと様々なトラブルが発生する可能性があります。OpenSearch Service におけるトラブルはインスタンスタイプの増強によるスケールアップやノード数追加によるスケールアウトをすることで解決できることは多いですが、何らかのトラブルに対して原因調査を行い、コストや精度、レイテンシーといった要素のトレードオフを理解した上で適切な対処手法を選択していくことは OpenSearch Service を有効活用していく上で非常に重要です。&lt;br&gt; FAISS エンジンにおけるベクトル検索を使用する場合のトラブルの一つとして、新規ベクトルデータの投入が不安定だったり、失敗する場合が考えられます。次元数の多いベクトルデータを &lt;a href="https://docs.opensearch.org/latest/api-reference/document-apis/bulk/"&gt;Bulk API&lt;/a&gt; などで投入する場合、インデクシングに要する負荷は大きくなりがちです。特に、ベクトル検索を高速化するためのグラフ構造を保持するメモリのようなリソースのキャパシティ枯渇が問題になることが多いです。&lt;br&gt; 調査および対処法選択の大まかな流れは以下にようになります。&lt;/p&gt; 
&lt;div id="attachment_182441" style="width: 641px" class="wp-caption alignnone"&gt;
 &lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/03/flowchart1.png"&gt;&lt;img aria-describedby="caption-attachment-182441" loading="lazy" class=" wp-image-182441" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/03/flowchart1.png" alt="問題調査と対処のフローチャート" width="631" height="557"&gt;&lt;/a&gt;
 &lt;p id="caption-attachment-182441" class="wp-caption-text"&gt;新規ベクトルデータの投入が不安定、または失敗する場合の対処法選択&lt;/p&gt;
&lt;/div&gt; 
&lt;h2&gt;原因調査1.1: KNNGraphMemoryUsage によるネイティブメモリ使用状況の調査&lt;/h2&gt; 
&lt;p&gt;ベクトル検索を行う際にしばしば問題になるのがメモリ管理です。新規ベクトルデータの投入がブロックされる場合、使用メモリサイズ増加に伴いサーキットブレーカーが発動している可能性があります。OpenSearch 自体は Java により実装されており、デフォルトでは、各ノードが持っているメモリ領域の50%か 32GB の大きい方が JVM ヒープとして使用されます。残りの領域がネイティブメモリとして、OS やファイルシステムキャッシュ、そして k-NN ベクトルの検索用メモリとして使用されることになります。&lt;/p&gt; 
&lt;div id="attachment_182538" style="width: 979px" class="wp-caption alignnone"&gt;
 &lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/スクリーンショット-2026-02-03-15.28.10.png"&gt;&lt;img aria-describedby="caption-attachment-182538" loading="lazy" class=" wp-image-182538" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/スクリーンショット-2026-02-03-15.28.10.png" alt="OpenSearchベクトル検索におけるメモリ管理" width="969" height="218"&gt;&lt;/a&gt;
 &lt;p id="caption-attachment-182538" class="wp-caption-text"&gt;OpenSearchベクトル検索におけるメモリ管理&lt;/p&gt;
&lt;/div&gt; 
&lt;p&gt;CloudWatch メトリクスを参照して、データノードにおける &lt;code&gt;KNNGraphMemoryUsage&lt;/code&gt; もしくは &lt;code&gt;KNNGraphMemoryUsagePercentage&lt;/code&gt; を参照することで、ネイティブメモリのうちどの程度をベクトルグラフが占有しているかモニタリングすることができ、大きなベクトルデータを扱っている場合非常に重要なドメインサイジングの指標になります。&lt;/p&gt; 
&lt;p&gt;特に FAISS エンジンで HNSW のインデックスを作成している場合、検索を高速化するためベクトルデータ投入時にグラフ構造が構築されます。検索クエリが実行された際、もしくは &lt;a href="https://docs.opensearch.org/latest/vector-search/performance-tuning-search/#warm-up-the-index"&gt;Warm-up API&lt;/a&gt; が呼ばれた際にこのグラフはネイティブメモリにロードされますが、グラフのデータサイズが大きくなると上記の k-NN 用ネイティブメモリサイズを超過し、サーキットブレーカーが発動する可能性があります。これに伴い、インデックスは新規ベクトルデータの投入をブロックするようになります。&lt;br&gt; サーキットブレーカーが発動するメモリサイズに関しては、&lt;code&gt;knn.circuit_breaker.limit&lt;/code&gt;（デフォルト 50%）に設定されており、この値に対して上記メトリクスが猶予を持っている必要があります。&lt;/p&gt; 
&lt;p&gt;各ノードの k-NN に関する統計情報は以下のコマンドによっても取得することが可能です。サーキットブレーカーによりデータ投入がブロックされている場合、レスポンスに含まれる &lt;code&gt;circuit_breaker_triggered&lt;/code&gt; の値が true になります。&lt;/p&gt; 
&lt;div class="hide-language"&gt; 
 &lt;pre&gt;&lt;code class="lang-http"&gt;GET /_plugins/_knn/stats&lt;/code&gt;&lt;/pre&gt; 
&lt;/div&gt; 
&lt;p&gt;このシチュエーションにおいて、ベクトルグラフによるメモリ使用を削減する、もしくはメモリを増強する対応が必要になります。&lt;/p&gt; 
&lt;h2&gt;原因調査1.2：FreeStorageSpace によるディスク容量の確認&lt;/h2&gt; 
&lt;p&gt;CloudWatch メトリクスの一つである、&lt;code&gt;FreeStorageSpace&lt;/code&gt; を参照することで、OpenSearch Service における各ノードがどの程度のストレージ残量があるかを調査することができます。&lt;br&gt; OpenSearch Service は各データノードのストレージの 20%（最大 20 GiB）を、セグメントマージやログなどの内部操作用にあらかじめ予約しています。CloudWatch メトリクスの &lt;code&gt;FreeStorageSpace&lt;/code&gt; はこの予約分を差し引いた後の残量を示すため、OpenSearch の &lt;code&gt;_cluster/stats&lt;/code&gt; や &lt;code&gt;_cat/allocation&lt;/code&gt; API が返す値よりも常に低い値になります。&lt;br&gt; ストレージ保護の観点では、いずれかのノードの空き容量が「利用可能ストレージの 20%」または「20 GiB」のうち小さい方を下回った時点で、書き込み操作をブロックします（&lt;code&gt;ClusterBlockException&lt;/code&gt;）。ブロック機構は、OSS の OpenSearch が持つ &lt;code&gt;disk watermark&lt;/code&gt;（low: 85%、high: 90%、flood_stage: 95%）よりも先に発動するのが一般的です。&lt;code&gt;FreeStorageSpace&lt;/code&gt; メトリクスを監視し、CloudWatch アラームを設定することで、ブロック発生前にストレージ逼迫を検知できます。&lt;/p&gt; 
&lt;h2&gt;対処1.1：量子化&lt;/h2&gt; 
&lt;p&gt;OpenSearchにおけるベクトルは&lt;code&gt;knn_vector&lt;/code&gt;型の32ビット浮動小数点配列として保存されますが、これらをよりデータ量の小さなベクトルに圧縮するアプローチです。以下の4つの量子化手法をサポートしています。より圧縮度の高い量子化は検索の精度を落とす可能性がありますが、メモリ使用量の削減だけでなく、検索パフォーマンスの向上やディスク使用量の削減にもつながります。精度要件に余裕があり、検索速度を維持もしくは高速化した上でメモリ効率化も行いたい場合有用な手法です。&lt;br&gt; 詳細に関しては&lt;a href="https://aws.amazon.com/jp/blogs/news/cost-optimized-vector-database-introduction-to-amazon-opensearch-service-quantization-techniques/"&gt;こちら&lt;/a&gt;のブログも参照ください。&lt;/p&gt; 
&lt;h3&gt;スカラー量子化 (Scaler Quantization)&lt;/h3&gt; 
&lt;ul&gt; 
 &lt;li&gt;バイナリ量子化&lt;br&gt; ベクトルの各次元を 1 ビット（-1 または +1）で表現する最も圧縮率の高い量子化手法。最大 32 倍と大幅にメモリ、ストレージ使用量を低減できますが、精度の低下が最も大きくなります。&lt;/li&gt; 
 &lt;li&gt;バイト量子化&lt;br&gt; 各次元を 8 ビット整数（int8）で表現し、元の浮動小数点数を 256 段階に量子化する手法。メモリを約 1/4 に削減しつつ、比較的高い精度を維持できるバランスの良い方式です。&lt;/li&gt; 
 &lt;li&gt;FP16量子化&lt;br&gt; 32 ビット浮動小数点数（FP32）を 16 ビット浮動小数点数（FP16）に変換する手法。メモリを半分に削減し、精度の劣化が少ないため、高精度が求められる用途に適しています。&lt;/li&gt; 
&lt;/ul&gt; 
&lt;h3&gt;直積量子化（Product Quantization）&lt;/h3&gt; 
&lt;p&gt;ベクトルを複数のサブベクトルに分割し、各サブベクトルを独立にクラスタリングしてコードブックで表現する手法。最大 64 倍と高い圧縮率と高速な検索を両立でき、大規模ベクトル検索でしばしば使用されますが、利用にあたり事前のトレーニングが必要になります。&lt;/p&gt; 
&lt;h2&gt;対処1.2：Memory Optimized Search (対象：HNSW、バージョン3.1+)&lt;/h2&gt; 
&lt;p&gt;Lucene エンジンと FAISS エンジンのハイブリッドアプローチを行うことで、ベクトルグラフの全てをメモリに載せることなく検索を実行することが可能です。数% の Recall およびスループットの低下が生じる可能性がありますが、3〜4 倍のメモリ使用量削減の可能性があります。この手法を使用する場合、グラフの一部を載せるメモリとして OS ページキャッシュを使用するため、&lt;code&gt;KNNGraphMemoryUsage&lt;/code&gt; は増加しません。&lt;br&gt; ベンチマーキングなどは&lt;a href="https://opensearch.org/blog/lucene-on-faiss-powering-opensearchs-high-performance-memory-efficient-vector-search/"&gt;こちら&lt;/a&gt;のブログから参照ください。以下のように、&lt;code&gt;knn.memory_optimized_search&lt;/code&gt; を設定することにより有効化できます。この手法の特徴として、index 単位で有効化する場合は reindex が必要ないことが挙げられます。index の設定のみで有効化できるので手軽にメモリ使用量削減が可能です。&lt;/p&gt; 
&lt;div class="hide-language"&gt; 
 &lt;pre&gt;&lt;code class="lang-http"&gt;PUT /&amp;lt;index-name&amp;gt;
{
  "settings" : {
    "index.knn": true,
    "index.knn.memory_optimized_search" : true 
  },
  "mappings": {
    &amp;lt;index-fields&amp;gt;
  }
}&lt;/code&gt;&lt;/pre&gt; 
&lt;/div&gt; 
&lt;h2&gt;対処1.3： Disk mode (対象：バージョン2.17+)&lt;/h2&gt; 
&lt;p&gt;ディスクベースのベクトル検索では、量子化したベクトルのみをメモリに乗せサンプリングを行い、ディスク上の完全な精度のベクトルでリランクを行う手法です。量子化の圧縮率を選択することにより、メモリに載せるベクトルデータのサイズを最大 32 倍低減することができますが、精度の低下は最小限に抑えることが可能です。&lt;br&gt; 検索速度の低下を許容できるワークロードでありつつ、精度の低下をおさえて最大限のメモリ効率を実現したい場合有用な手法です。&lt;br&gt; 以下のように、&lt;code&gt;knn_vector&lt;/code&gt; のフィールドの &lt;code&gt;mode&lt;/code&gt; を &lt;code&gt;on_disk&lt;/code&gt; に設定することで有効化できます。量子化の圧縮率は &lt;code&gt;compression_level&lt;/code&gt; として指定することができ、FAISS エンジンでは &lt;code&gt;1x&lt;/code&gt;、&lt;code&gt;2x&lt;/code&gt;、&lt;code&gt;8x&lt;/code&gt;、&lt;code&gt;16x&lt;/code&gt;、&lt;code&gt;32x&lt;/code&gt; が選択可能です。&lt;/p&gt; 
&lt;div class="hide-language"&gt; 
 &lt;pre&gt;&lt;code class="lang-http"&gt;PUT /&amp;lt;index-name&amp;gt; 
{ 
    "settings" : { 
        "index": { 
            "knn": true 
        } 
    }, 
    "mappings": { 
        "properties": { 
            "my_vector_field": { 
                "type": "knn_vector", 
                "dimension": 8, 
                "space_type": "innerproduct", 
                "data_type": "float", 
                "mode": "on_disk",
                "compression_level": "16x"
            } 
        } 
    }
}
&lt;/code&gt;&lt;/pre&gt; 
&lt;/div&gt; 
&lt;h2&gt;対処1.4：EBSボリュームの追加&lt;/h2&gt; 
&lt;p&gt;OpenSearch Service におけるデータノードはストレージとして EBS ボリュームを使用しています。データノードのストレージが枯渇した際、クラスターの設定からノードあたりの EBS ストレージサイズを追加することで非常に簡単に対処することができます。データノードあたりの EBS ストレージの最大サイズは 1536 GiB です。&lt;br&gt; クラスター自体のデータノード数を増やしたり、データノードのインスタンスタイプをより大きいものに変更するのに比べてコスト効率よく手軽にストレージ枯渇に対処できる手法になっています。&lt;br&gt; CLI では以下のオペレーションによって設定変更可能です。&lt;/p&gt; 
&lt;pre&gt;&lt;code class="lang-bash"&gt;aws opensearch update-domain-config \ 
    --domain-name your-domain-name \ 
    --ebs-options '{  
        "EBSEnabled": true,  
        "VolumeType": "gp3",  
        "VolumeSize": 1024  
    }'&lt;/code&gt;&lt;/pre&gt; 
&lt;h1&gt;まとめ&lt;/h1&gt; 
&lt;p&gt;本ブログでは、OpenSearch Service において FAISS エンジンを使用したベクトル検索ワークロードを運用している際に発生しうるトラブルとして新規ベクトルデータの投入が不安定、または失敗する場合に着目し、その原因究明と対処方法選択の考え方について紹介しました。このトラブル自体はベクトルグラフのメモリに起因することがおおく、OpenSearch が提供するメモリ最適化手法の中から適切な選択を行っていくことが重要です。&lt;br&gt; OpenSearch Service の機能は継続的に拡充されているため、新機能を活用するためにもクラスターのバージョンアップグレードを定期的に検討することを推奨します。&lt;/p&gt; 
&lt;hr&gt; 
&lt;h1&gt;著者&lt;/h1&gt; 
&lt;h3&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/Takuo-photo.jpeg"&gt;&lt;img loading="lazy" class="size-full wp-image-182605 alignleft" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/Takuo-photo.jpeg" alt="" width="125" height="188"&gt;&lt;/a&gt;黒木 琢央 (Takuo Kuroki)&lt;/h3&gt; 
&lt;p&gt;アマゾンウェブサービスジャパン合同会社ソリューションアーキテクト&lt;/p&gt; 
&lt;p&gt;2024年4月入社。現在toCのITサービス提供企業におけるクラウド全般の技術支援を行いつつ、OpenSearchのコミュニティ活動や機能改善に取り組んでいます。&lt;/p&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>Amazon OpenSearch Service、FAISS エンジンでのベクトル検索トラブル対処の考え方：検索レイテンシの増加が問題になっている場合</title>
		<link>https://aws.amazon.com/jp/blogs/news/opensearch-service-faiss-trouble-shoot-search-latency/</link>
		
		<dc:creator><![CDATA[Takuo Kuroki]]></dc:creator>
		<pubDate>Tue, 07 Apr 2026 06:35:35 +0000</pubDate>
				<category><![CDATA[Advanced (300)]]></category>
		<category><![CDATA[Amazon OpenSearch Service]]></category>
		<category><![CDATA[Analytics]]></category>
		<guid isPermaLink="false">f9fdb208f937e4598c5a3a4d13ea159cc2a0ad98</guid>

					<description>はじめに Amazon OpenSearch Service を使用したベクトル検索では exact k-NN […]</description>
										<content:encoded>&lt;h1&gt;はじめに&lt;/h1&gt; 
&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/ja_jp/opensearch-service/latest/developerguide/what-is.html"&gt;Amazon OpenSearch Service&lt;/a&gt; を使用したベクトル検索では exact k-NN もしくは Approximate k-NN が使用されます。exact k-NN では総当たり的に近傍を探索することにより最も正確な検索が可能ですが、ベクトルデータ数に対して線形に実行時間が増えるため、大規模なデータセットに対しては深刻にパフォーマンスが悪化する可能性があります。一方で Approximate k-NN は精度を一定落とす代わりに高速な検索を実現する手法です。Amazon OpenSearch Service において利用できる Approximate k-NN アルゴリズム用のベクトル検索エンジンは主に FAISS と Lucene があり、FAISS エンジンにはアルゴリズムとして HNSW と IVF があります(&lt;a href="https://docs.opensearch.org/latest/mappings/supported-field-types/knn-methods-engines/"&gt;参考&lt;/a&gt;)。&lt;/p&gt; 
&lt;p&gt;本ブログでは、FAISSエンジンを使用したベクトル検索において、&lt;strong&gt;検索レイテンシが構築初期より増加していることが問題になっている場合&lt;/strong&gt;の原因調査および対処法選択の考え方について説明します。&lt;/p&gt; 
&lt;h1&gt;シナリオ：検索レイテンシーが構築初期より著しく増加している&lt;/h1&gt; 
&lt;p&gt;OpenSearch Service において検索リクエストに対するパフォーマンスはユーザーの視点でもクラスター全体の健全な運用をする上でも重要な要素です。ベクトル検索ワークロード構築初期においてはデータ量が少ないため大抵の場合検索レイテンシーが問題になることはありませんが、検索対象となっているベクトルデータや新規に投入されてインデクシングされるベクトルが多くなるにつれて、さまざまな要因により検索レイテンシーが悪化する可能性があります。このような問題は単純な、検索パフォーマンスが悪化しているタイミングや CPU リソースやメモリの使用状況からどのようことが要因となっているか調査し、対処法を選択することが重要です。インスタンスタイプを増強したり、データノード数を増やすなどの対応によりクラスター全体のキャパシティを大きくすることでこのような問題に対処できることは多いですが、ここではその前段階として検討すべき最適化の手法について紹介します。&lt;br&gt; 調査および対処法選択の大まかな流れは以下にようになります。&lt;/p&gt; 
&lt;p&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/flowchart2.png"&gt;&lt;img loading="lazy" class="alignnone wp-image-182608" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/flowchart2.png" alt="問題調査と対処のフローチャート" width="1257" height="584"&gt;&lt;/a&gt;&lt;/p&gt; 
&lt;h2&gt;原因調査2.1：JVMMemoryPressure、CPUUtilizationの確認&lt;/h2&gt; 
&lt;p&gt;検索パフォーマンスが悪化している場合などにおいて調査すべきメトリクスの一つが &lt;code&gt;JVMMemoryPressure&lt;/code&gt; および &lt;code&gt;CPUUtilization&lt;/code&gt; です。これらのメトリクスは AWS コンソールの OpenSearch Service ページにおける、ドメインの Cluster Health および CloudWatch Metrics から調査することができます。&lt;br&gt; &lt;code&gt;JVMMemoryPressure&lt;/code&gt; や &lt;code&gt;CPUUtilization&lt;/code&gt; を確認することにより、検索およびインデクシングといった処理にどの程度の負荷がかかっているかが確認できます。&lt;code&gt;JVMMemoryPressure&lt;/code&gt; は JVM ヒープメモリの使用率であり、&lt;code&gt;CPUUtilization&lt;/code&gt; はデータノードにおける CPU 使用率です。k-NN グラフ構築などのデータ投入処理やセグメントのマージなどで上昇します。これらのメトリクスが高い値を示している場合は、クエリやデータ投入のパフォーマンスが悪化している可能性があります。一般的に &lt;code&gt;JVMMemoryPressure&lt;/code&gt; は 75% 以上になると GC が発生しますが、インデクシングや検索リクエストの処理が追いつかない場合 GC が多発し、&lt;code&gt;JVMMemoryPressure&lt;/code&gt; も下降しない状態になります。さらに 95% に到達するとサーキットブレーカーにより新規リクエストを拒否します。&lt;/p&gt; 
&lt;h2&gt;原因調査2.2：シャードの偏り状況の調査&lt;/h2&gt; 
&lt;p&gt;OpenSearch Service のドメインでは、シャード分布がノード間で偏りが生じることにより特定のノードに処理が集中する場合があります。このような場合、ドメイン全体のリソース状況に余裕があったとしてもノード単体のリソース不足によりパフォーマンスに支障をきたす可能性があります。&lt;br&gt; 以下のコマンドにより、ノードごとにシャード数やデータ量の偏りがないか調査することができます。&lt;/p&gt; 
&lt;div class="hide-language"&gt; 
 &lt;pre&gt;&lt;code class="lang-http"&gt;GET _cat/allocation?v&lt;/code&gt;&lt;/pre&gt; 
&lt;/div&gt; 
&lt;div class="hide-language"&gt; 
 &lt;p&gt;また、以下のコマンドにより、シャードごとのデータ量に偏りがないか調査することができます。&lt;/p&gt; 
 &lt;div class="hide-language"&gt; 
  &lt;pre&gt;&lt;code class="lang-http"&gt;GET _cat/shards?v&lt;/code&gt;&lt;/pre&gt; 
 &lt;/div&gt; 
 &lt;div class="hide-language"&gt; 
  &lt;p&gt;また、シャードごとの集計情報は &lt;a href="https://aws.amazon.com/jp/blogs/news/introducing-cluster-insights-unified-monitoring-dashboard-for-amazon-opensearch-service-clusters/"&gt;Cluster Insights&lt;/a&gt; を確認することでも簡単に調査できます。OpenSearch UI から Cluster Insights を開き、対象となる OpenSearch ドメインを選択します。Shard view と記載されたタブを開くことで直近使用されている index の各シャードごとの集計情報が表示されます。&lt;/p&gt; 
  &lt;h2&gt;対処2.1：シャード最適化&lt;/h2&gt; 
  &lt;p&gt;各シャードが持つドキュメントのサイズを調整したり、ノードに存在するシャード数の偏りを解消することで検索パフォーマンスが改善する場合があります。ベクトル検索のインデックスにおいて、適切なシャードサイズは一般的に 10GB〜75GB とされています。検索クエリが、ベクトル検索に加えて様々な全文検索を加えたハイブリットなものである場合、シャードサイズを小さくすることで検索レイテンシを改善する効果があります。一方で、シャードサイズを大きくすることで純粋なベクトル検索クエリに対してはパフォーマンス改善につながる可能性があります。また、ノードごとにシャードの偏りが発生している場合は、プライマリシャード数をノード数の倍数にすることで偏りを解消でき、検索パフォーマンス改善につながる可能性があります。&lt;/p&gt; 
  &lt;p&gt;インデックスのシャード数を変更する場合、&lt;a href="https://docs.opensearch.org/latest/api-reference/index-apis/shrink-index/"&gt;Shrink API&lt;/a&gt; の実行や reindex による index 移行を行う必要がありますが、reindex 中は CPU 負荷が増大することや index 移行に際して実行中のワークロードに影響を与えないよう注意が必要です。&lt;/p&gt; 
  &lt;h2&gt;対処2.2：量子化&lt;/h2&gt; 
  &lt;p&gt;OpenSearchにおけるベクトルは&lt;code&gt;knn_vector&lt;/code&gt;型の32ビット浮動小数点配列として保存されますが、これらをよりデータ量の小さなベクトルに圧縮するアプローチです。以下の4つの量子化手法をサポートしています。より圧縮度の高い量子化は検索の精度を落とす可能性がありますが、メモリ使用量の削減だけでなく、検索パフォーマンスの向上やディスク使用量の削減にもつながります。精度要件に余裕があり、検索速度を維持もしくは高速化した上でメモリ効率化も行いたい場合有用な手法です。&lt;br&gt; 詳細に関しては&lt;a href="https://aws.amazon.com/jp/blogs/news/cost-optimized-vector-database-introduction-to-amazon-opensearch-service-quantization-techniques/"&gt;こちら&lt;/a&gt;のブログも参照ください。&lt;/p&gt; 
  &lt;h3&gt;スカラー量子化 (Scaler Quantization)&lt;/h3&gt; 
  &lt;ul&gt; 
   &lt;li&gt;バイナリ量子化&lt;br&gt; ベクトルの各次元を 1 ビット（-1 または +1）で表現する最も圧縮率の高い量子化手法。最大 32 倍と大幅にメモリ、ストレージ使用量を低減できますが、精度の低下が最も大きくなります。&lt;/li&gt; 
   &lt;li&gt;バイト量子化&lt;br&gt; 各次元を 8 ビット整数（int8）で表現し、元の浮動小数点数を 256 段階に量子化する手法。メモリを約 1/4 に削減しつつ、比較的高い精度を維持できるバランスの良い方式です。&lt;/li&gt; 
   &lt;li&gt;FP16量子化&lt;br&gt; 32 ビット浮動小数点数（FP32）を 16 ビット浮動小数点数（FP16）に変換する手法。メモリを半分に削減し、精度の劣化が少ないため、高精度が求められる用途に適しています。&lt;/li&gt; 
  &lt;/ul&gt; 
  &lt;h3&gt;直積量子化（Product Quantization）&lt;/h3&gt; 
  &lt;p&gt;ベクトルを複数のサブベクトルに分割し、各サブベクトルを独立にクラスタリングしてコードブックで表現する手法。最大 64 倍と高い圧縮率と高速な検索を両立でき、大規模ベクトル検索でしばしば使用されますが、利用にあたり事前のトレーニングが必要になります。&lt;/p&gt; 
  &lt;h2&gt;対処2.3：force merge、warm upの事前実行&lt;/h2&gt; 
  &lt;p&gt;FAISS エンジンでは、初回の検索クエリを行う際にベクトルグラフをメモリにロードする必要があり、これに非常に時間がかかる場合があります。事前に &lt;a href="https://docs.opensearch.org/latest/vector-search/performance-tuning-search/#warm-up-the-index"&gt;Warm-up AP&lt;/a&gt;Iを使用してグラフをメモリにロードすることにより初回検索のレイテンシを低減することが可能です。&lt;/p&gt; 
  &lt;div class="hide-language"&gt; 
   &lt;pre&gt;&lt;code class="lang-http"&gt;GET /_plugins/_knn/warmup/&amp;lt;index-name&amp;gt;&lt;/code&gt;&lt;/pre&gt; 
  &lt;/div&gt; 
  &lt;div class="hide-language"&gt; 
   &lt;p&gt;また OpenSearch において、投入されたデータは最初セグメントと呼ばれる単位で管理されます。このセグメント数が大きくなると検索パフォーマンスの低下につながります。Warm-up 実行の前に &lt;a href="https://docs.opensearch.org/latest/api-reference/index-apis/force-merge/"&gt;Force Merge API&lt;/a&gt; を実行することでセグメント数を小さくすることができます。ただし、これらの処理は CPU リソースを多く消費する可能性があるので、データ投入などのリクエストが少ないタイミングで行うべきです。&lt;/p&gt; 
   &lt;div class="hide-language"&gt; 
    &lt;pre&gt;&lt;code class="lang-http"&gt;POST /&amp;lt;index-name&amp;gt;/_forcemerge
&lt;/code&gt;&lt;/pre&gt; 
   &lt;/div&gt; 
   &lt;h2&gt;対処2.4：refresh_intervalの調整&lt;/h2&gt; 
   &lt;div class="hide-language"&gt; 
    &lt;p&gt;OpenSearch では、&lt;code&gt;refresh_interval&lt;/code&gt; で指定した時間ごとに、メモリバッファに保持していたデータをセグメント化し検索対象に登録する処理を行っています。Approximate k-NN では、このタイミングでグラフの構築が行われます。&lt;br&gt; &lt;code&gt;refresh_interval&lt;/code&gt; が小さいと、グラフ構築の頻度が上がり CPU リソースを消費する他、セグメント数が多くなることで検索クエリパフォーマンスが低下する可能性があります。データ投入から検索対象になるまでにかかる時間が長くなるデメリットがありますが、&lt;code&gt;refresh_interval&lt;/code&gt; を大きくすることでパフォーマンス改善につながります。&lt;/p&gt; 
    &lt;div class="hide-language"&gt; 
     &lt;pre&gt;&lt;code class="lang-http"&gt;PUT /&amp;lt;index-name&amp;gt;/_settings
{
  "index.refresh_interval": "30s"  # デフォルトは1s
}
&lt;/code&gt;&lt;/pre&gt; 
    &lt;/div&gt; 
   &lt;/div&gt; 
  &lt;/div&gt; 
 &lt;/div&gt; 
&lt;/div&gt; 
&lt;h2&gt;対処2.5：GPUアクセラレーションの活用(対象：HNSW、バージョン3.1+)&lt;/h2&gt; 
&lt;p&gt;ベクトルデータ数が非常に大きくなると、データ投入のタイミングで発生するグラフ構築に長い時間がかかり、CPU リソースの消費も大きくなります。ベクトルデータのインデクシングにおける GPU 加速を使用すると、大規模ベクトルデータに対するグラフ構築をマネージドな GPU を使用して高速化しつつ、CPU への負荷をオフロードすることが可能です。もし、検索クエリなどのパフォーマンス低下がベクトルデータのインデクシングによる CPU リソースの枯渇が原因であった場合、この機能の活用により改善する可能性があります。&lt;/p&gt; 
&lt;pre&gt;&lt;code class="lang-bash"&gt;$ aws opensearch update-domain-config \
    --domain-name &amp;lt;domain-name&amp;gt; \
    --aiml-options '{"ServerlessVectorAcceleration": {"Enabled": true}}'&lt;/code&gt;&lt;/pre&gt; 
&lt;p&gt;GPU アクセラレーションを使用するかどうかは &lt;code&gt;index.knn.remote_index_build.enabled&lt;/code&gt; からインデックスごとに設定可能です。&lt;/p&gt; 
&lt;div class="hide-language"&gt; 
 &lt;pre&gt;&lt;code class="lang-http"&gt;PUT &amp;lt;index-name&amp;gt; 
{ 
    "settings": { 
        "index.knn": true, 
        "index.knn.remote_index_build.enabled": true 
    }, 
    "mappings": { 
        "properties": { 
            "vector_field": { 
                "type": "knn_vector", 
                "dimension": 768
            }, 
            "text": { 
                "type": "text" 
            } 
        } 
    } 
}&lt;/code&gt;&lt;/pre&gt; 
&lt;/div&gt; 
&lt;p&gt;ベクトルグラフ構築の高速化は最大 10 倍にのぼり、ユーザーは GPU リソースの使用を全く意識する必要はありません。有効化にはまず、OpenSearch ドメインの設定をアップデートします。この設定変更によるダウンタイムの発生はありません。&lt;br&gt; 詳細については&lt;a href="https://aws.amazon.com/jp/blogs/news/amazon-opensearch-service-improves-vector-database-performance-and-cost-with-gpu-acceleration-and-auto-optimization/"&gt;こちら&lt;/a&gt;のブログを参照ください。&lt;/p&gt; 
&lt;h2&gt;対処2.6：クエリの工夫&lt;/h2&gt; 
&lt;p&gt;検索パフォーマンスに問題がある場合、しばしばクエリ設計を工夫するアプローチが有効です。一般に OpenSearch におけるクエリ設計の最適化は様々な要素があり、クエリの種類によって取ることのできるアプローチも異なります。&lt;br&gt; ここでは、&lt;code&gt;knn_vector&lt;/code&gt; フィールドへのクエリに対して取ることのできるアプローチを紹介します。&lt;/p&gt; 
&lt;h3&gt;ef_search(対象：HNSW、バージョン2.16+)&lt;/h3&gt; 
&lt;p&gt;HNSW を使用している場合、クエリに対して &lt;code&gt;ef_search&lt;/code&gt; として小さい値を指定することで、精度を落として検索速度を向上することができます。&lt;code&gt;ef_search&lt;/code&gt; はインデックスマッピング作成時に指定することができるパラメータですが、デフォルトは 100 となっており、クエリごとに調整することで、精度と検索速度のトレードオフを調整することが可能です。&lt;/p&gt; 
&lt;div class="hide-language"&gt; 
 &lt;pre&gt;&lt;code class="lang-http"&gt;GET /&amp;lt;index-name&amp;gt;/_search
{
  "size": 2,
  "query": {
    "knn": {
      "my_vector": {
        "vector": [2, 3, 5, 6],
        "k": 2,
        "method_parameters": {
          "ef_search": 90
        }
      }
    }
  }
}&lt;/code&gt;&lt;/pre&gt; 
&lt;/div&gt; 
&lt;p&gt;HNSW ではこれ以外にもパラメーターが存在し、精度、レイテンシー、メモリ使用量のトレードオフを調整することができます。クエリのタイミングで指定できるパラメーターは &lt;code&gt;ef_search&lt;/code&gt; のみであり、他のパラメーターはインデックス作成時に指定することができます。詳細に関しては&lt;a href="https://opensearch.org/blog/a-practical-guide-to-selecting-hnsw-hyperparameters/"&gt;こちら&lt;/a&gt;の資料を参考にしてください。&lt;/p&gt; 
&lt;h3&gt;_sourceフィルタリングでベクトルデータ転送量を削減&lt;/h3&gt; 
&lt;p&gt;ベクトル検索の多くの場合、ヒットしたドキュメントが持つベクトルデータはアプリケーションから直接利用されません。検索クエリで事前にベクトルデータを返さないように設定することでネットワーク転送や json シリアライゼーションのオーバーヘッドが削減され、結果的に検索レイテンシを低減する効果があります。&lt;/p&gt; 
&lt;div class="hide-language"&gt; 
 &lt;pre&gt;&lt;code class="lang-http"&gt;GET /&amp;lt;index-name&amp;gt;/_search
{
  "_source": {
    "excludes": ["vector_field"]
  },
  "query": {
    "knn": {
      "vector_field": {
        "vector": [...],
        "k": 5
      }
    }
  }
}&lt;/code&gt;&lt;/pre&gt; 
&lt;/div&gt; 
&lt;h1&gt;まとめ&lt;/h1&gt; 
&lt;p&gt;本ブログでは、OpenSearch Service において FAISS エンジンを使用したベクトル検索ワークロードを運用している際に発生しうるトラブルとして検索クエリに対するレイテンシーの増加に着目し、その原因究明と対処方法選択の考え方について紹介しました。一般的に OpenSearch を利用した検索のクエリパフォーマンスを改善する場合は、様々な要素が複雑に絡み合う場合があり、特に複数の検索条件、フィルター、集計などを併用している場合にクエリパフォーマンスに影響が出る場合が多いです。一方で今回取り上げたようにベクトル検索単体においてもそのパフォーマンスの改善の余地があり、適切にモニタリングをした上で改善施策を取ることが重要です。&lt;br&gt; OpenSearch Service の機能は継続的に拡充されているため、新機能を活用するためにもクラスターのバージョンアップグレードを定期的に検討することを推奨します。&lt;/p&gt; 
&lt;hr&gt; 
&lt;h1&gt;著者&lt;/h1&gt; 
&lt;h3&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/Takuo-photo.jpeg"&gt;&lt;img loading="lazy" class="size-full wp-image-182605 alignleft" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/Takuo-photo.jpeg" alt="" width="125" height="188"&gt;&lt;/a&gt;黒木 琢央 (Takuo Kuroki)&lt;/h3&gt; 
&lt;p&gt;アマゾンウェブサービスジャパン合同会社ソリューションアーキテクト&lt;/p&gt; 
&lt;p&gt;2024年4月入社。現在toCのITサービス提供企業におけるクラウド全般の技術支援を行いつつ、OpenSearchのコミュニティ活動や機能改善に取り組んでいます。&lt;/p&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>C# を使用した Amazon DynamoDB でのネストされたトランザクションの有効化</title>
		<link>https://aws.amazon.com/jp/blogs/news/enabling-nested-transactions-in-amazon-dynamodb-using-c/</link>
		
		<dc:creator><![CDATA[shimada akari]]></dc:creator>
		<pubDate>Tue, 07 Apr 2026 05:17:31 +0000</pubDate>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Amazon DynamoDB]]></category>
		<category><![CDATA[Database]]></category>
		<guid isPermaLink="false">ddc30475fac41956b4bd0bfa0d51aa6017e2754a</guid>

					<description>Amazon DynamoDB は、あらゆる規模の高性能アプリケーション向けに設計された、フルマネージド型のサーバーレス NoSQL データベースサービスです。この記事では、C# を使用して DynamoDB で ACID (原子性、一貫性、分離性、永続性) 準拠のトランザクションを管理するフレームワークを紹介します。このフレームワークは、ネストされたトランザクションのサポートを特徴としています。この機能により、.NET アプリケーション内でデータの一貫性とエラー処理をより細かく制御しながら、洗練されたロジックを実装できます。このネストされたトランザクションフレームワークを使用すると、問題を分離し、部分的なロールバックを可能にし、DynamoDB の組み込みトランザクション機能の上に保守可能でモジュール化されたワークフローを構築できます。</description>
										<content:encoded>&lt;p&gt;本記事は 2026 年 03 月 31 日 に公開された “&lt;a href="https://aws.amazon.com/blogs/database/enabling-nested-transactions-in-amazon-dynamodb-using-c/"&gt;Enabling nested transactions in Amazon DynamoDB using C#&lt;/a&gt;” を翻訳したものです。翻訳は Solutions Architect の嶋田 朱里が担当しました。&lt;/p&gt; 
&lt;p&gt;&lt;a href="https://aws.amazon.com/jp/dynamodb/"&gt;Amazon DynamoDB&lt;/a&gt; は、あらゆる規模の高性能アプリケーション向けに設計された、フルマネージド型のサーバーレス NoSQL データベースサービスです。この記事では、C# を使用して DynamoDB で ACID (原子性、一貫性、分離性、永続性) 準拠のトランザクションを管理するフレームワークを紹介します。このフレームワークは、ネストされたトランザクションのサポートを特徴としています。この機能により、.NET アプリケーション内でデータの一貫性とエラー処理をより細かく制御しながら、洗練されたロジックを実装できます。このネストされたトランザクションフレームワークを使用すると、問題を分離し、部分的なロールバックを可能にし、DynamoDB の組み込みトランザクション機能の上に保守可能でモジュール化されたワークフローを構築できます。&lt;/p&gt; 
&lt;p&gt;&lt;span id="more-182660"&gt;&lt;/span&gt;&lt;/p&gt; 
&lt;h2&gt;トランザクションフレームワークのおさらい&lt;/h2&gt; 
&lt;p&gt;ネストされたトランザクションに入る前に、このトランザクションフレームワークが何をするのかを簡単に振り返りましょう。&lt;a href="https://github.com/aws-samples/sample-dynamodb-nested-transaction-framework/tree/main/BootCampDynamoDBAppCore/WindowsFormsApp1"&gt;Amazon DynamoDB トランザクションフレームワーク&lt;/a&gt; は、DynamoDB の組み込みトランザクション機能を使った作業を効率化する C# ライブラリです。このフレームワークは以下を提供します。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;トランザクションのライフサイクル (開始、コミット、ロールバック) を管理する &lt;code&gt;TransactScope&lt;/code&gt; クラス&lt;/li&gt; 
 &lt;li&gt;複数の DynamoDB テーブルにわたる ACID 準拠の操作の効率化&lt;/li&gt; 
 &lt;li&gt;DynamoDB の &lt;code&gt;TransactWriteItems&lt;/code&gt; および &lt;code&gt;TransactGetItems&lt;/code&gt; API の低レベルの詳細 (複数のネストされたレベルにわたるトランザクションの調整やリクエストの構築など) を管理する抽象化レイヤー&lt;/li&gt; 
 &lt;li&gt;フレームワークに組み込まれたエラー処理と再試行ロジック&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;このフレームワークは、複数の関連するデータアイテムを扱う場合でも、データの一貫性を維持する信頼性の高いアプリケーションの構築を支援します。在庫管理、金融取引、ユーザープロファイルの更新、または複数の DynamoDB 操作が単一のユニットとして成功または失敗する必要があるあらゆる状況で使用できます。&lt;/p&gt; 
&lt;h2&gt;ネストされたトランザクションが重要な理由&lt;/h2&gt; 
&lt;p&gt;ネストされたトランザクションにより、トランザクション操作を親トランザクションのスコープ内に存在させることができます。この機能は、エンタープライズグレードのシステムにおける柔軟性と堅牢性を向上させます。たとえば、システム内のモジュール化されたコンポーネントは、親トランザクション構造に影響を与えることなく独自のロジックをカプセル化でき、プロセスの一部で問題が発生した場合に部分的なロールバックを実行できます。エラーの影響範囲を発生元のトランザクション内に閉じ込めることで、ネストされたトランザクションはトランザクション全体の失敗のリスクを軽減し、フォールトトレランスを向上させ、システムのデバッグと保守をより容易にします。&lt;/p&gt; 
&lt;h2&gt;サンプルアプリケーションの概要&lt;/h2&gt; 
&lt;p&gt;ネストされたトランザクションを実際にどのように使用できるかを示すために、フレームワークの機能を紹介する &lt;a href="https://github.com/aws-samples/sample-dynamodb-nested-transaction-framework/tree/main/BootCampDynamoDBAppCore/WindowsFormsApp1"&gt;サンプル Windows Forms アプリケーション&lt;/a&gt; を作成しました。このアプリケーションでは、複数レベルのネストされたトランザクションを通じてトランザクションの整合性を維持しながら、さまざまな製品タイプに対して一般的なデータ操作 (作成、削除、取得) を実行できます。&lt;/p&gt; 
&lt;p&gt;このサンプルアプリケーションは、ネストされたトランザクションが特に有効な、いくつかの一般的なシナリオを想定して作られています。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;strong&gt;複雑なビジネスワークフロー&lt;/strong&gt; : 複数の関連アイテム (e コマースの注文プロセスやコンテンツ管理の更新など) に変更を加える必要がある場合&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;エラーの分離&lt;/strong&gt; : プロセス全体をロールバックすることなく、特定の操作グループ内で障害を封じ込めたい場合&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;モジュール化されたシステム統合&lt;/strong&gt; : システムのさまざまなコンポーネントが独自のトランザクションコンテキストを維持する必要がある場合&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;次の画像の UI アプリケーションは、ネストされたトランザクションフレームワークを使用する &lt;strong&gt;DynamoDB Transaction Example&lt;/strong&gt; というタイトルのフォームを提供します。これは、ネストされたトランザクションの仕組みを使って書籍、アルバム、映画を管理します。&lt;/p&gt; 
&lt;p&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/887309d048beef83ad3eabf2a79a64a389ab1c9f/2026/03/20/DBBLOG-4020-image-1.png" alt="Form"&gt;&lt;/p&gt; 
&lt;p&gt;主要な手順の流れは次のとおりです。&lt;/p&gt; 
&lt;ol&gt; 
 &lt;li&gt;書籍、アルバム、映画用の DynamoDB テーブルを初期化するには、&lt;strong&gt;Create Product Tables (Book, Album, Movie)&lt;/strong&gt; を選択します。これは通常、管理者として処理する 1 回限りのセットアップ手順です。&lt;/li&gt; 
 &lt;li&gt;テーブルが配置されたら、&lt;strong&gt;Product Type&lt;/strong&gt; ドロップダウンメニューから &lt;strong&gt;Album&lt;/strong&gt;、&lt;strong&gt;Book&lt;/strong&gt;、または &lt;strong&gt;Movie&lt;/strong&gt; を選択します。この選択により、フォームフィールドが製品の属性に合わせてカスタマイズされます。たとえば、&lt;strong&gt;Album&lt;/strong&gt; を選択すると &lt;strong&gt;Album Artist&lt;/strong&gt; と &lt;strong&gt;Title&lt;/strong&gt; の入力が求められ、&lt;strong&gt;Movie&lt;/strong&gt; では &lt;strong&gt;Director&lt;/strong&gt; と &lt;strong&gt;Genre&lt;/strong&gt; が求められます。&lt;/li&gt; 
 &lt;li&gt;対応する製品の詳細を入力します。これらの詳細は、選択した製品カテゴリによって異なります。たとえば、書籍には著者名、タイトル、およびオプションで出版日が必要であり、映画には監督名、タイトル、ジャンルが必要です。フォームでは、製品エントリの追加、削除、取得を含むトランザクション操作を実行するオプションが提供されます。&lt;/li&gt; 
&lt;/ol&gt; 
&lt;p&gt;このアプリでは、ネストされたトランザクションを使用して、複数のトランザクションを開始し、それぞれのトランザクション内でアイテムの追加や削除を行い、個別にコミットまたはロールバックできます。また、ネストされたトランザクションフレームワークの動作を確認できるよう、親トランザクションと子トランザクションの間を行き来できるナビゲーション機能も備えています。これにより、どの操作をどのトランザクションにまとめるかを細かく制御できます。現在のトランザクションの階層は括弧内の数字で表示され (たとえば、&lt;strong&gt;Transaction (1)&lt;/strong&gt;)、&lt;strong&gt;Commit Transaction&lt;/strong&gt; や &lt;strong&gt;Rollback Transaction&lt;/strong&gt; などの操作は、現在の階層とその配下の子トランザクションに対して適用されます。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;Album Artist&lt;/strong&gt; や &lt;strong&gt;Title&lt;/strong&gt; などのキーを提供することで、オプションで製品データを取得できます (&lt;strong&gt;Retrieve Item&lt;/strong&gt; を選択)。すべての応答 (成功メッセージ、エラー通知、または取得されたデータ) は、&lt;strong&gt;Response Message&lt;/strong&gt; フィールドと対応する製品属性ボックスに表示されます。&lt;/p&gt; 
&lt;p&gt;次の図は、DynamoDB でのネストされたトランザクションのシーケンスフローを示しています。親と子のトランザクションスコープがどのように相互作用して分離されたアトミック操作を提供するかを示しています。&lt;/p&gt; 
&lt;p&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/887309d048beef83ad3eabf2a79a64a389ab1c9f/2026/03/20/DBBLOG-4020-image-2.png" alt="Sequence diagram"&gt;&lt;/p&gt; 
&lt;h2&gt;フレームワークアーキテクチャ&lt;/h2&gt; 
&lt;p&gt;このフレームワークは、&lt;code&gt;TransactScope&lt;/code&gt; クラスを強化し、Composition や Chain of Responsibility などのデザインパターンを採用することで、ネストされたトランザクションをサポートします。&lt;/p&gt; 
&lt;p&gt;コミット操作は後入れ先出し (LIFO) の順序に従い、親の前に子の &lt;code&gt;TransactScope&lt;/code&gt; を処理します。また、ロールバック操作も下位へと順次伝播するため、障害発生時には完全にクリーンアップされます。このシステムはスコープ間の双方向移動を可能にし、複雑なトランザクションフローの管理をより簡単にします。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;アーキテクチャの適用性に関する注意:&lt;/strong&gt; ここで提示されるフレームワークアーキテクチャ設計は、上記のサンプルアプリケーションでは C# で実装されていますが、他のすべてのオブジェクト指向プログラミング言語とプラットフォームに適用され、設計原則の幅広い適用性を保証します。&lt;/p&gt; 
&lt;p&gt;次の図は、カスタム &lt;code&gt;TransactScope&lt;/code&gt; クラス構造を使用したネストされたトランザクションモデルを示しています。&lt;code&gt;_transactRequest&lt;/code&gt; プロパティは &lt;code&gt;TransactWriteItemsRequest&lt;/code&gt; を保持し、DynamoDB の複数の書き込み操作 (Put、Update、Delete) を単一のトランザクションにバッチ処理するために使用されます。&lt;code&gt;_childTransactScope&lt;/code&gt; は &lt;code&gt;TransactScope&lt;/code&gt; (具体的には子スコープ) を指し、この &lt;code&gt;TransactScope&lt;/code&gt; 内にネストされたトランザクションが存在することを示します。逆に、&lt;code&gt;_parentTransactScope&lt;/code&gt; は親の &lt;code&gt;TransactScope&lt;/code&gt; を指し、トランザクション間の親子関係を確立します。&lt;/p&gt; 
&lt;p&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/887309d048beef83ad3eabf2a79a64a389ab1c9f/2026/03/20/DBBLOG-4020-image-3.png" alt="Frame architect"&gt;&lt;/p&gt; 
&lt;h2&gt;レイヤードアーキテクチャ&lt;/h2&gt; 
&lt;p&gt;アプリケーションでネストされたトランザクションフレームワークを効果的に使用するには、そのレイヤードアーキテクチャを理解することが役立ちます。この設計は責務の分離を提供し、コードの保守性とテストのしやすさを向上させます。アーキテクチャは 4 つの主要なレイヤーで構成されています。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;strong&gt;UI レイヤー&lt;/strong&gt; : Windows Forms インターフェイスは、トランザクションの開始と管理のエントリポイントとして機能します。サービスレイヤーのメソッドを呼び出して、BeginTransaction()、CommitTransactionAsync()、RollbackTransaction() を実行し、トランザクションのライフサイクルを制御します。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;サービスレイヤー&lt;/strong&gt; : &lt;code&gt;ProductService&lt;/code&gt; や &lt;code&gt;TransactScope&lt;/code&gt; を含むこのレイヤーは、トランザクションのオーケストレーションを管理します。ネストされたスコープ間を作成およびナビゲートし、トランザクションロジックを一元化します。これは、トランザクション管理コードの大部分が存在する場所です。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;データアクセスレイヤー&lt;/strong&gt; : ここで、&lt;code&gt;ProductProvider&lt;/code&gt; は、サービスレイヤーによって提供されるトランザクションコンテキスト内で、挿入や削除などのデータ操作を実行します。このレイヤーで、ドメインオブジェクトの特定のデータアクセスロジックを実装します。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;DynamoDB&lt;/strong&gt; : 最下層では、DynamoDB が組み込みトランザクション API (&lt;code&gt;TransactWriteItems&lt;/code&gt;) を通じてアトミックな実行をサポートし、すべての操作が成功するか、いずれも成功しないことを保証します。&lt;/li&gt; 
&lt;/ul&gt; 
&lt;h2&gt;設計のハイライト&lt;/h2&gt; 
&lt;p&gt;ワークフローは、使いやすさと堅牢性を向上させるコア機能を備えて設計されており、主に Begin/Commit/Rollback 構造を通じて実現されています。これにより、操作をアトミック (すべて成功するか、いずれも成功しない) にすることで、DynamoDB でのトランザクションの整合性と一貫性が保証されます。さらに、ネストされたトランザクションを使用する機能により、親スコープと子スコープを簡単に切り替えることで、より複雑でモジュール化されたワークフローが可能になります。&lt;/p&gt; 
&lt;p&gt;インターフェイスは、アクションを追跡するのに役立つ動的なフィードバックも提供します。トランザクションの深さインジケーター (括弧内に表示) は、操作がステージングされるにつれて更新され、ワークフローの現在の状態に関する明確な洞察を提供します。最後に、システムは統一されたインターフェイス内で複数の製品タイプ (書籍、アルバム、映画) をサポートします。これにより、同じトランザクションスコープ内で複数の DynamoDB テーブルにわたってアイテムを追加、削除、取得できます。サービスレイヤーでの一元化されたトランザクション管理により、責任が明確に分離され、DynamoDB が原子性を提供します。このレイヤードアプローチは、実世界のアプリケーションに必要な柔軟性を提供しながら、保守性を向上させます。&lt;/p&gt; 
&lt;h2&gt;ネストされたトランザクションのベストプラクティス&lt;/h2&gt; 
&lt;p&gt;アプリケーションでこの設計を最大限に活用するには、次の実用的なガイドラインに従ってください。&lt;/p&gt; 
&lt;ol&gt; 
 &lt;li&gt;&lt;strong&gt;DynamoDB の制限に注意する&lt;/strong&gt; – &lt;a href="https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/developerguide/transaction-apis.html"&gt;DynamoDB の制限&lt;/a&gt; (100 アイテム、トランザクションあたり 4 MB) 内に収まるように、トランザクションを短く保ちます。それに応じてデータモデルを計画してください。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;再試行ロジックを実装する&lt;/strong&gt; : DynamoDB トランザクションは、条件チェック、競合、または容量の問題により失敗する可能性があります。指数バックオフを使用した効果的な再試行メカニズムをアプリケーションに組み込んでください。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;パフォーマンスを監視する&lt;/strong&gt; : &lt;a href="https://aws.amazon.com/jp/cloudwatch/"&gt;Amazon CloudWatch&lt;/a&gt; アラームを設定して、トランザクション競合率、レイテンシー、例外などのトランザクションメトリクスを追跡し、ボトルネックを早期に特定します。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;ネストの深さを制限する&lt;/strong&gt; : ネストされたトランザクションは柔軟性を提供しますが、過度のネスト (3 〜 4 レベルを超える) は、デバッグと保守が困難な過度に複雑な実行パスを作成する可能性があります。&lt;/li&gt; 
&lt;/ol&gt; 
&lt;h2&gt;実世界のユースケース&lt;/h2&gt; 
&lt;p&gt;フレームワークを理解したところで、独自のアプリケーションでネストされたトランザクションを適用できるいくつかの実用的なシナリオについて説明しましょう。&lt;/p&gt; 
&lt;ol&gt; 
 &lt;li&gt;&lt;strong&gt;e コマースの注文処理&lt;/strong&gt; : 顧客が注文を行う場合、在庫レベルの更新、支払い情報の処理、注文レコードの作成が必要になる場合があります。ネストされたトランザクションを使用すると、支払い処理をサブトランザクションに分離でき、支払いが失敗した場合に独立してロールバックできます。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;複数ステップのユーザー登録&lt;/strong&gt; : 初期ユーザープロファイルの作成、セキュリティ検証、アカウントの最終化など、複数の検証ステップを含む複雑な登録プロセスがアプリケーションに必要な場合、ネストされたトランザクションを使用して各段階の進行状況を追跡しながら、必要に応じて特定のステップをロールバックする機能を維持できます。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;コンテンツ管理システム&lt;/strong&gt; : 複数の関連エンティティ (記事、著者、カテゴリなど) への更新を必要とするコンテンツを公開する場合、ネストされたトランザクションは、特定のドメイン内で部分的な操作を可能にしながら一貫性を維持するのに役立ちます。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;金融アプリケーション&lt;/strong&gt; : 複数のアカウントや金融商品を含む操作の場合、ネストされたトランザクションは、アカウント管理コンテキスト、トランザクション処理コンテキスト、データ整合性コンテキストなどの特定の操作コンテキストを分離しながら、一貫性を提供するために必要なきめ細かい制御を提供します。&lt;/li&gt; 
&lt;/ol&gt; 
&lt;h2&gt;まとめ&lt;/h2&gt; 
&lt;p&gt;この記事では、C# を使用した Amazon DynamoDB でのネストされたトランザクションフレームワークを紹介しました。これにより、トランザクションワークフローでの制御と堅牢性が向上します。&lt;code&gt;TransactScope&lt;/code&gt; クラスを拡張することで、このソリューションは、コミットとロールバックの動作をより細かく制御しながら、複雑でモジュール化されたビジネス操作をモデル化する柔軟性を提供します。構造化された UI ワークフローと、UI レイヤー、サービスレイヤー、データアクセスレイヤーにまたがるレイヤードアーキテクチャは、すべての製品関連操作にわたってトランザクションの整合性、分離性、一貫性を提供します。&lt;/p&gt; 
&lt;p&gt;この実装の完全なソースコードは、&lt;a href="https://github.com/aws-samples/sample-dynamodb-nested-transaction-framework"&gt;GitHub リポジトリ&lt;/a&gt; で入手できます。&lt;/p&gt; 
&lt;hr&gt; 
&lt;h2&gt;著者について&lt;/h2&gt; 
&lt;p&gt;&lt;img loading="lazy" class="alignnone" src="https://d2908q01vomqb2.cloudfront.net/887309d048beef83ad3eabf2a79a64a389ab1c9f/2026/03/20/DBBLOG-4020-image-4-100x75.jpeg" alt="Jeff Chen" width="123" height="92"&gt;&lt;/p&gt; 
&lt;h3&gt;Jeff Chen&lt;/h3&gt; 
&lt;p&gt;&lt;a href="https://www.linkedin.com/in/jeff-chen-88553a1/"&gt;Jeff&lt;/a&gt; は、AWS Professional Services のプリンシパルコンサルタントであり、生成 AI を活用したアプリケーションのモダナイゼーションと移行プロジェクトを通じて顧客を支援することを専門としています。生成 AI 以外にも、DevOps、データ分析、インフラストラクチャプロビジョニング、セキュリティなど、さまざまなドメインにわたってビジネス価値を提供し、組織が戦略的なクラウド目標を達成できるよう支援しています。&lt;/p&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>AWS Security Agent のオンデマンドペネトレーションテストの一般提供を開始</title>
		<link>https://aws.amazon.com/jp/blogs/news/aws-security-agent-on-demand-penetration-testing-now-generally-available/</link>
		
		<dc:creator><![CDATA[中島 章博]]></dc:creator>
		<pubDate>Tue, 07 Apr 2026 01:59:54 +0000</pubDate>
				<category><![CDATA[Security, Identity, & Compliance]]></category>
		<category><![CDATA[Security Blog]]></category>
		<guid isPermaLink="false">18f5b78ae88b70be104b8a74da1aa2e0c78e0a57</guid>

					<description>AWS Security Agent のオンデマンドペネトレーションテストの一般提供を開始しました。エージェンティック AI を活用した自律型ペネトレーションテストにより、すべてのアプリケーションを対象に、手動テストの数分の一のコストで脆弱性の検出・検証・修復までを実現します。コンテキスト認識型のアプローチにより、単独では見過ごされる脆弱性も検出し、それらの連鎖がもたらす重大なリスクを特定します。本記事では、仕組み、セットアップ手順、料金体系を詳しく解説します。</description>
										<content:encoded>&lt;p&gt;本ブログは 2026 年 3 月 31 日に公開された AWS Blog “&lt;a href="https://aws.amazon.com/blogs/security/aws-security-agent-on-demand-penetration-testing-now-generally-available/" rel="noopener" target="_blank"&gt;AWS Security Agent on-demand penetration testing now generally available&lt;/a&gt;” を翻訳したものです。&lt;/p&gt; 
&lt;p&gt;本日 (2026 年 3 月 31 日)、&lt;span class="LinkEnhancement"&gt;&lt;a class="Link" href="https://aws.amazon.com/jp/security-agent" target="_blank" rel="noopener" data-cms-ai="0"&gt;AWS Security Agent&lt;/a&gt;&lt;/span&gt; のオンデマンドペネトレーションテストの一般提供を開始しました。最も重要なアプリケーションだけでなく、すべてのアプリケーションに対して包括的なセキュリティテストを実施できるようになります。この一般提供開始により、ペネトレーションテストは定期実施というボトルネックから脱却し、AWS、Azure、GCP をはじめとするクラウドプロバイダーやオンプレミス環境全体で開発速度に合わせてスケールするオンデマンドの機能へと進化します。マルチクラウドに対応しているため、AWS Security Agent を使用してインフラストラクチャ全体のペネトレーションテストを一元管理できます。&lt;/p&gt; 
&lt;p&gt;AWS Security Agent は、手動のペネトレーションテストの数分の一のコストで、24 時間 365 日稼働する自律型ペネトレーションテストを提供します。多くの組織では、時間とコストの制約から、手動のペネトレーションテストを最も重要なアプリケーションに限定して定期的に実施しています。このアプローチでは、テストの合間にアプリケーションポートフォリオの大部分が脆弱性にさらされたままになるリスクがあります。AWS Security Agent を使用すれば、最も重要なアプリケーションだけでなく、すべてのアプリケーションを対象にペネトレーションテストの速度、頻度、カバレッジを向上させることができます。AWS Security Agent のアプローチにより、ペネトレーションテストの所要期間を数週間から数日に短縮でき、開発速度を維持しながらリスクにさらされる期間を大幅に削減できます。&lt;/p&gt; 
&lt;p&gt;プレビュー期間中、HENNGE株式会社は次のように述べています。「AWS Security Agent は、手動テストでは発見できなかった貴重なインサイトを提供し、HENNGE の製品やサービスの堅牢性向上に貢献してくれました。コンテキスト認識型のエージェンティック AI アプローチは従来の方法とは異なるインサイトを提供し、セキュリティの検出結果にとどまらず、貴重なアプリケーション改善点を明らかにしてくれます。これにより、セキュリティライフサイクルを大幅に加速し、一般的なテスト期間を 90% 以上短縮できます」。&lt;/p&gt; 
&lt;h2&gt;オンデマンドペネトレーションテストの仕組み&lt;/h2&gt; 
&lt;p&gt;AWS Security Agent は、フロンティアエージェントと呼ばれる新しいクラスの自律型システムです。目標達成のために自律的に動作し、同時実行タスクに応じて大規模にスケールし、人間による常時監視なしで継続的に稼働します。高度なマルチステップ攻撃シナリオを通じてセキュリティ上の脆弱性の検出、検証、レポートを支援する専門的な AI エージェントをデプロイします。検証せずに検出結果を生成する従来のスキャナーとは異なり、AWS Security Agent はペネトレーションテスターとして動作します。潜在的な脆弱性の特定を支援し、その後ターゲットを絞ったペイロードと連鎖攻撃による悪用を試みることで、それらが実際のセキュリティリスクであることを検証します。&lt;/p&gt; 
&lt;p&gt;例えば、新しい決済処理機能をデプロイするケースを考えてみましょう。従来のペネトレーションテストでは、次のアセスメントのスケジュール (数週間から数か月先になることもあります) までリリースを遅らせるか、不確実性を残したままデプロイするかの選択を迫られます。AWS Security Agent を使用すれば、図 1 に示すように数分でペネトレーションテストを開始でき、数時間以内に検証済みの検出結果を受け取ることができます。これにより、重大な脆弱性が本番環境に持ち込まれる前に特定・修復でき、より確信を持ってデプロイできます。&lt;/p&gt; 
&lt;div id="attachment_41716" style="width: 898px" class="wp-caption aligncenter"&gt; 
 &lt;img loading="lazy" aria-describedby="caption-attachment-41716" src="https://d2908q01vomqb2.cloudfront.net/22d200f8670dbdb3e253a90eee5098477c95c23d/2026/03/31/Image-1.png" alt="図 1: 数分でペンテストを開始し、数時間以内に検証済みの検出結果を受け取る" width="888" height="500" class="size-full wp-image-41716"&gt;
 &lt;p&gt;&lt;/p&gt; 
 &lt;p id="caption-attachment-41716" class="wp-caption-text"&gt;図 1: 数分でペンテストを開始し、数時間以内に検証済みの検出結果を受け取る&lt;/p&gt; 
&lt;/div&gt; 
&lt;p&gt;この検証アプローチにより誤検知を最小限に抑えるとともに、エージェントの推論プロセスを可視化します。エージェントは、攻撃の計画方法、使用するペイロード、悪用のために構築するツール、悪用の成功を検証する方法を提示することで、透明性を確保します。図 2 に示すように、各検出結果には共通脆弱性評価システム (CVSS) のリスクスコア、アプリケーション固有の深刻度評価、詳細な再現手順が含まれています。これにより、チームはスキャナーのノイズを調査する代わりに、確認済みの脆弱性への対応に集中できます。&lt;/p&gt; 
&lt;div id="attachment_41722" style="width: 1810px" class="wp-caption aligncenter"&gt; 
 &lt;img aria-describedby="caption-attachment-41722" loading="lazy" src="https://d2908q01vomqb2.cloudfront.net/22d200f8670dbdb3e253a90eee5098477c95c23d/2026/03/31/TestFindings.png" alt="図 2: 各検出結果には CVSS リスクスコア、アプリケーション固有の深刻度評価、詳細な再現手順が含まれる" width="1800" height="1080" class="size-full wp-image-41722"&gt;
 &lt;p&gt;&lt;/p&gt; 
 &lt;p id="caption-attachment-41722" class="wp-caption-text"&gt;図 2: 各検出結果には CVSS リスクスコア、アプリケーション固有の深刻度評価、詳細な再現手順が含まれる&lt;/p&gt; 
&lt;/div&gt; 
&lt;h2&gt;AWS Security Agent によるプロアクティブなコンテキスト認識型アプリケーションセキュリティの実現&lt;/h2&gt; 
&lt;p&gt;AWS Security Agent は、静的アプリケーションセキュリティテスト (SAST)、動的アプリケーションセキュリティテスト (DAST)、ペネトレーションテストの機能を、単一のコンテキスト認識型エージェントに統合します。エージェントは、設計ドキュメント、アーキテクチャ図、Infrastructure as Code、ソースコード、ユーザーストーリー、脅威モデルを取り込むことで、アプリケーションの設計・構築・デプロイの方法を理解します。その上で、個々の脆弱性がどのようにつながり、より深刻度の高い連鎖攻撃を形成するかを特定します。こうした豊富なコンテキストにより、より品質の高い検出結果と、実行しやすい修復の推奨事項が得られます。&lt;/p&gt; 
&lt;h3&gt;AWS Security Agent が検出する 3 つの検出結果の例&lt;/h3&gt; 
&lt;p&gt;以下の検出結果の例は他のツールでも発見される可能性がありますが、それらのツールにはアプリケーションの設計・構築・使用方法や、各検出結果が連鎖攻撃の一部としてどのように悪用されるかについてのコンテキスト認識が欠けるため、個別に検出されたとしても適切に優先順位付けされない可能性があります。これらの検出結果はお客様が記述したカスタムコードに存在するため、必ずしも既知の CVE の脆弱性が存在するとは限らないため、ゼロデイ脆弱性の発見にあたります。&lt;/p&gt; 
&lt;ul class="rte2-style-ul" id="rte-abbb0e30-293e-11f1-af00-4b7eefae8e7e"&gt; 
 &lt;li&gt;&lt;b&gt;検出結果 1 – 格納型クロスサイトスクリプティング (XSS) (CVSS 6.1、中)&lt;/b&gt;: 脅威アクターがコメントフィールドにスクリプトをインジェクトし、標準的な HTTPS トラフィックを介して管理者のセッション Cookie をキャプチャできる可能性があります。SAST や DAST では、バックログ内の数百もの他の検出結果に埋もれる中程度の深刻度の入力検証問題として報告される可能性があります。アプリケーションのコンテキストがなければ、これが重大な連鎖攻撃への入口であることを認識するのは困難です&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;検出結果 2 – 管理者アクセスを介したセッションハイジャック (スコアなし)&lt;/b&gt;: 脅威アクターが、ハイジャックした管理者セッションを使用して制限付きエンドポイントにアクセスする可能性があります。このステップは、既存のどのツールカテゴリでも検出できません。SAST はランタイムセッションではなくコードを分析し、DAST は標準ユーザーとしてクロールします。エンドポイント検出と応答 (EDR) や拡張検出と応答 (XDR) では、他の正当なトラフィックに紛れた有効な HTTPS セッションとして認識されます。検出結果は生成されず、アラートも発生しません&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;検出結果 3 – 管理設定エンドポイントを介したデータベース認証情報の窃取 (CVSS 9.8、重大 – これまで未発見)&lt;/b&gt;: 管理パネルは &lt;code class="CodeInline" style="color: #000"&gt;/admin/config&lt;/code&gt; エンドポイントを公開しており、このエンドポイントは本番データベースの接続文字列 (プレーンテキストの認証情報を含む) などの環境変数を返します。脅威アクターは、ハイジャックした管理者セッションでこのエンドポイントを呼び出して認証情報を抽出し、顧客の個人を特定できる情報 (PII) を含む本番データベースに直接接続して、顧客データセット全体を窃取する可能性があります。SAST はコードが設計どおりに機能しているためフラグを立てません。DAST は管理パネルに到達しません。EDR や XDR は正当な認証済み API コールとして認識します&lt;/li&gt; 
&lt;/ul&gt; 
&lt;h3&gt;AWS Security Agent が点と点をつなぐ&lt;/h3&gt; 
&lt;p&gt;ソースコードとドキュメントを取り込むことで、AWS Security Agent は &lt;code class="CodeInline" style="color: #000"&gt;/admin/config&lt;/code&gt; エンドポイントがデータベース認証情報を公開していることを特定します。これは SAST、DAST、またはソフトウェア構成分析 (SCA) スキャナーでは特定が困難です。SAST や DAST は、検出結果 1 を重大な連鎖攻撃への入口として認識できず、中程度の深刻度の個別の問題として報告する可能性があります。検出結果 2 は検出できません。SAST はセッションではなくコードを分析し、DAST は標準ユーザーとしてクロールし、EDR や XDR は正当なトラフィックに紛れた有効な HTTPS トラフィックとして認識するためです。検出結果 3 も報告されません。SAST は設計どおりに機能するエンドポイントにフラグを立てず、DAST は管理パネルに到達せず、EDR や XDR は正当な API コールとして認識するためです。プロダクト要件ドキュメント (PRD) からは、このエンドポイントが正当なトラブルシューティング目的で設計されたものの、認証ゲートウェイによって不正アクセスが防止されるという前提があったという重要なコンテキストが得られました。AWS Security Agent は 3 つの検出結果をすべて連鎖攻撃としてつなぎ合わせ、各ステップをテストした上で、攻撃全体が成功することを実証します。&lt;/p&gt; 
&lt;h3&gt;脆弱性の連鎖が重大なリスクを生む&lt;/h3&gt; 
&lt;p&gt;優先度の低い CVSS 6.1 の XSS から始まり、SAST や DAST といった自動化ツールでは検出が困難なステップを経て、CVSS 9.8 の重大なデータベース認証情報の窃取へとつながります。検出結果 1 は数週間バックログに放置され、開発者やセキュリティチームのアラート疲れの一因となります。検出結果 2 はどのツールでも検出されません。検出結果 3 は設計どおりの動作であるためフラグが立ちません。開発者は重大および高の検出結果を優先的に修正しますが、数百もの他の検出結果に埋もれた CVSS 6.1 は放置され、お客様は脆弱性にさらされたままになります。AWS Security Agent はアプリケーションコンテキストを活用し、3 つの個別の検出結果で構成されるシーケンス全体を、重大かつ検証済みの脆弱性として格上げします。これにより、より深いインサイトと推奨される修復策が得られ、誤検知が減り、費用対効果の高いペネトレーションテストが実現します。セキュリティチームは、現在のテスト対象を超えた幅広いアプリケーションポートフォリオに対して、継続的なペネトレーションテストを自信を持ってスケールできるようになります。開発中に十分なテストが行われていないアプリケーションにも対応可能です。AWS Security Agent はこれらのインサイトと推奨される修復策を数週間ではなく数時間以内に提供し、お客様がより安全なアプリケーションを迅速にリリースできるよう支援します。&lt;/p&gt; 
&lt;p&gt;&lt;b&gt;Scout24 SE は、これらの機能の価値を実際に確認&lt;/b&gt;&lt;br&gt; &lt;i&gt;「AWS Security Agent は、エージェンティックテストとソースコードのコンテキストを組み合わせてコード認識型アプリケーションセキュリティテストを実現し、従来の DAST を上回りました。他のアプローチでは検出されなかった、公開環境で悪用可能な重大な問題を特定しました。透明性の高い推論により、調査された攻撃パスと達成されたカバレッジを信頼できるようになりました」&lt;/i&gt; – Abdul Al-Kibbe 氏&lt;i&gt;, &lt;/i&gt;Tech Lead, Security, Scout24 SE&lt;/p&gt; 
&lt;p&gt;&lt;b&gt;Bamboo Health は、自社での利用を通じてコンテキスト認識型検出の深さが実証できることを確認&lt;/b&gt;&lt;br&gt; &lt;i&gt;「AWS Security Agent は、アプリケーションとそのコードを真に理解し、そのコンテキストをテスト中の発見内容とつなげることで、他のどのツールでも発見できなかった検出結果を明らかにしました。レガシースキャナーでは、Security Agent が発見した内容にはまったく及びませんでした。人間のペンテストチームでさえ通常は見つけられないような問題を可視化してくれました。防御する側の味方になってくれる AI ツールだと感じたのは初めてです」 &lt;/i&gt;– Travis Allen 氏、Bamboo Health、Manager of Security Operations&lt;/p&gt; 
&lt;h2&gt;最初のペネトレーションテストのセットアップ&lt;/h2&gt; 
&lt;p&gt;ペネトレーションテストのセットアップは簡単で、以下のステップで構成されます。&lt;/p&gt; 
&lt;h3&gt;論理的な境界としてエージェントスペースを作成する&lt;/h3&gt; 
&lt;p&gt;まず、各アプリケーションまたはプロジェクトのエージェントスペースを作成します。エージェントスペースは、アプリケーションのドキュメントやコードリポジトリを接続できる論理的な境界として機能します。エージェントは、ドキュメントやコードから得たアプリケーションコンテキストを使用して、実装に固有のテストケースを作成します。例えば、&lt;i&gt;Ecommerce Platform&lt;/i&gt; エージェントスペースを作成し、GitHub リポジトリ、API 仕様、アーキテクチャドキュメントを接続します。エージェントはこれらの資料を分析し、アプリケーションが決済処理やセッション管理、ユーザーストーリーをどのように処理するかを理解します。その上で、決済操作の脆弱性やセッションハイジャックのリスクなど、実装に固有のテストケースを作成します。&lt;/p&gt; 
&lt;h3&gt;ドメイン所有権の検証を完了する&lt;/h3&gt; 
&lt;p&gt;テスト開始前に、DNS TXT レコードを追加するか、ドメインに検証ファイルをアップロードして、ドメイン所有権の検証を完了します。この必須ステップにより、テスト対象アプリケーションのテストが許可されていることを確認し、お客様と AWS の双方を保護します。ペネトレーションテスト実行時に遅延が発生しないよう、初期設定時にすべてのドメインに対してこの 1 回限りのセットアップを完了してください。&lt;/p&gt; 
&lt;h3&gt;アプリケーションコンテキストを追加して精度と検出の深度を向上させる&lt;/h3&gt; 
&lt;p&gt;これは任意ですが、ソースコードとドキュメントを提供するとテストの精度が大幅に向上します。以下の情報を提供してください。&lt;/p&gt; 
&lt;ul class="rte2-style-ul" id="rte-abbb3540-293e-11f1-af00-4b7eefae8e7e"&gt; 
 &lt;li&gt;&lt;b&gt;ソースコード&lt;/b&gt;: ホワイトボックステストを可能にし、実装固有の脆弱性を特定します。GitHub 統合でソースコードリポジトリを直接接続できます&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;API 仕様 (OpenAPI または Swagger)&lt;/b&gt;: すべてのエンドポイント、パラメータ、認証要件を文書化し、エージェントが試行錯誤でエンドポイントを探索することなく包括的にテストできるようにします&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;アーキテクチャドキュメント&lt;/b&gt;: エージェントがサービス間のやり取りや潜在的な連鎖攻撃を理解するのに役立ちます&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;プロダクト要件ドキュメント&lt;/b&gt;:&lt;b&gt; &lt;/b&gt;アプリケーションの目的、機能、ユーザーストーリーをエージェントが理解するのに役立ちます&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;既存の脅威モデル&lt;/b&gt;: エージェントが最もリスクの高い領域と既知の懸念事項に焦点を当てるよう誘導します&lt;/li&gt; 
&lt;/ul&gt; 
&lt;h3&gt;あらゆる環境でテストする&lt;/h3&gt; 
&lt;p&gt;AWS Security Agent は、AWS、Azure、GCP、その他のクラウドプロバイダー、およびオンプレミス環境に対して動作します。URL を指定してパブリックエンドポイントを直接設定するか、VPC を通じてプライベートエンドポイントを接続し、インターネットに公開せずに内部アプリケーションを安全にテストできます。このマルチクラウドサポートにより、AWS Security Agent を使用してインフラストラクチャ全体のセキュリティテストを一元管理できます。&lt;/p&gt; 
&lt;h2&gt;認証が必要なアプリケーションのテスト&lt;/h2&gt; 
&lt;p&gt;ほとんどの脆弱性はアプリケーションにサインイン後の認証済み領域に存在します。包括的にテストするために、さまざまなユーザーロールに対応する複数の認証情報を設定します。&lt;/p&gt; 
&lt;ul class="rte2-style-ul" id="rte-abbb5c50-293e-11f1-af00-4b7eefae8e7e"&gt; 
 &lt;li&gt;カスタマー向け機能用の標準ユーザー認証情報&lt;/li&gt; 
 &lt;li&gt;管理機能用の特権ユーザー認証情報&lt;/li&gt; 
 &lt;li&gt;API 間認証用のサービスアカウント認証情報&lt;/li&gt; 
 &lt;li&gt;二要素認証 (2FA) を含む多要素認証 (MFA)&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;複数の認証情報セットを使用してテストすることで、AWS Security Agent は権限昇格の脆弱性を特定できます。例えば、標準ユーザーが API パラメータを操作することで管理機能にアクセスできてしまうケースを発見します。&lt;/p&gt; 
&lt;h3&gt;複雑な認証フローに対応するサインインガイダンスの提供&lt;/h3&gt; 
&lt;p&gt;AWS Security Agent は、大規模言語モデル (LLM) ベースのサインイン機能を使用して、OAuth、SAML、Okta、MFA などの認証フローを処理します。明確なサインインガイダンスを提供することで、認証の成功率が大幅に向上します。以下はガイダンスの例です。&lt;/p&gt; 
&lt;ol class="rte2-style-ol" id="rte-6ff298e1-2a0c-11f1-83a0-19b708115d8c" start="1"&gt; 
 &lt;li&gt;&lt;code class="CodeInline" style="color: #000"&gt;app.example.com/auth/login&lt;/code&gt; に移動する&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;[Email or Username] &lt;/b&gt;フィールドに &lt;code class="CodeInline" style="color: #000"&gt;username&lt;/code&gt; を入力する&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;[Password] &lt;/b&gt;フィールドに &lt;code class="CodeInline" style="color: #000"&gt;password&lt;/code&gt; を入力する&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;[Sign In]&lt;/b&gt; を選択する&lt;/li&gt; 
&lt;/ol&gt; 
&lt;p&gt;具体的な指示、段階的な手順、成功の検証基準を提供することで、エージェントが認証フローを確実に処理できるようになります。&lt;/p&gt; 
&lt;h2&gt;検出結果から修復まで: セキュリティライフサイクルの全体像&lt;/h2&gt; 
&lt;p&gt;AWS Security Agent で検出結果を確認し、修復に向けたアクションを実行します。&lt;/p&gt; 
&lt;h3&gt;検証済みの実用的な検出結果&lt;/h3&gt; 
&lt;p&gt;AWS Security Agent は、実際に悪用を試みることで潜在的な脆弱性を検証し、セキュリティリスクの存在を確認します。この検証アプローチにより誤検知が最小限に抑えられ、検出結果の手動検証にかかる時間を削減できるため、チームは修正が必要な実際の脆弱性に集中できます。&lt;span class="LinkEnhancement"&gt;&lt;a class="Link" href="https://aws.amazon.com/jp/blogs/news/inside-aws-security-agent-a-multi-agent-architecture-for-automated-penetration-testing/" target="_blank" rel="noopener" data-cms-ai="0"&gt;&lt;u&gt;エージェントは CVE Bench v2.0 で 92.5% の成功率を達成&lt;/u&gt;&lt;/a&gt;&lt;/span&gt;しており、実際の脆弱性を発見し検証する能力を実証しています。&lt;/p&gt; 
&lt;p&gt;各検出結果には、CVSS リスクスコア、アプリケーション固有の深刻度評価、詳細な再現手順、およびビジネスリスクを説明する影響分析が含まれます。例えば、E コマースアプリケーションでは、エージェントが価格操作の脆弱性を発見することがあります。攻撃者がチェックアウト時に商品価格を変更して無料で商品を入手できるという、売上に直接影響を及ぼす脆弱性です。&lt;/p&gt; 
&lt;p&gt;また、エージェントは脆弱性がどのように連鎖するかも特定し、深刻度の低い検出結果が重大な攻撃への入口となる可能性を示します。&lt;/p&gt; 
&lt;p&gt;レポートは PDF ファイルとしてエクスポートでき、経営層向けレポート、コンプライアンス文書、開発者への引き継ぎ、監査証跡に活用できます。&lt;/p&gt; 
&lt;h3&gt;コード修正の提案を含む修復でプロセスを完結&lt;/h3&gt; 
&lt;p&gt;従来のペネトレーションテストはレポートで終わり、その後、開発者が修正を調査、実装、デプロイするまでに数週間から数か月が経過します。AWS Security Agent はセキュリティライフサイクルを完結させます。&lt;/p&gt; 
&lt;ol class="rte2-style-ol" id="rte-abbb8361-293e-11f1-af00-4b7eefae8e7e" start="1"&gt; 
 &lt;li&gt;&lt;b&gt;ペネトレーションテストを実行&lt;/b&gt;し、確認済みの脆弱性を特定する&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;検出結果をレビュー&lt;/b&gt;し、重大な問題の優先順位を付ける&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;修復をトリガー&lt;/b&gt;し、コード修正を含むプルリクエストを生成する&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;開発者がレビューしてマージ &lt;/b&gt;– すぐに実装可能な修正を、数日ではなく数時間で適用&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;再テスト&lt;/b&gt;し、脆弱性が解決されたことを確認する&lt;/li&gt; 
 &lt;li&gt;&lt;b&gt;自信を持ってデプロイ &lt;/b&gt;– セキュリティの問題が対処済みであることを確認&lt;/li&gt; 
&lt;/ol&gt; 
&lt;h2&gt;オンデマンドペネトレーションテストの開始&lt;/h2&gt; 
&lt;p&gt;AWS Security Agent のオンデマンドペネトレーションテストは、以下の AWS リージョンで利用可能です。&lt;/p&gt; 
&lt;ul class="rte2-style-ul" id="rte-abbb8362-293e-11f1-af00-4b7eefae8e7e"&gt; 
 &lt;li&gt;米国東部 (バージニア北部)&lt;/li&gt; 
 &lt;li&gt;米国西部 (オレゴン)&lt;/li&gt; 
 &lt;li&gt;欧州 (アイルランド)&lt;/li&gt; 
 &lt;li&gt;欧州 (フランクフルト)&lt;/li&gt; 
 &lt;li&gt;アジアパシフィック (シドニー)&lt;/li&gt; 
 &lt;li&gt;アジアパシフィック (東京)&lt;/li&gt; 
&lt;/ul&gt; 
&lt;h3&gt;料金&lt;/h3&gt; 
&lt;p&gt;料金体系はシンプルで明確です。料金は 1 タスク時間あたり 50 USD で、秒単位の従量課金です。タスク時間とは、AWS Security Agent がアプリケーションのテストを実際に実行している時間を指します。現在の実績に基づくと、平均的なアプリケーションテストには約 24 タスク時間を要し、ペネトレーションテストから修復までの標準的なコストは約 1,200 USD です。料金とフリートライアルの詳細については、&lt;span class="LinkEnhancement"&gt;&lt;a class="Link" href="https://aws.amazon.com/jp/security-agent/pricing/" target="_blank" rel="noopener" data-cms-ai="0"&gt;AWS Security Agent の料金ページ&lt;/a&gt;&lt;/span&gt;をご覧ください。&lt;/p&gt; 
&lt;p&gt;&lt;b&gt;請求例:&lt;/b&gt;&lt;/p&gt; 
&lt;ul class="rte2-style-ul" id="rte-abbbaa70-293e-11f1-af00-4b7eefae8e7e"&gt; 
 &lt;li&gt;小規模ウェブアプリケーション (8 タスク時間): 400 USD&lt;/li&gt; 
 &lt;li&gt;中規模 E コマースプラットフォーム (24 タスク時間): 1,200 USD&lt;/li&gt; 
 &lt;li&gt;大規模エンタープライズアプリケーション (48 タスク時間): 2,400 USD&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;&lt;b&gt;注: &lt;/b&gt;上記の請求例と概算コストはあくまで目安であり、保証されるものではありません。実際のコストは、アプリケーションの複雑さ、エンドポイントの数、認証メカニズム、コードベースの規模、必要なテストの深度など、さまざまな要因によって異なります。ペネトレーションテストの所要時間とコストは、アプリケーションの特性に応じて変動します。&lt;/p&gt; 
&lt;p&gt;AWS Security Agent を活用すれば、より迅速かつ頻繁に、より多くのアプリケーションに対して低コストでペネトレーションテストを実行できます。従来の手動ペネトレーションテストと比較して最大 70～90% のコスト削減を実現したお客様もいます。&lt;/p&gt; 
&lt;h3&gt;セキュリティテストを変革する準備はできていますか？&lt;/h3&gt; 
&lt;p&gt;数分でエージェントスペースを作成し、初めてのペネトレーションテストを実行してみましょう。&lt;/p&gt; 
&lt;ol class="rte2-style-ol" id="rte-abbbd180-293e-11f1-af00-4b7eefae8e7e" start="1"&gt; 
 &lt;li&gt;&lt;span class="LinkEnhancement"&gt;&lt;a class="Link" href="https://us-east-1.console.aws.amazon.com/securityagent/" target="_blank" rel="noopener" data-cms-ai="0"&gt;AWS Security Agent の AWS マネジメントコンソール&lt;/a&gt;&lt;/span&gt;にアクセスする&lt;/li&gt; 
 &lt;li&gt;アプリケーションのエージェントスペースを作成する&lt;/li&gt; 
 &lt;li&gt;ドメイン所有権の検証を完了する&lt;/li&gt; 
 &lt;li&gt;コードリポジトリを接続し、ドキュメントを追加する&lt;/li&gt; 
 &lt;li&gt;最初のペネトレーションテストを設定して実行する&lt;/li&gt; 
&lt;/ol&gt; 
&lt;h2&gt;まとめ&lt;/h2&gt; 
&lt;p&gt;AWS Security Agent のオンデマンドペネトレーションテストにより、最も重要なアプリケーションだけを定期的にテストするのではなく、すべてのアプリケーションを継続的にテストできるようになります。まずは 1 つのアプリケーションから始めて、検証済みの検出結果と自動修復を体験し、その後ポートフォリオ全体へ包括的なセキュリティテストを拡大してください。&lt;/p&gt; 
&lt;p&gt;今すぐテストを開始するには、&lt;span class="LinkEnhancement"&gt;&lt;a class="Link" href="https://aws.amazon.com/jp/security-agent/" target="_blank" rel="noopener" data-cms-ai="0"&gt;AWS Security Agent&lt;/a&gt;&lt;/span&gt; にアクセスしてください。&lt;/p&gt; 
&lt;footer&gt; 
 &lt;div class="blog-author-box"&gt; 
  &lt;div class="blog-author-image"&gt; 
   &lt;img loading="lazy" src="https://d2908q01vomqb2.cloudfront.net/22d200f8670dbdb3e253a90eee5098477c95c23d/2026/03/31/ayush-singh-author-1.jpg" alt="Ayush Singh" width="120" height="160" class="aligncenter size-full wp-image-31782"&gt; 
  &lt;/div&gt; 
  &lt;h3 class="lb-h4"&gt;Ayush Singh&lt;/h3&gt; 
  &lt;p&gt;Ayush は AWS のシニアプロダクトマネージャーで、AWS Security Agent の開発をリードしています。エンタープライズグレード、オープンソース、エージェンティック AI プロダクトのスケーリングに豊富な実績があります。組織がセキュリティプラクティスを効果的にスケールするためのツール構築に注力しています。University of Rochester で MBA を、KIIT University でコンピュータサイエンスの B.Tech を取得しています。&lt;/p&gt; 
 &lt;/div&gt; 
 &lt;div class="blog-author-box"&gt; 
  &lt;div class="blog-author-image"&gt; 
   &lt;img loading="lazy" src="https://d2908q01vomqb2.cloudfront.net/22d200f8670dbdb3e253a90eee5098477c95c23d/2025/07/23/Christopher-Rae.jpg" alt="Christopher Rae" width="120" height="160" class="aligncenter size-full wp-image-31782"&gt; 
  &lt;/div&gt; 
  &lt;h3 class="lb-h4"&gt;Christopher Rae&lt;/h3&gt; 
  &lt;p&gt;Christopher は AWS のプリンシパルワールドワイドセキュリティスペシャリスト兼 AI セキュリティ GTM リードです。AI ワークロードの保護、AI を活用したセキュリティ機能、進化する AI 脅威に対するレジリエンスに関する市場参入戦略を策定しています。セキュアバイデザインと多層防御ソリューションの啓蒙を通じて、安全な AI 導入の加速を推進しています。UC San Diego で MBA を、University of Maine で BA を取得しています。余暇にはグルメ旅行、ホッケー、スキー、新しい音楽の発見を楽しんでいます。&lt;/p&gt; 
 &lt;/div&gt; 
&lt;/footer&gt; 
&lt;p&gt;
 &lt;!-- '"` --&gt;&lt;/p&gt; 
&lt;footer&gt; 
 &lt;p&gt;本ブログは Security Solutions Architect の 中島 章博 が翻訳しました。&lt;/p&gt; 
&lt;/footer&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>AWA 株式会社、MongoDB on EC2 から Amazon DocumentDB への移行でデータベースコストを約 50% 削減（Part 1/2）</title>
		<link>https://aws.amazon.com/jp/blogs/news/awa_documentdb_migration_part1/</link>
		
		<dc:creator><![CDATA[Masahiro Fujita]]></dc:creator>
		<pubDate>Tue, 07 Apr 2026 01:03:33 +0000</pubDate>
				<category><![CDATA[Amazon DocumentDB]]></category>
		<category><![CDATA[Migration]]></category>
		<guid isPermaLink="false">f6109021808fd9a6a5d815bfdb26d10b82fe4ed4</guid>

					<description>AWA 株式会社は、MongoDB on Amazon EC2 から Amazon DocumentDB への移行を実施しました。本記事では、ドキュメント指向データベースの活用方法（スキーマレス設計、配列・ネスト構造、非正規化設計）と、Amazon DocumentDB を選択した理由について紹介します。</description>
										<content:encoded>&lt;h2&gt;PART1：ドキュメント指向データベースの活用と Amazon DocumentDB の選択 -検討編-&lt;/h2&gt; 
&lt;p&gt;AWA 株式会社は、1 億 8,000 万曲以上の楽曲を提供する音楽ストリーミングサービス「&lt;a href="https://awa.fm/"&gt;AWA&lt;/a&gt;」を運営しています。&lt;br&gt; 独自のライブ配信機能「&lt;a href="https://app.awa.fm/lounge"&gt;AWA ラウンジ&lt;/a&gt;」やフラワーチャット / フラワースタンプ（投げ銭）機能を備え、幅広いデバイスに対応しています。&lt;/p&gt; 
&lt;p&gt;2015 年のサービス開始当初から AWS 上でシステムを構築してきた同社は、2025 年にサービス基盤のデータベースを MongoDB on Amazon EC2 から &lt;a href="https://aws.amazon.com/documentdb/"&gt;Amazon DocumentDB&lt;/a&gt;（MongoDB 互換）へ移行しました。&lt;br&gt; 本ブログシリーズでは、ドキュメント指向データベースの活用方法と Amazon DocumentDB への移行プロセス、そして移行後の効果について、全 2 回に分けてお客様の声を紹介いたします。&lt;/p&gt; 
&lt;p&gt;&lt;span id="more-179009"&gt;&lt;/span&gt;&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;strong&gt;PART1（本記事）&lt;/strong&gt;: ドキュメント指向データベースの活用と Amazon DocumentDB の選択&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;&lt;a href="https://aws.amazon.com/jp/blogs/news/awa_documentdb_migration_part2/"&gt;PART2&lt;/a&gt;&lt;/strong&gt;: 23 億ドキュメントの移行プロセスとコスト約 50% 削減の効果&lt;/li&gt; 
&lt;/ul&gt; 
&lt;h2&gt;移行検討の背景と課題&lt;/h2&gt; 
&lt;p&gt;AWA では、マイクロサービスの実行基盤に &lt;a href="https://aws.amazon.com/ecs/"&gt;Amazon ECS on AWS Fargate&lt;/a&gt;、キャッシュに &lt;a href="https://aws.amazon.com/elasticache/"&gt;Amazon ElastiCache for Redis&lt;/a&gt;、検索基盤に &lt;a href="https://aws.amazon.com/opensearch-service/"&gt;Amazon OpenSearch Service&lt;/a&gt; を採用するなど、「マネージドサービスへの集約」と「技術スタックの統一」を方針として掲げ、段階的にマネージドサービスへの移行を進めてきました。&lt;br&gt; その中で最後に残っていた大物が、Amazon EC2 上で &lt;a href="https://www.mongodb.com/products/tools/cloud-manager"&gt;MongoDB Cloud Manager&lt;/a&gt; を使用してセルフホストしていたデータベースでした。&lt;/p&gt; 
&lt;p&gt;この環境には、いくつかの運用上の課題がありました。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;strong&gt;コストの高騰&lt;/strong&gt;: セルフホスト環境の運用コストに加え、Cloud Manager の仕様変更によりバックアップコストがさらに増大した。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;スケールダウンの困難さ&lt;/strong&gt;: ピーク時に合わせて拡張した 10 &lt;a href="https://www.mongodb.com/docs/manual/sharding/"&gt;シャード&lt;/a&gt;構成を縮小できなかった。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;バージョンアップの負荷&lt;/strong&gt;: 複数環境のクラスターを個別にアップグレードする必要があり、その作業中に予期しないエラーでの中断が発生、サポートケースへの問い合わせが頻発した。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;事業継続リスク&lt;/strong&gt;: MongoDB クラスターの運用には専門的な知識が求められ、対応できるエンジニアが限られていた。担当者が不在の際の障害対応や、引き継ぎの難しさが事業継続上のリスクとなっていた。&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;当初は、MongoDB のシャード数を削減してスペックを調整し、コストを最適化する案も検討されていました。&lt;br&gt; しかし、シャードを減らすためのデータ退避が何ヶ月経っても完了せず、最終的に MongoDB 側の問題であることが判明しました。&lt;br&gt; この経験から、セルフホスト環境でのコスト最適化に限界を感じ、マネージドサービスへの移行に舵を切ることになりました。&lt;/p&gt; 
&lt;p&gt;2022 年にマネージド化の計画書が作成されましたが、本格的にプロジェクト化したのは 2025 年 4～5 月でした。&lt;br&gt; Cloud Manager のバックアップコスト高騰が最終的な決め手となり、約 4 年越しの移行プロジェクトが始動しました。&lt;/p&gt; 
&lt;div style="text-align:center"&gt;
 &lt;strong&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/27/AWA_Before.png"&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/27/AWA_Before.png" alt="移行前のシステム構成図" width="1024" class="alignnone size-full wp-image-181964" style="border:1px solid #ddd"&gt;&lt;/a&gt;&lt;/strong&gt;
 &lt;br&gt;
 &lt;span style="font-size:14px;color:#545B64"&gt;移行前のシステム構成&lt;/span&gt;
&lt;/div&gt; 
&lt;h2&gt;移行対象データベースの概要&lt;/h2&gt; 
&lt;table style="border-collapse:collapse;width:100%"&gt; 
 &lt;thead&gt; 
  &lt;tr&gt; 
   &lt;th style="border:1px solid #ddd;padding:8px;text-align:left"&gt;項目&lt;/th&gt; 
   &lt;th style="border:1px solid #ddd;padding:8px;text-align:left"&gt;内容&lt;/th&gt; 
  &lt;/tr&gt; 
 &lt;/thead&gt; 
 &lt;tbody&gt; 
  &lt;tr&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;DB エンジン&lt;/td&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;MongoDB 4.4.29（Cloud Manager 管理）&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;構成&lt;/td&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;10 シャード、各シャードが&lt;a href="https://www.mongodb.com/docs/manual/replication/"&gt;レプリカセット&lt;/a&gt;&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;インスタンス&lt;/td&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;r6a.2xlarge × 20 台（データノード）&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;ドキュメント数&lt;/td&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;約 23 億 ( TB 規模 ) &lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;主な格納データ&lt;/td&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;アーティスト情報、プレイリスト、ログイン情報、再生回数、AWA ラウンジ機能&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;アプリケーション言語&lt;/td&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;Go&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;クエリパターン&lt;/td&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;find、update、insert が中心（アグリゲーションパイプライン不使用）&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;Read/Write 比率&lt;/td&gt; 
   &lt;td style="border:1px solid #ddd;padding:8px"&gt;約 30:1 以上（コンテンツ配信の特性上、Read ヘビー）&lt;/td&gt; 
  &lt;/tr&gt; 
 &lt;/tbody&gt; 
&lt;/table&gt; 
&lt;h2&gt;AWA におけるドキュメント指向データベースの活用&lt;/h2&gt; 
&lt;p&gt;AWA はサービス開始当初からドキュメント指向データベースを採用しており、そのデータモデルはサービスの特性と深く結びついています。&lt;br&gt; 移行先の選定にあたっては、ドキュメント指向 DB であることが重要な要件でした。&lt;/p&gt; 
&lt;h3&gt;スキーマレス設計：サービス無停止でのスキーマ変更&lt;/h3&gt; 
&lt;blockquote&gt; 
 &lt;p&gt;「スキーマレスのところが最高です。&lt;br&gt; AWA のポリシーとして、メンテナンスによるサービス停止をゼロに近づけたい。&lt;br&gt; ALTER TABLE のためにサービスを止めるようなことはできれば避けたいですからね。」&lt;/p&gt; 
&lt;/blockquote&gt; 
&lt;p&gt;AWA では、新しいコレクション（RDB におけるテーブルに相当）の追加が 2～3 ヶ月に 1 回程度、既存コレクションのフィールド変更 ( RDB における列追加などに相当 ) が月 1～2 回程度の頻度で発生します。&lt;br&gt; ドキュメント指向データベースでは、これらの変更をサービスを停止することなく実施できます。&lt;br&gt; 新しいフィールドを追加する際は後方互換を保つようにフォールバック処理をコードに組み込み、新しいフィールドがないドキュメントに対してもアプリケーション側で対応する運用を採用しています。&lt;/p&gt; 
&lt;p&gt;スキーマレスの柔軟性を活かしつつ統制を保つため、Go 言語の Struct 定義をスキーマの正として管理しています。&lt;br&gt; Go のフィールド定義がそのまま DB スキーマに反映される仕組みで、直接 DB を変更することはせず、必ず Go コードを通じてアクセスする運用です。&lt;br&gt; アプリケーションのクラス定義と DB のデータ構造が一致するため、RDB で必要になるようなオブジェクトとテーブル間のデータ変換が不要です。&lt;br&gt; 開発者は DB の構造を意識せずにアプリケーションのコードに集中でき、変換処理に起因するバグも防げます。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;RDB : アプリのオブジェクト → O/R マッピング → テーブル（変換が必要）&lt;/li&gt; 
 &lt;li&gt;ドキュメント指向DB : Go Struct → そのまま JSON ドキュメント&lt;/li&gt; 
&lt;/ul&gt; 
&lt;h3&gt;配列・ネスト構造：JOIN 不要のシンプルなクエリ&lt;/h3&gt; 
&lt;p&gt;AWA では、ドキュメント指向データベースの柔軟なデータモデリングを活用しています。以下に、2 つの活用例を紹介します。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;配列の活用例：外部サービス連携の管理&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;ユーザーが連携を許可した外部サービスの ID を配列として保持し、「特定のサービスと連携しているユーザーを検索する」といったクエリを、外部キーや JOIN を使わずにシンプルに実現しています。&lt;/p&gt; 
&lt;p&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/06/rdb_vs_docdb1.png"&gt;&lt;img loading="lazy" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/06/rdb_vs_docdb1.png" alt="" width="1789" height="715" class="alignnone size-full wp-image-180409"&gt;&lt;/a&gt;&lt;/p&gt; 
&lt;p&gt;RDB では、ユーザーテーブルと連携サービステーブルを外部キーで関連付け、JOIN で結合する必要がある処理を、1 回のクエリで完結できます。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;ネスト構造の活用例：認証情報の管理&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;ユーザードキュメント内に外部認証サービスのログイン情報をネストしたオブジェクトとして格納し、auth_provider.id のようなドット記法のクエリで、特定の外部認証サービスの ID でログインしているユーザーを直接検索できます。&lt;br&gt; RDB であれば外部キーと JOIN が必要になる処理を、1 回のクエリで完結できます。&lt;/p&gt; 
&lt;p&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/06/rdb_vs_docdb2.png"&gt;&lt;img loading="lazy" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/06/rdb_vs_docdb2.png" alt="" width="1756" height="759" class="alignnone size-full wp-image-180410"&gt;&lt;/a&gt;&lt;/p&gt; 
&lt;h3&gt;非正規化設計：Read ヘビーなサービスに最適化&lt;/h3&gt; 
&lt;p&gt;AWA のサービスはコンテンツ配信という特性上、Read に大きく寄っています。&lt;br&gt; この特性を活かし、あえて正規化せず 1 ドキュメントに関連する ID を配列で保持する設計を採用しています。&lt;br&gt; 1 つのドキュメントを取得すれば関連するエンティティの ID が全て分かり、それらの実体を主キーで取得するという 2 段階のクエリで、必要なデータを効率的に取得できます。&lt;/p&gt; 
&lt;p&gt;クエリの運用性を高めるため、複雑なクエリやアグリゲーションパイプラインは使用しない方針を取っています。&lt;br&gt; MongoDB のバージョンアップで仕様が変わることがあったため、アグリゲーションが必要にならないようデータ構造自体を設計し、集計が必要な値は書き込み時にカウントアップする方式を採用しています。&lt;br&gt; これにより、読み込み時に集計処理を実行する必要がなくなり、Read の負荷軽減にもつながっています。&lt;/p&gt; 
&lt;h3&gt;インデックス戦略：Read 最適化の設計&lt;/h3&gt; 
&lt;p&gt;AWA では、アプリケーションから発行される全ての Read クエリに対して専用のインデックスを設定しています。&lt;br&gt; 論理削除フラグには専用のインデックスを設け、日付範囲検索にもクエリごとのインデックスを用意するなど、Read 性能を最優先としたインデックス戦略です。&lt;br&gt; 多数のコレクション・インデックスを運用していますが、クエリごとに専用インデックスを設計しているため、意図しない実行計画が選択されることはほとんどありません。&lt;br&gt; MongoDB ではクエリがパイプライン形式で実行されるため、RDB のように複数テーブルの JOIN で実行計画が複雑化しにくいという特性も寄与していると考えられます。&lt;/p&gt; 
&lt;h2&gt;Amazon DocumentDB を選択した理由&lt;/h2&gt; 
&lt;p&gt;AWA がこれらのドキュメント指向 DB の設計を維持しつつ、移行先として Amazon DocumentDB を選択した理由は大きく 3 つあります。&lt;/p&gt; 
&lt;h3&gt;1. MongoDB 互換による低リスクな移行&lt;/h3&gt; 
&lt;blockquote&gt; 
 &lt;p&gt;「MongoDB にこだわりはなく、ドキュメント指向 DB であることが大事。&lt;br&gt; MongoDB との高い互換性がある Amazon DocumentDB が最も移行しやすかった。」&lt;/p&gt; 
&lt;/blockquote&gt; 
&lt;p&gt;Amazon DocumentDB は MongoDB との互換性を備えており、AWA で使用していた find、update、insert といった基本的なクエリはそのまま動作しました。&lt;/p&gt; 
&lt;h3&gt;2. 本番実績に基づく性能への信頼&lt;/h3&gt; 
&lt;p&gt;AWA では移行前から別のワークロードで Amazon DocumentDB を利用しており、1 クラスター・1 ノードの xlarge～2xlarge 程度のインスタンスで高い書き込み性能を確認していました。&lt;br&gt; MongoDB で 10 シャードに分散していた処理を、Amazon DocumentDB の 1 クラスターで処理できるという仮説が、既に本番環境で裏付けられていました。&lt;/p&gt; 
&lt;h3&gt;3. AWS への集約によるコストと運用の最適化&lt;/h3&gt; 
&lt;blockquote&gt; 
 &lt;p&gt;「AWS に集中していたほうがやりやすい。&lt;br&gt; セキュリティ的にも Amazon VPC 内で完結させたかった。」&lt;/p&gt; 
&lt;/blockquote&gt; 
&lt;p&gt;&lt;a href="https://www.mongodb.com/atlas"&gt;MongoDB Atlas&lt;/a&gt; も検討しましたが、AWS 上で全てを管理したいという方針から Amazon DocumentDB を選択しました。&lt;br&gt; &lt;a href="https://aws.amazon.com/vpc/"&gt;Amazon VPC&lt;/a&gt; 内で通信を完結させることでセキュリティ要件を満たしつつ、ネットワーク構成を簡素化できる点も決め手の一つでした。&lt;/p&gt; 
&lt;p&gt;また、Amazon DocumentDB はコンピューティングとストレージが分離されたアーキテクチャを採用しており、Read ヘビーな AWA のワークロードに対して Reader インスタンスを柔軟にスケーリングできます。&lt;br&gt; マネージドサービスとしての自動バックアップや &lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/backup_restore-point_in_time_recovery.html"&gt;PITR&lt;/a&gt; も、運用負荷の軽減に寄与すると判断しました。&lt;/p&gt; 
&lt;p&gt;なお、&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/docdb-serverless.html"&gt;Amazon DocumentDB Serverless&lt;/a&gt; も検討しましたが、11 月の Amazon EC2 Savings Plans 満了に合わせた移行スケジュールの中で検証時間を確保できなかったため、まずはインスタンスベースで移行し、今後の検証課題としています。&lt;/p&gt; 
&lt;h2&gt;次回予告&lt;/h2&gt; 
&lt;p&gt;PART1 で紹介したスキーマレス設計、配列・ネスト構造、非正規化設計、インデックス戦略といったドキュメント指向 DB の設計は、Amazon DocumentDB でどのように機能したのか。&lt;br&gt; PART2 では、23 億ドキュメントのニアゼロダウンタイム移行の具体的なプロセスと直面した課題、そしてコスト約 50% 削減を含む移行後の効果についてご紹介します。&lt;/p&gt; 
&lt;p&gt;[&lt;a href="https://aws.amazon.com/jp/blogs/news/awa_documentdb_migration_part2/"&gt;Part 2 に続く&lt;/a&gt;]&lt;/p&gt; 
&lt;hr&gt; 
&lt;table style="margin:20px auto;border:none;border-collapse:collapse"&gt; 
 &lt;tbody&gt;
  &lt;tr&gt; 
   &lt;td style="text-align:center;padding:0 15px;border:none"&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/30/awa_nobuta.jpg" alt="信田 悟至 氏" style="height:250px;border-radius:4px"&gt;&lt;br&gt;&lt;span style="font-size:13px"&gt;信田 悟至 氏&lt;/span&gt;&lt;/td&gt; 
   &lt;td style="text-align:center;padding:0 15px;border:none"&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/30/awa_yamashita.jpg" alt="山下 剛史 氏" style="height:250px;border-radius:4px"&gt;&lt;br&gt;&lt;span style="font-size:13px"&gt;山下 剛史 氏&lt;/span&gt;&lt;/td&gt; 
   &lt;td style="text-align:center;padding:0 15px;border:none"&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/30/awa_kobayashi.png" alt="小林 健太郎 氏" style="height:250px;border-radius:4px"&gt;&lt;br&gt;&lt;span style="font-size:13px"&gt;小林 健太郎 氏&lt;/span&gt;&lt;/td&gt; 
  &lt;/tr&gt; 
 &lt;/tbody&gt;
&lt;/table&gt; 
&lt;p&gt;&lt;strong&gt;AWA 株式会社&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;信田 悟至 氏&lt;br&gt; 山下 剛史 氏&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;株式会社サイバーエージェント メディア統括本部 SRE&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;小林 健太郎 氏&lt;/p&gt; 
&lt;hr&gt; 
&lt;p&gt;本ブログは、データベーススペシャリストソリューションアーキテクトの藤田 将大とシニアソリューションアーキテクトの半場 光晴が執筆しました。&lt;/p&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>AWA 株式会社、MongoDB on EC2 から Amazon DocumentDB への移行でデータベースコストを約 50% 削減（Part 2/2）</title>
		<link>https://aws.amazon.com/jp/blogs/news/awa_documentdb_migration_part2/</link>
		
		<dc:creator><![CDATA[Masahiro Fujita]]></dc:creator>
		<pubDate>Tue, 07 Apr 2026 01:03:19 +0000</pubDate>
				<category><![CDATA[Amazon DocumentDB]]></category>
		<category><![CDATA[Migration]]></category>
		<guid isPermaLink="false">797dcce739359302b544070af2833727c0f9a0b6</guid>

					<description>AWA 株式会社が 23 億ドキュメントをニアゼロダウンタイムで Amazon DocumentDB へ移行したプロセスと、直面した課題（Writer への負荷集中、データ同期、TLS 認証対応）、そしてデータベースコスト約 50% 削減を含む移行後の効果を紹介します。</description>
										<content:encoded>&lt;h2&gt;PART2：23 億ドキュメントの移行プロセスとコスト約 50% 削減の効果 -移行・効果編-&lt;/h2&gt; 
&lt;p&gt;&lt;a href="https://aws.amazon.com/jp/blogs/news/awa_documentdb_migration_part1/"&gt;PART1&lt;/a&gt; では、&lt;a href="https://awa.fm/"&gt;AWA&lt;/a&gt; がドキュメント指向データベースの特性をどのように活用しているか、そして Amazon DocumentDB の採用に至った経緯を解説しました。&lt;br&gt; PART2 では、23 億ドキュメントの大規模環境をニアゼロダウンタイムで Amazon DocumentDB へ移行した具体的なプロセスと、直面した課題、そして移行後の効果についてご紹介します。&lt;/p&gt; 
&lt;p&gt;&lt;span id="more-179093"&gt;&lt;/span&gt;&lt;/p&gt; 
&lt;div style="text-align:center"&gt;
 &lt;strong&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/27/AWA_After.png"&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/27/AWA_After.png" alt="移行前後のシステム構成図" width="1024" class="alignnone size-full wp-image-181964" style="border:1px solid #ddd"&gt;&lt;/a&gt;&lt;/strong&gt;
 &lt;br&gt;
 &lt;span style="font-size:14px;color:#545B64"&gt;移行前後のシステム構成&lt;/span&gt;
&lt;/div&gt; 
&lt;h2&gt;移行先の構成&lt;/h2&gt; 
&lt;p&gt;移行前の環境は MongoDB 4.4.29、10 シャード・レプリカセット構成、r6a.2xlarge × 20 台（データノード）、23 億ドキュメントという大規模な環境でした（詳細は &lt;a href="https://aws.amazon.com/jp/blogs/news/awa_documentdb_migration_part1/"&gt;PART1&lt;/a&gt; の移行対象データベースの概要を参照）。&lt;/p&gt; 
&lt;p&gt;移行先の Amazon DocumentDB の構成は以下の通りです。&lt;/p&gt; 
&lt;table style="border-collapse: collapse;width: 100%"&gt; 
 &lt;thead&gt; 
  &lt;tr&gt; 
   &lt;th style="border: 1px solid #ddd;padding: 8px;text-align: left"&gt;項目&lt;/th&gt; 
   &lt;th style="border: 1px solid #ddd;padding: 8px;text-align: left"&gt;内容&lt;/th&gt; 
  &lt;/tr&gt; 
 &lt;/thead&gt; 
 &lt;tbody&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;インスタンス&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;db.r6g.8xlarge（移行後に db.r8g.8xlarge に変更）&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;ストレージ&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-storage-configs.html"&gt;I/O-Optimized&lt;/a&gt;&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;構成&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;1 クラスター（Writer + Reader）&lt;/td&gt; 
  &lt;/tr&gt; 
 &lt;/tbody&gt; 
&lt;/table&gt; 
&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-storage-configs.html"&gt;I/O-Optimized&lt;/a&gt; ストレージを選択した理由は、コスト予測のしやすさです。&lt;br&gt; db.r8g への変更は、コスト最適化および &lt;a href="https://aws.amazon.com/jp/savingsplans/database-pricing/"&gt;Database Savings Plans&lt;/a&gt; への対応を目的としています。&lt;/p&gt; 
&lt;h2&gt;移行スケジュール&lt;/h2&gt; 
&lt;p&gt;本プロジェクトは、AWA の少人数の開発チームが自社で実施しました。&lt;br&gt; 本格的なプロジェクトは 2025 年 4 月に始動し、以下のスケジュールで進められました。&lt;/p&gt; 
&lt;table style="border-collapse: collapse;width: 100%"&gt; 
 &lt;thead&gt; 
  &lt;tr&gt; 
   &lt;th style="border: 1px solid #ddd;padding: 8px;text-align: left"&gt;時期&lt;/th&gt; 
   &lt;th style="border: 1px solid #ddd;padding: 8px;text-align: left"&gt;フェーズ&lt;/th&gt; 
   &lt;th style="border: 1px solid #ddd;padding: 8px;text-align: left"&gt;内容&lt;/th&gt; 
  &lt;/tr&gt; 
 &lt;/thead&gt; 
 &lt;tbody&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;2025 年 4～5 月&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;計画策定&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;移行対象の洗い出し、移行方式の決定&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;2025 年 6～7 月&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;準備&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;負荷試験環境の構築、データ連携ツール DB Sync の全コレクション対応&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;2025 年 8 月&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;負荷試験&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;通常営業負荷と &lt;a href="https://app.awa.fm/lounge"&gt;AWA ラウンジ&lt;/a&gt; 高負荷の 2 種類を約 1 ヶ月実施&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;2025 年 10 月～&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;並行運用・切り替え&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;マイクロサービスごとに段階的に切り替え&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;2025 年 12 月中旬&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;完了&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;全マイクロサービスの切り替え完了&lt;/td&gt; 
  &lt;/tr&gt; 
 &lt;/tbody&gt; 
&lt;/table&gt; 
&lt;p&gt;11 月に Amazon EC2 の Savings Plans が満了するタイミングに合わせてスケジュールを組みましたが、バッチ処理の切り替えに想定以上の時間がかかり、最終的に 12 月中旬の完了となりました。&lt;/p&gt; 
&lt;h2&gt;データ移行の流れ&lt;/h2&gt; 
&lt;p&gt;データ移行は、自社開発のデータ連携ツール DB Sync を中心に、3 つのフェーズで実施しました。&lt;/p&gt; 
&lt;p&gt;&lt;a href="https://aws.amazon.com/dms/"&gt;AWS Database Migration Service (AWS DMS)&lt;/a&gt; の利用も検討しましたが、DB Sync で既にデータ連携運用の実績があり、それを流用するほうが安定した移行につながると判断しました。&lt;br&gt; DB Sync は MongoDB の &lt;a href="https://www.mongodb.com/docs/manual/changeStreams/"&gt;Change Streams&lt;/a&gt; を利用したサブスクリプション形式のデータ同期ツールで、以前から一部コレクションの同期に利用していた実績がありました。&lt;/p&gt; 
&lt;h3&gt;フェーズ 1：初期データロード&lt;/h3&gt; 
&lt;p&gt;&lt;a href="https://www.mongodb.com/docs/database-tools/mongodump/"&gt;mongodump&lt;/a&gt;/&lt;a href="https://www.mongodb.com/docs/database-tools/mongorestore/"&gt;mongorestore&lt;/a&gt; を使用して、MongoDB 上の 23 億ドキュメントのデータを Amazon DocumentDB へ一括投入しました。&lt;/p&gt; 
&lt;h3&gt;フェーズ 2：継続的データ同期&lt;/h3&gt; 
&lt;p&gt;初期ロード完了後、DB Sync で MongoDB と Amazon DocumentDB 間のリアルタイム同期を開始しました。&lt;br&gt; DB Sync は MongoDB の Change Streams をサブスクライブし、変更イベントを Amazon DocumentDB へ書き込む仕組みです。&lt;br&gt; 今回の移行では、以前の限定的なコレクション同期から全コレクション対応に拡張しました。&lt;/p&gt; 
&lt;h3&gt;フェーズ 3：マイクロサービスごとの段階的切り替え&lt;/h3&gt; 
&lt;p&gt;約 10 のマイクロサービスを、依存関係の少ないものから順に Amazon DocumentDB へ切り替えました。&lt;br&gt; 切り替えは各サービスの DB 接続先を DNS レベルで変更する方式で、サービス停止はほぼ発生していません。&lt;/p&gt; 
&lt;p&gt;移行途中では、マイクロサービスによって参照先の DB が新旧で異なる状態が発生します。&lt;br&gt; そのため、サービス間の依存関係を考慮し、他のマイクロサービスへの影響が少ないものから順に切り替えを進めました。&lt;br&gt; 切り戻しも考慮しており、実際に本番で一度切り戻しを実施しています（詳細は後述）。&lt;/p&gt; 
&lt;h2&gt;移行時の課題と対応&lt;/h2&gt; 
&lt;h3&gt;Writer への負荷集中と切り戻し&lt;/h3&gt; 
&lt;p&gt;本番環境で大規模な AWA ラウンジ（AWA 独自のライブ配信機能）イベントを実施した際、以前は 10 シャードに分散していた書き込みが 1 クラスターの Writer に集中し、サービスに影響が出ました。&lt;br&gt; 再生ごとにカウントされるクエリがユーザー数分発生し、Writer がボトルネックとなりました。&lt;/p&gt; 
&lt;p&gt;事前に切り戻しの手順と判断基準を準備していたため、問題発生時に即座に旧環境への復旧を決断できました。切り戻しまでの間に発生した一部の書き込みデータは失われましたが、サービス全体への影響を最小限に抑えることを優先したビジネス判断でした。&lt;br&gt; その後、以下の対応を実施しました。&lt;/p&gt; 
&lt;ol&gt; 
 &lt;li&gt;&lt;strong&gt;負荷試験の追加実施&lt;/strong&gt;: AWA ラウンジ高負荷を模した追加の負荷試験を実施しました。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;書き込み頻度の調整&lt;/strong&gt;: インクリメント処理など、高頻度の Write クエリをアプリケーション側で最適化しました。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;Reader/Writer の分離&lt;/strong&gt;: MongoDB 時代は全てのクエリを Writer（Primary）に送信していた設計を見直し、Amazon DocumentDB の Reader エンドポイントと Writer エンドポイントへの接続を明確に分離。それぞれ専用のドライバー設定を用意しました。&lt;/li&gt; 
&lt;/ol&gt; 
&lt;p&gt;Amazon DocumentDB はコンピューティングとストレージが分離されたアーキテクチャを採用しており、Writer インスタンスとは独立して Reader インスタンスを柔軟に追加できます。&lt;br&gt; Read ヘビーな AWA のワークロードでは、この Reader/Writer 分離が特に重要でした。&lt;/p&gt; 
&lt;blockquote&gt;
 &lt;p&gt;「Reader と Writer を意識してアプリケーションを組むようになりました。&lt;br&gt; やらないと Writer に負荷が集中してしまい、Reader のスケールメリットを活かせません。&lt;br&gt; Amazon DocumentDB のベストプラクティスを学んで、頭を切り替えていきました。」&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;h3&gt;データ同期の課題&lt;/h3&gt; 
&lt;p&gt;DB Sync を全コレクション対応に拡張した際、2 つの問題が発生しました。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;1. 同期サーバーの過負荷&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;以前は限定的なコレクションのみ同期していたため、全コレクション対応で同期サーバーが過負荷になりました。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;2. ObjectID 型のハンドリング&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;主キーの大半は String 型でしたが、一部コレクションで ObjectID 型が使われており、正しく同期されないケースが発生しました。&lt;br&gt; この問題は移行後に発覚し、迅速に対応を行いました。&lt;/p&gt; 
&lt;p&gt;データ同期ツールを使用する場合、データ同期ツール自体に精通しておくことだけでなく、全コレクションのスキーマとデータ型を事前に網羅的に把握しておくことが重要です。&lt;/p&gt; 
&lt;h3&gt;TLS 通信と認証への対応&lt;/h3&gt; 
&lt;p&gt;移行で最も工数がかかったのは、Amazon DocumentDB の TLS 通信と ID/パスワード認証への対応でした。&lt;br&gt; Amazon DocumentDB では TLS がデフォルトで有効化されており、以前の MongoDB 環境ではネットワーク隔離のみで認証を設定していなかったため、接続設定の変更が必要になりました。&lt;/p&gt; 
&lt;blockquote&gt;
 &lt;p&gt;「一番大変だったのは、ID/パスワード認証の対応でした。&lt;br&gt; 以前の MongoDB では設定していなかったのですが、Amazon DocumentDB では必要となるため、これを機に認証と通信の暗号化を導入しました。」&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;結果的にセキュリティの向上につながりましたが、移行を検討される際は事前に認証設定の影響範囲を確認しておくことをお勧めします。&lt;/p&gt; 
&lt;h3&gt;MongoDB 互換性&lt;/h3&gt; 
&lt;p&gt;AWA では複雑なアグリゲーションパイプラインを使用しない方針を取っていたため、クエリの互換性問題はほとんど発生しませんでした。&lt;br&gt; find、update、insert を中心としたシンプルなクエリパターンにより、Web アプリケーションのクエリに関しては&lt;a href="https://github.com/awslabs/amazon-documentdb-tools/tree/master/compat-tool"&gt;Amazon DocumentDB Compatibility Tool&lt;/a&gt;での事前確認でも問題は検出されませんでした。&lt;br&gt; 一部、古いバッチ処理と Go 言語のドライバーで対応が必要な箇所がありましたが、影響は限定的でした。&lt;/p&gt; 
&lt;p&gt;&lt;a href="https://aws.amazon.com/jp/blogs/news/awa_documentdb_migration_part1/"&gt;PART1&lt;/a&gt; で紹介したスキーマレス設計、配列・ネスト構造を活用したデータモデル、Read 最適化のインデックス戦略、Go Struct によるスキーマ管理といったドキュメント指向 DB の設計は、Amazon DocumentDB 上でも問題なく動作しています。&lt;/p&gt; 
&lt;h2&gt;Amazon DocumentDB への移行の効果&lt;/h2&gt; 
&lt;h3&gt;移行前後の比較&lt;/h3&gt; 
&lt;table style="border-collapse: collapse;width: 100%"&gt; 
 &lt;thead&gt; 
  &lt;tr&gt; 
   &lt;th style="border: 1px solid #ddd;padding: 8px;text-align: left"&gt;項目&lt;/th&gt; 
   &lt;th style="border: 1px solid #ddd;padding: 8px;text-align: left"&gt;移行前（MongoDB on Amazon EC2）&lt;/th&gt; 
   &lt;th style="border: 1px solid #ddd;padding: 8px;text-align: left"&gt;移行後（Amazon DocumentDB）&lt;/th&gt; 
  &lt;/tr&gt; 
 &lt;/thead&gt; 
 &lt;tbody&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;構成&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;10 シャード、レプリカセット&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;1 クラスター（Writer + Reader）&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;インスタンス&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;r6a.2xlarge × 20 台&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;db.r8g.8xlarge（Writer + Reader）&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;月額コスト&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;–&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;&lt;strong&gt;約 50% 削減&lt;/strong&gt;&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;バージョンアップ&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;10 クラスター個別対応&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;マネージドサービスで一括管理&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;バックアップ&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;Cloud Manager 20 世代管理&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;自動バックアップ + &lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/point-in-time-recovery.html"&gt;PITR&lt;/a&gt;&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;スケール変更&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;シャード削減が困難（数ヶ月かかることも）&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;Reader の追加・削除が容易&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;認証・暗号化&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;未設定（ネットワーク隔離のみ）&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;TLS 通信 + ID/パスワード認証&lt;/td&gt; 
  &lt;/tr&gt; 
  &lt;tr&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;ネットワーク&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;MongoDB 専用サブネットで複雑な隔離構成&lt;/td&gt; 
   &lt;td style="border: 1px solid #ddd;padding: 8px"&gt;Amazon VPC 内でシンプルな構成&lt;/td&gt; 
  &lt;/tr&gt; 
 &lt;/tbody&gt; 
&lt;/table&gt; 
&lt;p&gt;※ 移行前コストには Amazon EC2、Cloud Manager、バックアップ、通信費を含みます。&lt;/p&gt; 
&lt;h3&gt;コスト削減&lt;/h3&gt; 
&lt;p&gt;データベース関連コストは約 50% 削減されました。&lt;br&gt; コスト試算は、ベストプラクティスドキュメントを参考に既存クラスターの CPU・メモリ使用率から必要スペックを机上計算し、負荷試験で実証した上で本番稼働させています。&lt;br&gt; さらに、Database Savings Plans の適用により追加で約 20% の削減を見込んでいます。&lt;/p&gt; 
&lt;h3&gt;性能&lt;/h3&gt; 
&lt;p&gt;20 台の Amazon EC2 インスタンス（10 シャード構成）から 1 クラスターへの集約にもかかわらず、レスポンスタイムに大きな変化はありませんでした。&lt;br&gt; コンテンツ配信という特性上 Read ヘビーなワークロードであり、Amazon DocumentDB の Reader インスタンスを活用して Read 処理を分散させることで、台数を大幅に削減しつつ性能を維持できています。&lt;br&gt; MongoDB のシャーディング構成ではスケールダウンに数ヶ月を要することもありましたが、Amazon DocumentDB では Reader の追加・削除が容易です。&lt;/p&gt; 
&lt;h3&gt;運用&lt;/h3&gt; 
&lt;p&gt;マネージドサービスの活用により、特定のエンジニアに集中していたバージョンアップやノード障害対応の負荷が軽減され、スロークエリの改善などアプリケーション本来の改善に注力できるようになっています。&lt;br&gt; モニタリングについては、&lt;a href="https://www.datadoghq.com/"&gt;Datadog&lt;/a&gt; と連携した Amazon DocumentDB 用監視ダッシュボードを構築し、フェイルオーバー検知には &lt;a href="https://aws.amazon.com/chatbot/"&gt;AWS Chatbot&lt;/a&gt; を使用して Slack に通知する体制を整えています。&lt;br&gt; 今後は、Amazon DocumentDB の&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-cloning.html"&gt;クローン機能&lt;/a&gt;を活用し、本番データを用いた負荷試験環境の迅速な構築にも役立てていく予定です。&lt;/p&gt; 
&lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;補足：Amazon DocumentDB の&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-cloning.html"&gt;クローン機能&lt;/a&gt;とは&lt;/strong&gt;&lt;br&gt; 本番クラスターのデータを短時間かつ追加ストレージコストを抑えてコピーできる機能です。コピー元とコピー先でストレージを共有する Copy-on-Write 方式のため、クローン作成時点ではデータの物理コピーが発生せず、大規模なクラスターでも高速にクローンを作成できます。&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;h3&gt;セキュリティ&lt;/h3&gt; 
&lt;p&gt;移行前は MongoDB 用に専用サブネットを作成し、複雑なネットワーク構成で隔離していました。&lt;br&gt; Amazon DocumentDB への移行により、TLS 通信と ID/パスワード認証が導入され、ネットワーク構成も簡素化されました。&lt;br&gt; 10 年以上前に構築された初期のネットワーク構成を、移行のタイミングで整理できたことも副次的な効果です。&lt;/p&gt; 
&lt;h2&gt;移行を検討されている方へ&lt;/h2&gt; 
&lt;p&gt;本プロジェクトを通じた気づきとして、以下の点に留意されることをおすすめします。&lt;/p&gt; 
&lt;blockquote&gt;
 &lt;p&gt;「反省として、流れてくる Write クエリの頻度とタイミングを事前に詳細に把握しておくべきでした。」&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;strong&gt;Write クエリの頻度とパターンを事前に詳細に把握する&lt;/strong&gt;: シャーディング構成から 1 クラスターへの集約では、Writer への負荷集中が最大のリスク。特にイベント時など負荷が変動するワークロードでは、ピーク時の Write パターンを把握した上で負荷試験を実施することが重要です。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;Reader/Writer の分離設計を事前に計画する&lt;/strong&gt;: Amazon DocumentDB のアーキテクチャを活かすため、アプリケーション側で Reader と Writer を意識した設計に変更することをお勧めします。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;TLS 通信と認証の影響範囲を事前に確認する&lt;/strong&gt;: Amazon DocumentDB では TLS と認証がデフォルトで有効化されているため、MongoDB で未設定の場合は接続設定の変更が必要です。&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;データ同期ツールを使用する場合、全コレクションのスキーマを網羅的に把握する&lt;/strong&gt;: 特にデータ型の違い（String vs ObjectID など）に注意が必要です。&lt;/li&gt; 
&lt;/ul&gt; 
&lt;blockquote&gt;
 &lt;p&gt;「相当凝ったクエリでもなければ MongoDB のまま移行できると思います。今回は ID/パスワード認証の対応が最も大変でした。」&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;h2&gt;今後に向けて&lt;/h2&gt; 
&lt;blockquote&gt;
 &lt;p&gt;「今回の移行はラスボスぐらいの強敵でしたが、やっと倒せました。&lt;br&gt; マネージドで、気持ちの面でも運用の面でも楽になりました。&lt;br&gt; 副次的に、ドライバーのアップグレードや通信の暗号化など、気になっていた部分を改善するきっかけにもなりました。&lt;br&gt; 今後は Database Savings Plans の適用や &lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/serverless.html"&gt;Amazon DocumentDB Serverless&lt;/a&gt; の検証を進め、さらなるコスト最適化を目指していきます。&lt;br&gt; マネージドに極力寄せていける構成にしていきたいです。」&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;blockquote&gt;
 &lt;p&gt;「これまでバージョンアップやノード障害の対応に追われていましたが、今後はスロークエリの改善など、本来注力すべき領域に集中できるようになりました。&lt;br&gt; Amazon DocumentDB では Reader の増減やスペックの上げ下げも柔軟にできると期待しています。」&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;h2&gt;まとめ&lt;/h2&gt; 
&lt;p&gt;AWA 株式会社は、MongoDB on Amazon EC2 から Amazon DocumentDB への移行により、以下の成果を達成しました。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;strong&gt;データベースコスト約 50% 削減&lt;/strong&gt;（さらに Database Savings Plans で約 20% の追加削減を見込み）&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;23 億ドキュメントのニアゼロダウンタイム移行&lt;/strong&gt;&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;20 台の Amazon EC2 インスタンスから 1 クラスターへの集約&lt;/strong&gt;（性能を維持）&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;運用負荷の大幅軽減&lt;/strong&gt;と属人化の解消&lt;/li&gt; 
 &lt;li&gt;&lt;strong&gt;セキュリティの向上&lt;/strong&gt;（TLS 通信、認証、ネットワーク構成の簡素化）&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;2022 年の構想から約 4 年。&lt;br&gt; マネージドサービスへの集約という一貫した方針のもと、大規模移行を完遂した AWA の事例は、MongoDB 環境から Amazon DocumentDB への移行を検討している企業にとって、具体的な道筋を示すものです。&lt;/p&gt; 
&lt;p&gt;Amazon DocumentDB の詳細については、以下のリソースをご参照ください。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;Amazon DocumentDB のベストプラクティス&lt;/strong&gt;&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/best_practices.html"&gt;Amazon DocumentDB のベストプラクティス&lt;/a&gt;&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;&lt;strong&gt;MongoDB からの移行に使えるドキュメント&lt;/strong&gt;&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/functional-differences.html#functional-differences.with-mongodb"&gt;Amazon DocumentDB と MongoDB の機能的な違い&lt;/a&gt;&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/docdb-migration.html"&gt;Amazon DocumentDB への移行ガイド&lt;/a&gt;&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://docs.aws.amazon.com/documentdb/latest/developerguide/docdb-migration-runbook.html"&gt;Amazon DocumentDB 移行 Runbook&lt;/a&gt;&lt;/li&gt; 
&lt;/ul&gt; 
&lt;p&gt;&lt;strong&gt;Amazon DocumentDB の便利なツール群&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;以下のツールは &lt;a href="https://github.com/awslabs/amazon-documentdb-tools"&gt;Amazon DocumentDB Tools&lt;/a&gt; リポジトリで公開されています。&lt;/p&gt; 
&lt;ul&gt; 
 &lt;li&gt;&lt;a href="https://github.com/awslabs/amazon-documentdb-tools/tree/master/compat-tool"&gt;compat-tool&lt;/a&gt; — MongoDB との互換性チェック&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://github.com/awslabs/amazon-documentdb-tools/tree/master/index-tool"&gt;index-tool&lt;/a&gt; — インデックスの分析・最適化&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://github.com/awslabs/amazon-documentdb-tools/tree/master/migration"&gt;migration&lt;/a&gt; — 移行支援ツール&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://github.com/awslabs/amazon-documentdb-tools/tree/master/sizing-tool"&gt;sizing-tool&lt;/a&gt; — サイジング見積もり&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://github.com/awslabs/amazon-documentdb-tools/tree/master/monitoring"&gt;monitoring&lt;/a&gt; — モニタリング&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://github.com/awslabs/amazon-documentdb-tools/tree/master/performance"&gt;performance&lt;/a&gt; — パフォーマンス分析&lt;/li&gt; 
 &lt;li&gt;&lt;a href="https://github.com/awslabs/amazon-documentdb-tools/tree/master/operations"&gt;operations&lt;/a&gt; — 運用支援&lt;/li&gt; 
&lt;/ul&gt; 
&lt;hr&gt; 
&lt;table style="margin:20px auto;border:none;border-collapse:collapse"&gt; 
 &lt;tbody&gt;
  &lt;tr&gt; 
   &lt;td style="text-align:center;padding:0 15px;border:none"&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/30/awa_nobuta.jpg" alt="信田 悟至 氏" style="height:250px;border-radius:4px"&gt;&lt;br&gt;&lt;span style="font-size:13px"&gt;信田 悟至 氏&lt;/span&gt;&lt;/td&gt; 
   &lt;td style="text-align:center;padding:0 15px;border:none"&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/30/awa_yamashita.jpg" alt="山下 剛史 氏" style="height:250px;border-radius:4px"&gt;&lt;br&gt;&lt;span style="font-size:13px"&gt;山下 剛史 氏&lt;/span&gt;&lt;/td&gt; 
   &lt;td style="text-align:center;padding:0 15px;border:none"&gt;&lt;img src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/03/30/awa_kobayashi.png" alt="小林 健太郎 氏" style="height:250px;border-radius:4px"&gt;&lt;br&gt;&lt;span style="font-size:13px"&gt;小林 健太郎 氏&lt;/span&gt;&lt;/td&gt; 
  &lt;/tr&gt; 
 &lt;/tbody&gt;
&lt;/table&gt; 
&lt;p&gt;&lt;strong&gt;AWA 株式会社&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;信田 悟至 氏&lt;br&gt; 山下 剛史 氏&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;株式会社サイバーエージェント メディア統括本部 SRE&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;小林 健太郎 氏&lt;/p&gt; 
&lt;hr&gt; 
&lt;p&gt;本ブログは、データベーススペシャリストソリューションアーキテクトの藤田 将大とシニアソリューションアーキテクトの半場 光晴が執筆しました。&lt;/p&gt; 
&lt;p&gt;
 &lt;!--copsa-initializer--&gt;&lt;/p&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>ヘルスケア業界のエンジニア 46 名がセキュリティインシデント疑似体験に挑戦 – AWS GameDay 開催レポート</title>
		<link>https://aws.amazon.com/jp/blogs/news/healthtech-security-gameday-2026-report/</link>
		
		<dc:creator><![CDATA[Yohei Katayama]]></dc:creator>
		<pubDate>Mon, 06 Apr 2026 23:57:01 +0000</pubDate>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Healthcare]]></category>
		<category><![CDATA[Public Sector]]></category>
		<category><![CDATA[ヘルスケア]]></category>
		<guid isPermaLink="false">31b9fcd968cf939a06a86d3fea5050757dd27795</guid>

					<description>2026 年 3 月 31 日にヘルスケア業界のお客様を AWS にお招きして「ヘルステック企業向け セキュリティインシデント疑似体験 GameDay」を開催しました。今回はそのイベントのご紹介や当日の雰囲気をお伝えし、セキュリティへの取り組みを知っていただければ幸いです。</description>
										<content:encoded>&lt;p&gt;みなさん、こんにちは。ソリューションアーキテクトの片山です。&lt;/p&gt; 
&lt;p&gt;近年、医療機関におけるセキュリティ対策の重要性が高まっています。厚生労働省の「医療情報システムの安全管理に関するガイドライン」の改定にも見られるように、電子カルテシステムをはじめとする医療情報システムの安全な運用に向けて、組織的なセキュリティ対策の強化がこれまで以上に求められています。&lt;/p&gt; 
&lt;p&gt;こうした背景を踏まえ、2026 年 3 月 31 日にヘルスケア業界のお客様を AWS にお招きして「ヘルステック企業向け セキュリティインシデント疑似体験 GameDay」を開催しました。今回はそのイベントのご紹介や当日の雰囲気をお伝えし、セキュリティへの取り組みを知っていただければ幸いです。&lt;/p&gt; 
&lt;p&gt;&lt;span id="more-182630"&gt;&lt;/span&gt;&lt;/p&gt; 
&lt;h3&gt;AWS GameDay とは&lt;/h3&gt; 
&lt;p&gt;&lt;a href="https://aws.amazon.com/jp/gameday/"&gt;AWS GameDay&lt;/a&gt; は、AWS ソリューションを利用してチーム単位で現実世界の技術課題を実際に体験し取り組む、AWS が提供するユニークなトレーニングプログラムです。実践的なクラウドスキルを楽しみながら習得でき、特に今回のセキュリティインシデント疑似体験 GameDay はクラウドセキュリティに特化したプログラムとして評価いただいています。&lt;/p&gt; 
&lt;p&gt;このプログラムの特徴は、実際の AWS 環境で発生しうるセキュリティインシデントをシミュレーションし、参加者がチームとなって対応するという点です。例えば、不正アクセスの検知、データ漏洩インシデントの調査、マルウェア感染への対処など、現実世界で直面する可能性のある様々なセキュリティ課題に取り組みます。&lt;/p&gt; 
&lt;p&gt;参加者は、&lt;a href="https://aws.amazon.com/jp/guardduty/"&gt;Amazon GuardDuty&lt;/a&gt;、&lt;a href="https://aws.amazon.com/jp/cloudtrail/"&gt;AWS CloudTrail&lt;/a&gt; といった実際の AWS セキュリティサービスのログを &lt;a href="https://github.com/aws-samples/siem-on-amazon-opensearch-service/blob/main/README_ja.md"&gt;SIEM on Amazon OpenSearch Service&lt;/a&gt; というソリューションから確認し、インシデントの検知から対応までを体験します。このワークショップ形式の学習により、座学だけでは得られない実践的なスキルと経験を積むことができます。&lt;/p&gt; 
&lt;h3&gt;イベントの様子&lt;/h3&gt; 
&lt;p&gt;2026 年 3 月 31 日、目黒 にて「ヘルステック企業向け セキュリティインシデント疑似体験 GameDay」を開催しました。ヘルスケア業界から 18 社、46 名のエンジニアの皆さまにお集まりいただきました。&lt;/p&gt; 
&lt;p&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/AWS-GameDay-for-HealthTech_image01.png"&gt;&lt;img loading="lazy" class="size-large wp-image-182641 aligncenter" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/AWS-GameDay-for-HealthTech_image01-1024x576.png" alt="" width="1024" height="576"&gt;&lt;/a&gt;&lt;/p&gt; 
&lt;p&gt;参加者の皆さまは 3 名ごとのチームに分かれ、AWS 環境でセキュリティイベントが検知されたものの原因が特定できないというシナリオのもと、実際の SIEM 環境を操作して制限時間 2 時間の中でインシデントの調査に取り組みました。&lt;/p&gt; 
&lt;p&gt;会場では各チームが真剣にログを分析しながらも、ゲーミフィケーションの要素によりリアルタイムでスコアが可視化されるため、チーム間で競い合いながら楽しく学ぶ姿が印象的でした。多くの参加者は既に AWS 上でシステム開発・運用をされており、セキュリティへの意識も高く、非常に活気のあるイベントとなりました。&lt;/p&gt; 
&lt;p&gt;ワークショップ終了後は表彰式と解説セッションを行い、今回のシナリオで実際に何が起きていたのかを AWS から解説させていただきました。インシデントの検出にはまずは Amazon GuardDuty が効果的であり、根本原因と被害範囲の調査のためにはしっかりと必要なログを保管し、いつでも取得できるような状態にしておくことが肝要です。その後は懇親会にてヘルスケア業界に関わる技術者同士や AWS メンバーとの交流を深めていただきました。&lt;/p&gt; 
&lt;p&gt;&lt;a href="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/AWS-GameDay-for-HealthTech_image02.jpg"&gt;&lt;img loading="lazy" class="size-large wp-image-182642 aligncenter" src="https://d2908q01vomqb2.cloudfront.net/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f/2026/04/06/AWS-GameDay-for-HealthTech_image02-1024x768.jpg" alt="" width="1024" height="768"&gt;&lt;/a&gt;&lt;/p&gt; 
&lt;h3&gt;参加者からのフィードバック&lt;/h3&gt; 
&lt;p&gt;イベント後のアンケートでは高い満足度の評価をいただき、参加者の 100% が「イベントを通じて学びがあった」と回答いただきました。&lt;/p&gt; 
&lt;p&gt;特に好評だったのはシナリオのリアルさです。「事象のシナリオとログ内容がかなり現実に近く、具体感をもって取り組めました」「ログ分析の奥深さを感じました」といった声が多く寄せられました。解説セッションについても「ログからセキュリティ侵害の攻撃シナリオを解説していただけたのが大変学びになりました」と、座学では得られない深い理解につながったという感想をいただいています。&lt;/p&gt; 
&lt;p&gt;「障害が発生した時にまずやるべきことが分かり、今後の運用に活かしていきたい」「普段から GuardDuty を利用していますが、何を見ればいいのか、ログの見方について理解できるようになりました」など、日々の業務に直結する学びを得られたという声も印象的でした。&lt;/p&gt; 
&lt;h3&gt;まとめ&lt;/h3&gt; 
&lt;p&gt;セキュリティインシデントへの対応は、実際に発生してから学ぶのでは遅すぎます。AWS GameDay は、安全な環境で事前に経験を積み、実際のインシデント発生時に適切に対応できる体制を整えるための貴重な機会です。&lt;/p&gt; 
&lt;p&gt;今回の GameDay で得た学びを次のアクションにつなげるために、AWS では &lt;a href="https://maturitymodel.security.aws.dev/ja/model/"&gt;AWS セキュリティ成熟度モデル&lt;/a&gt; をご用意しています。このモデルは、組織のセキュリティ対策の現在地を把握し、次に取り組むべき施策を明確にするためのフレームワークです。このブログを読んでいただいている皆さまも、インシデント検知や調査のプラクティスが、自組織ではどの段階にあるのかを確認してみてはいかがでしょうか。セルフチェック用の評価シートもございます。詳細は &lt;a href="https://maturitymodel.security.aws.dev/ja/assessment-tools/"&gt;https://maturitymodel.security.aws.dev/ja/assessment-tools/&lt;/a&gt; をご覧ください。&lt;/p&gt; 
&lt;p&gt;AWS ではこれからもヘルスケア業界の皆さまに貢献できるよう、クラウド技術のご紹介や各種イベントを実施いたします。積極的に活用いただけますと幸いです。&lt;/p&gt; 
&lt;h4&gt;著者&lt;/h4&gt; 
&lt;p&gt;Yohei Katayama (AWS Japan, Public Sector, Healthcare Solutions Architect)&lt;br&gt; Akihiro Nakajima (AWS Japan, Public Sector, Security Solutions Architect)&lt;/p&gt;</content:encoded>
					
		
		
			</item>
		<item>
		<title>Kiro に MiniMax M2.5 と GLM-5 が追加されました</title>
		<link>https://aws.amazon.com/jp/blogs/news/minimax-m25-and-glm-5/</link>
		
		<dc:creator><![CDATA[Hiroaki Yoshimura]]></dc:creator>
		<pubDate>Mon, 06 Apr 2026 08:58:22 +0000</pubDate>
				<category><![CDATA[Artificial Intelligence]]></category>
		<category><![CDATA[Developer Tools]]></category>
		<category><![CDATA[Kiro]]></category>
		<guid isPermaLink="false">269d02c683e3e8c937789a4980094a45ec336ec8</guid>

					<description>Kiro に新たに MiniMax M2.5 と GLM-5 の 2 つのオープンウェイトモデルが追加されました。MiniMax M2.5 はクレジット乗数 0.25x の低コストモデルで、SWE-Bench Verified 80.2% を達成し、マルチステップ実装や長時間エージェントセッションに最適です。GLM-5 は 200K コンテキストウィンドウを持つ大規模 MoE モデルで、リポジトリ規模の複雑なアーキテクチャ変更や長期エージェントワークフローに強みを発揮します。両モデルは IDE と CLI から即座に利用可能です。</description>
										<content:encoded>&lt;p&gt;本記事は 2026 年 4 月 2 日に公開された Nima Kaviani による “&lt;a href="https://kiro.dev/blog/minimax-m25-and-glm-5/" target="_blank" rel="noopener"&gt;MiniMax M2.5 and GLM-5 are now in Kiro&lt;/a&gt;” を翻訳したものです。&lt;/p&gt; 
&lt;p&gt;Kiro のオープンウェイトモデルへのネイティブサポートを拡充してきました。最近では MiniMax M2.5 に続き、GLM-5 も Kiro IDE および CLI から直接利用できるようになりました。Kiro はすでにコスト・コンテキスト長・速度のバランスが異なる多様なモデルをサポートしています。今回の 2 つの追加により、その幅がさらに広がり、開発者やチームが目の前の作業に応じてモデルを選択できる余地が増えました。&lt;/p&gt; 
&lt;p&gt;&lt;span id="more-182440"&gt;&lt;/span&gt;&lt;/p&gt; 
&lt;h2 id="the-models"&gt;モデルの詳細&lt;/h2&gt; 
&lt;p&gt;&lt;a href="https://kiro.dev/docs/models/" target="_blank" rel="noopener"&gt;各モデル&lt;/a&gt;が持つ特徴と、得意とする用途について詳しく見ていきましょう。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;MiniMax M2.5&lt;/strong&gt;（クレジット乗数 0.25x）— クエリごとに 100 億パラメーターを活性化するスパース MoE (Mixture of Experts) モデルです。わずか 4 分の 1 のクレジットコストで、SWE-Bench Verified において 80.2% のスコアを記録しており、Claude Sonnet を超えた初のオープンウェイトモデルとして、Claude Opus 4.6（80.8%）に次ぐ位置につけています。Kiro の中でも最もコスト効率の高いモデルの一つです。MiniMax M2.1 と比較して複雑なエージェントタスクを 37% 高速に完了します。コードを書く前に機能を分解して構造をマッピングするため、マルチステップの実装作業や長時間のエージェントセッションに優れています。また、10 以上の言語（Go、C、C++、TypeScript、Rust、Kotlin、Python、Java、JavaScript など）にわたる強力な多言語サポートを提供し、Web、Android、iOS、Windows にまたがるフルスタックプロジェクトにも対応しています。継続的なコーディングセッションや反復的な実装作業に対して、高速かつコスト効率の高いモデルをお求めであれば、MiniMax M2.5 は有力な選択肢です。&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;GLM-5&lt;/strong&gt;（クレジット乗数 0.5x）— 200K コンテキストウィンドウを備えた大規模 MoE モデルです。GLM-5 は長期的なエージェントワークフローに最適化されています。リポジトリ規模のコンテキストを処理し、大規模なコードベースにわたるマルチステップのツール使用において一貫性を維持することに優れています。クロスファイルのマイグレーション、フルスタックの機能開発、あるいはモデルが全体像を把握する必要があるレガシーリファクタリングなどのユースケースが該当します。深いコンテキストが求められる複雑なアーキテクチャ変更に取り組んでいる場合は、GLM-5 を試してみる価値があります。&lt;/p&gt; 
&lt;h2 id="try-them-out-in-the-ide-and-cli"&gt;IDE と CLI で試してみましょう&lt;/h2&gt; 
&lt;p&gt;これらのモデルは現在、&lt;a href="https://kiro.dev/docs/models/#how-to-switch-models" target="_blank" rel="noopener"&gt;IDE のモデルセレクター&lt;/a&gt;および &lt;a href="https://kiro.dev/docs/cli/models/#how-to-switch-models" target="_blank" rel="noopener"&gt;Kiro CLI&lt;/a&gt; から実験的サポートとして利用できます。MiniMax M2.5 は AWS US-East-1（バージニア北部）および AWS EU-Central-1（フランクフルト）リージョンで利用可能です。GLM-5 の推論は AWS US-East-1（バージニア北部）リージョンで実行されます。&lt;/p&gt; 
&lt;p&gt;また、Kiro にすでに搭載されているオープンウェイトモデルへのアクセスも拡大しました。MiniMax M2.1、Qwen3 Coder Next、Deepseek V3.2 は、IAM Identity Center（IdC）経由で認証しているユーザーを含む全ユーザーが利用できるようになりました。推論をワークロードに近づけるため、MiniMax M2.1 と Qwen3 Coder Next は AWS US-East-1（バージニア北部）に加えて AWS EU-Central-1（フランクフルト）リージョンでも利用可能です。&lt;/p&gt; 
&lt;p&gt;設定不要、ルーティング不要、追加セットアップ不要でモデルを選んですぐに作業を始められます。モデルを切り替えたり、特定のプロジェクトタイプにデフォルトを設定したり、Auto に任せたりと、ワークフローに合わせてご利用ください。エンタープライズチームの場合、管理者は &lt;a href="https://aws.amazon.com/jp/blogs/news/enterprise-governance-mcp-and-models/" target="_blank" rel="noopener"&gt;モデルガバナンス&lt;/a&gt;を使用して、利用可能なモデルをコンプライアンスおよびデータレジデンシーの要件に合わせることができます。いつものように、ぜひ試してみて、&lt;a target="_blank" rel="noopener noreferrer" href="https://discord.gg/kirodotdev"&gt;使い心地をお聞かせください&lt;/a&gt;。どのモデルが好評で、どのような課題が残っているかを注視しています。次にサポートしてほしいモデルがあれば、&lt;a target="_blank" rel="noopener noreferrer" href="https://github.com/kirodotdev/Kiro/issues/new?template=feature_request.yml"&gt;ぜひご要望をお寄せください&lt;/a&gt;。&lt;/p&gt; 
&lt;p&gt;翻訳は Solutions Architect の吉村 が担当いたしました。&lt;/p&gt;</content:encoded>
					
		
		
			</item>
	</channel>
</rss>