TECH PLAY

AWS

AWS の技術ブログ

å…š3323ä»¶

Amazon Relational Database Service (Amazon RDS) for SQL Server は、 AWS Nitro System 䞊に構築された第3䞖代のIntel Xeon Scalable (Ice Lake) プロセッサを搭茉する X2iedn をサポヌトするようになりたした。SQL Serverのワヌクロヌドはメモリに倧きく䟝存したす。そのため、メモリに最適化された Amazon Elastic Compute Cloud (Amazon EC2) むンスタンスが最も䞀般的に利甚されおいたす。 x2iedn むンスタンスタむプは、最倧 4096 GiB の RAMず 128 個の vCPU を提䟛し、お客様の最も難易床の高いニヌズを満たしたす。x2iedn を䜿甚するこずで、お客様のワヌクロヌドは同等の X1 むンスタンスよりも最倧 50 %高いコストパフォヌマンスを埗るこずができたす。 Amazon RDS for SQL Serverは、x2iedn むンスタンスタむプずしお、4, 8, 16, 32, 64, 96, 128 vCPUの 7 ぀のサむズを提䟛しおいたす。このブログでは、x2iedn を䜿甚する䞻な利点に぀いお説明し、x2iedn むンスタンスタむプず x1e むンスタンスタむプで枬定したパフォヌマンスを比范したす。詳现に぀いおは、 Amazon EC2 X2idn および X2iedn むンスタンスの玹介 を参照しおください。 特城 新しいむンスタンスタむプは、以䞋の機胜を提䟛したす。 最倧 3.5 GHz の第 3 䞖代 Intel Xeon Scalable プロセッサIce Lake 8375C すべおのサむズで vCPU に察するメモリの比率は 32 : 1 X1 むンスタンスより最倧 50 %優れた䟡栌性胜 最倧 100 Gbpsのネットワヌク速床 Amazon Elastic Block StoreAmazon EBSぞの垯域幅は最倧 80 Gbps 専甚ハヌドりェアず軜量ハむパヌバむザヌを組み合わせた Nitro System を搭茉 次の衚は、むンスタンスタむプのそれぞれの仕様をたずめたものです。 Instance Name vCPUs Memory (GiB) Storage Memory (GB) Network Bandwidth (Gbps) EBS Bandwidth (Gbps) x2iedn.xlarge 4 128 1 x 118 NVMe SSD Up to 25 Up to 20 x2iedn.2xlarge 8 256 1 x 237 NVMe SSD Up to 25 Up to 20 x2iedn.4xlarge 16 512 1 x 475 NVMe SSD Up to 25 Up to 20 x2iedn.8xlarge 32 1,024 1 x 950 NVMe SSD 25 20 x2iedn.16xlarge 64 2,048 1 x 1900 NVMe SSD 50 40 x2iedn.24xlarge 96 3,072 2 x 1425 NVMe SSD 75 60 x2iedn.32xlarge 128 4,096 2 x 1900 NVMe SSD 100 80 利点 x2iedn RDS DB むンスタンスタむプには以䞋のメリットがありたす。 Nitro System 䞊に構築 – Nitro System は EC2 むンスタンスに最新のハヌドりェアず゜フトりェアコンポヌネントを提䟛し、党䜓的なパフォヌマンスを向䞊させたす。さらに、Nitro System 䞊に構築された RDS DB むンスタンスは、高速ネットワヌキング、高速 EBS 垯域幅、 I/O アクセラレヌションを可胜にする専甚の Nitro Cards を利甚できたす。これらの改善により、X1 むンスタンスず比范しお SQL Server デヌタベヌスのパフォヌマンスが最倧 50 %向䞊したす。 vCPU あたりの高いメモリ比率 – X2 むンスタンスファミリヌは、サポヌトされおいるすべおの RDS DB むンスタンスタむプず比范しお、 vCPU あたりのメモリ比率が最も高くなっおいたす。これは、 SQL Server Enterprise Edition や Standard Edition など、コア単䜍のラむセンスに䟝存する SQL Server ワヌクロヌドに最適です。お客様のワヌクロヌドは、 X2iedn が提䟛する vCPU あたりのより倧きいメモリ 32 GB : 1 vCPU によっお、 vCPU のプロビゞョニング数を枛らすこずができたす。サポヌトされる RDS むンスタンスタむプの詳现に぀いおは、 Amazon RDS むンスタンスタむプ を参照しおください。 高いネットワヌクず EBS スルヌプット – X2iedn では、最倧 100 Gbps のネットワヌク垯域幅ず 80 Gbps の EBS 垯域幅を実珟できたす。 x1e の最倧ネットワヌク垯域幅が 25 Gbps、EBS 垯域幅が 14 Gbps であるこずず比范するず、その差は歎然です。スルヌプット芁件を満たすために、より倧きなむンスタンスサむズをプロビゞョニングする必芁がなくなりたす。これにより、抜出、倉換、ロヌド ETL 凊理や SQL Server のネむティブバックアップなど、スルヌプット負荷の高いタスクをパフォヌマンスに圱響を䞎えるこずなく実行できたす。 ロヌカル NVMeむンスタンスストア – tempdb がロヌカルむンスタンスストレヌゞを䜿甚するように構成された状態で X2iedn を起動できたす。 tempdb のデヌタファむルずログファむルをロヌカルに配眮するこずで、暙準的な Amazon EBS ベヌスのサヌビスず比范しお、読み取りず曞き蟌みのレむテンシを䜎く抑えるこずができたす。 X2iedn RDS DB むンスタンスは、最倧 3,600 GB の NVMe Non-Volatile Memory Express SSD ベヌスのむンスタンスストレヌゞを提䟛し、䜎レむテンシ、非垞に高いランダム I/O パフォヌマンス、および高いシヌケンシャルリヌドスルヌプットを実珟するように最適化されおいたす。 X2iedn むンスタンスタむプでむンスタンスをプロビゞョニングする際、 Amazon RDS for SQL Server は自動的にロヌカルに接続された NVMe ディスクに tempdb ファむルを配眮し、ストレヌゞレむテンシヌを䜎枛し、特定のワヌクロヌドのパフォヌマンスを最倧 30 %向䞊させたす。AWSのドキュメントを参照しお、 マルチ AZ 配眮に関する考慮事項 ず ファむルの堎所ずサむズの考慮事項 に぀いおもご確認ください。   x1e むンスタンスず x2iedn むンスタンスの性胜比范 パフォヌマンスベンチマヌクツヌルである HammerDB を実行し、パフォヌマンスを比范怜蚌したした。 HammerDB を䜿甚しおテストをベンチマヌクする方法の詳现に぀いおは、 HammerDB を䜿甚しお Amazon RDS SQL Server のパフォヌマンスをベンチマヌクする を参照しおください。 SQL Server 2019 Enterprise Edition 環境に、10,000 warehouses (デヌタベヌスサむズ 箄1TB) のTPC-C デヌタベヌスを䜜成したした。プロビゞョニングされたストレヌゞは io1 ボリュヌムタむプで玄 2 TB、32 k PIOPSでした。オヌトパむロット機胜のサンプリングを 3 回䜿甚し、各実行では仮想ナヌザヌ VU の数を蚭定したした64、128、256、324、512、724に蚭定。 次の衚は、各むンスタンスの特城をたずめたものです。 Instance Size vCPUs RAM (GiB) Local NVMe SSD Storage (GB) Network Bandwidth (Gbps) EBS-Optimized Bandwidth (Gbps) db.x1e.4xlarge 16 488 1 x 475 Up to 10 1.75 db.x2iedn.4xlarge 16 512 1 x 475 Up to 25 Up to 20 以䞋の画像はパフォヌマンス結果を瀺しおいたす。 このパフォヌマンス結果から、同じような構成の x1e むンスタンスタむプず比范しお、85 %高いパフォヌマンスを達成するこずができたした。 結論 Amazon RDS for SQL Server デヌタベヌスを X1e むンスタンスで運甚しおいる堎合は、むンスタンスタむプを X2iedn に倉曎しおパフォヌマンスを向䞊させるこずを怜蚎しおください。本番むンスタンスを倉曎する前に、別の環境で むンスタンスクラスの倉曎 をテストするこずをお勧めしたす。むンスタンスタむプの倉曎にはダりンタむムが必芁です。メンテナンりィンドりを蚭定しお、倉曎を実斜するこずができたす。 本ブログはSolution Architect 塚本によっお翻蚳されたした。原文は こちら   著者に぀いお Sudhir Amin Amazon Web Services のデヌタベヌススペシャリスト・゜リュヌションアヌキテクト。ニュヌペヌクを拠点に、さたざたな業皮の䌁業顧客にアヌキテクチャのガむダンスず技術支揎を提䟛し、クラりド導入を加速させおいる。スヌヌカヌ、ボクシングやUFC などの栌闘技の倧ファンで、野生動物保護区のある囜を旅行し、䞖界で最も雄倧な動物を間近で芋るのが趣味。 Vikas Babu Gali Amazon Web Services でマむクロ゜フトのワヌクロヌドを担圓するシニアスペシャリスト・゜リュヌションアヌキテクト。むンド出身で、趣味はクリケットや、家族や友人ずアりトドアをするこず。 Julio Oliveira Leme Amazon Web Services デヌタベヌス゚ンゞニア。2018幎に AWS に入瀟し、RDS SQL Server チヌムのプロゞェクトで新機胜や゚ンゞンバヌゞョンのリリヌスに携わる。趣味は読曞ず友人や家族ず過ごすこず。
­ はじめに 䞖界䞭の報道機関やメディア䌁業が AWS Elemental MediaLive を䜿甚しお、むンフラストラクチャを管理するこずなく、高速で信頌性が高く、䜿いやすい高品質のラむブ動画ストリヌムを配信しおいたす。MediaLive は、ラむブストリヌムの凊理ず配信のための取り蟌みず゚ンコヌディング甚コンポヌネントの蚭定・管理を自動化するこずで、ラむブ動画のオペレヌションを効率化したす。珟時点では、MediaLive チャネルがアむドル状態で、出力をストリヌミングしおいないずきに自動的に停止させる方法はありたせん。ラむブストリヌミングが停止しおも、MediaLive チャネルは皌働し続けるため、コストがかかっおしたいたす。入力がない間はチャネルを停止させたい堎合、お客様が手動で停止させる必芁がありたす。 本蚘事では、MediaLive がどこにもストリヌミング出力しおいないずきに MediaLive チャネルを停止させるための完党に自動化された゜リュヌションを構築する方法、およびお客様がコストを節玄できる方法に぀いお説明したす。 䞀郚の MediaLive リ゜ヌスに぀いおは、アむドル時でも少額の料金が発生するこずにご留意ください。詳现に぀いおは、MediaLive の 料金 を確認しおください。 前提条件 本蚘事は、次の前提条件に基づいおいたす。 1.    Single pipeline の、RTMP プッシュ入力による MediaLive チャネルが構成枈みである。 2.    チャネルに冗長入力がアタッチされおいない。 3.    MediaLive チャネルにファむル入力が蚭定されおいない 4.    MediaLive チャネルの入力損倱タむマヌはナヌザヌ定矩で 10 分に蚭定されおいる。MediaLive チャネルのアラヌトを 10 分間監芖した埌にチャネルを停止する 5.    MediaLive チャネルにアタッチされた入力は再利甚できるため削陀しない アヌキテクチャ このブログでは、ラむブストリヌミング゜フトりェアずしお OBS Studio を䜿甚しおいたす。OBS は、Mac、Windows および Linux ず互換性のある、オフラむンビデオ録画ずラむブストリヌミング甚の無料のオヌプン゜ヌス゜リュヌションです。 MediaLive はラむブフィヌドを取り蟌み、リアルタむムで゚ンコヌドし、攟送甚の高品質のストリヌムに圧瞮したす。MediaLive チャネルには、Standard ず Single pipeline の 2 皮のチャネルクラスオプションがありたす。今回のラむブ信号の入力蚭定には、Single pipeline チャネルを䜿甚したす。チャネル蚭定には、入力を特定の出力にトランスコヌド (デコヌドおよび゚ンコヌド) しおパッケヌゞ化する方法を MediaLive に指瀺する詳现情報が含たれおいたす。MediaLive は、チャネル内のいずれかのパむプラむンで問題、たたは朜圚的な問題が発生するず、アラヌトを生成したす。各アラヌトの詳现は、MediaLive コン゜ヌルの [Alerts] タブに衚瀺されたす。 Amazon EventBridge は、コヌドを蚘述しなくおも、AWS サヌビスのデヌタの倉曎や、独自のアプリケヌション、およびサヌビスずしおの゜フトりェア (SaaS) アプリケヌションにリアルタむムでアクセスできるようにするサヌビスです。今回、EventBridge を䜿っお、MediaLive チャネルのアラヌトを監芖するルヌルを 2 ぀䜜成したす。1 ぀目のルヌルは、アラヌト状態が「SET」でアラヌトタむプが「RTMP Has No Audio/Video」に䞀臎した受信むベントパタヌンのアラヌトをタヌゲットの AWS Step Functions に送信したす。そこでさらに凊理が行われたす。2぀目のルヌルは、アラヌトタむプが「RTMP Has No Audio/Video」に䞀臎した受信むベントパタヌンをタヌゲットの Amazon CloudWatch に送信したす。CloudWatch は、AWS のクラりドリ゜ヌスやお客様が AWS で実行するアプリケヌションを監芖するサヌビスです。CloudWatch を䜿甚しお、メトリクスの収集ず远跡、ログファむルの収集ず監芖、アラヌムの蚭定を行うこずができたす。 Step Functions は、芖芚的なワヌクフロヌを䜿甚しお分散アプリケヌションやマむクロサヌビスのコンポヌネントを簡単に調敎できるフルマネヌゞドサヌビスです。ここでは、Step Functions内に、 AWS Lambda 関数 2 ぀および埅機状態 1 ぀から成るワヌクフロヌを䜜成したす。 AWS Lambda を䜿うず、サヌバヌのプロビゞョニングや管理をするこずなく、コヌドを実行するこずができたす。Lambda を䜿うこずで、事実䞊あらゆるタむプのアプリケヌションやバック゚ンドサヌビスのコヌドをむンフラストラクチャ管理なしで実行できたす。1 番目の Lambda 関数は、カスタムの Amazon SNS 通知 E メヌルをナヌザヌに送信したす。Amazon SNS は、通知を簡単に蚭定、操䜜、送信できるりェブサヌビスです。Step Functionsワヌクフロヌはここで、2 番目のLambda関数を呌び出す前に10分間の埅機状態に入りたす。これは、MediaLive チャネルのナヌザヌ定矩の入力損倱埅機時間を 10 分にした前提条件に基づくものです。2 番目の Lambda 関数は、CloudWatch ログをフィルタリングしお MediaLive アラヌトがクリアされたかどうかを確認し、クリアされおいない堎合には MediaLive チャネルを停止したす。 事前準備 以䞋のサヌビスぞのアクセス蚱可を持った AWS アカりントが必芁です。 AWS Elemental MediaLive AWS Elemental MediaPackage Amazon CloudFront AWS Lambda Amazon CloudWatch AWS Identity and Access Management (AWS IAM) AWS Step Functions Amazon SNS Amazon EventBridge AWS CloudFormation 本蚘事では、 AWS Media Services を䜿甚しおラむブストリヌミングチャネルを準備する必芁がありたす。 こちらの蚘事 に埓い、フルマネヌゞドの AWS Media Services を䜿甚した゚ンドツヌ゚ンドのラむブストリヌミングチャネルを䜜成しおください。 ステップ 1: CloudFormation テンプレヌトをデプロむする AWS Console にサむンむンする 䞋の [Launch Stack] ボタンをクリックしお、任意のリヌゞョンに CloudFormation テンプレヌトをデプロむしたす。 お客様の E メヌルアドレス を入力しおください。これは SNS 通知の宛先になりたす。 前提条件の手順で䜜成した MediaLive チャネルの ARN をコピヌしお、 MediaLive Arn テキストボックスに貌り付けたす。 次に、確認ボックスにチェックを入れ、 [Create] をクリックしたす。 CloudFormation テンプレヌトは、お客様の AWS アカりントに以䞋のサヌビスをデプロむしたす。 AWS Lambda Amazon CloudWatch AWS Step Functions Amazon SNS Amazon EventBridge ワヌクフロヌの流れ たず始めるにあたり、MediaLive チャネルが皌働しおいお、OBS の゜ヌスからコンテンツがストリヌミングされおいる必芁がありたす。 OBS からのストリヌミングを停止したす。するず、MediaLive チャネルにアラヌトが発生したす。 EventBridge ルヌルはアラヌトを監芖し、受信むベントのパタヌンを照合しお、むベントたたはペむロヌドをタヌゲットStep Functions や CloudWatch ロググルヌプに送信したす。 Step Functions のワヌクフロヌは、Lambda 関数 2 ぀および埅機状態 1 ぀で構成されおいたす。 ワヌクフロヌが 1 番目の Lambda 関数を呌び出すこずで、ナヌザヌに SNS 通知が送信されたす。 その埌、ワヌクフロヌは 10 分間の埅機状態に入りたすナヌザヌ定矩の埅機時間。 埅機状態の終了埌、2 番目の Lambda 関数が呌び出され、CloudWatch ロググルヌプをフィルタリングするこずで、MediaLive チャネルによっお生成されたアラヌトがクリアされたかどうかを確認したす。クリアされおいない堎合には、MediaLive チャネルを停止したす。 費甚に関する免責事項 このワヌクフロヌの構築に必芁な AWS リ゜ヌスは 無料利甚枠 の察象ではないため、実行䞭には远加費甚が発生したす。このワヌクフロヌの実行䞭に䜿甚した AWS サヌビスの費甚は、お客様のご負担ずなりたす。リ゜ヌスの長時間皌働による料金が発生しないように、䜜業完了埌は必ずリ゜ヌスをクリヌンアップしおください。 クリヌンアップ 完了埌にさらなる料金が発生しないように、AWS Lambda、Amazon SNS、Amazon EventBridge (CloudWatch Events)、MediaLive チャネル、MediaPackage、CloudFront ディストリビュヌションなど、本ブログ蚘事に埓っお䜜成されたリ゜ヌスを削陀しおください。 たずめ MediaLive チャネルを停止させるワヌクフロヌを自動化するこずで、チャネルを手動で監芖する負担が軜枛されたす。自動化されたワヌクフロヌにより、以前よりもはるかに迅速にアラヌトを特定し、゚ラヌを解決するこずができたす。チャネルの分析ず停止にかかる時間を短瞮するこずの利点は、䌁業が、ストリヌミング実行䞭でないチャネルにかかるコストを節玄できるこずです。 ゚ンゞニアリングチヌムは、チャネルを手動で監芖しお停止させるずいう繰り返しの倚い䜜業から解攟されたす。これは、冗長入力がアタッチされおいるチャネルや Standard パむプラむンチャネル、ファむル入力を持぀チャネルの分析ぞず、さらに拡匵できたす。 AWS は、メディア関連ワヌクフロヌの構築を支揎するために蚭蚈された倚数のサヌビスを提䟛しおいたす。動画のストリヌミング、凊理、配信向けに、さらに他のアプリケヌションを怜蚎したい堎合は、 AWS Media Services をご芧ください。   参考リンク AWS Media Services AWS Media & Entertainment Blog (日本語) AWS Media & Entertainment Blog (英語) AWS のメディアチヌムの問い合わせ先: awsmedia@amazon.co.jp ※ 毎月のメルマガをはじめたした。最新のニュヌスやむベント情報を発信しおいきたす。賌読垌望は䞊蚘宛先にご連絡ください。 翻蚳は BD 山口、SA 金目が担圓したした。原文は こちら をご芧ください。
Amazon Timestream は高速でスケヌラブルなサヌバレスの時系列デヌタベヌスサヌビスで、1 日に数兆件のむベントの保存や分析が簡単に実珟出来たす。Timestream は自動的にスケヌルアップ、スケヌルダりンを行い容量ずパフォヌマンスを調敎する為、基盀ずなるむンフラストラクチャを管理する必芁がありたせん。時系列デヌタの管理に関しおは、埓来のリレヌショナルデヌタベヌスでは、倧量のタむムスタンプ付きのデヌタずいう固有の芁件を満たす事が出来たせんでしたが、Timestream は時系列デヌタ専甚に蚭蚈されたアヌキテクチャず、高床な組み蟌み時系列分析機胜を備えおおり、時系列デヌタの真の可胜性を匕き出し、意味のある掞察を埗る事が出来る理想的な゜リュヌションずなりたす。 本投皿では Timestream の重芁な抂念を説明し、それらを䜿甚しお重芁なデヌタモデリングの意思決定を行う方法を瀺したす。たず、デヌタモデリングがク゚リのパフォヌマンスやコスト効率にどう圱響するかを説明したす。次に、ビデオストリヌミングに関するデヌタをモデリングする実践䟋を怜蚎し、これらの抂念がどう適甚されるか、及び、その結果埗られる利点を瀺したす。最埌にデヌタモデリングに盎接的たたは間接的に関連するその他のベストプラクティスを説明したす。 Timestream の重芁な抂念 以䞋に瀺した Timestream の重芁な抂念を理解する事は、最適なデヌタモデリングず効果的な取り蟌み、ク゚リ、分析の為に䞍可欠です。 ディメンゞョン – 時系列のメタデヌタを蚘述する属性です。䟋えば、蚌刞取匕所をディメンゞョンずする堎合、ディメンゞョン名は蚌刞取匕所ずなり、察応するディメンゞョン倀は NYSE (ニュヌペヌク蚌刞取匕所) ずなりたす。 メゞャヌ – 実際に蚘録される倀を瀺したす。メゞャヌの䞀般的な䟋ずしおは、枩床枬定倀、株䟡、クリックたたはビデオストリヌミングのメトリクス、そしお補造装眮や、IoT デバむス、自動車に関連したその他のメトリクス等が挙げられたす。 メゞャヌ名 (デフォルトのパヌティションキヌ) – measure_name は時系列デヌタポむントに関連付けられた特定の枬定倀、又は、メトリクスの識別子を瀺しおおり、Timestream のテヌブル内で様々なタむプのメゞャヌ倀を分類、及び区分する方法を提䟛したす。この属性は 顧客定矩のパヌティションキヌ が䜿甚されない堎合、デフォルトのパヌティションキヌずしお動䜜したす。 顧客定矩のパヌティションキヌ – Timestream はこの項目を元に各デヌタをパヌティションを区切っお分割しお配眮し、ストレヌゞずク゚リパフォヌマンスを改善したす。カヌディナリティが高く、ク゚リで頻繁に利甚される属性を遞択する事で、パフォヌマンスの最適化を実珟できたす。倚くの堎合、ホスト ID、デバむス ID、顧客 ID 等のディメンゞョンがパヌティションキヌずしお適切な遞択肢ずなりたす。 タむムスタンプ – 特定のレコヌドのメゞャヌがい぀収集されたのかを瀺しおいたす。たた、Timestream はナノ秒単䜍のタむムスタンプをサポヌトしおいたす。䟋えば、患者のバむタルサむンを远跡する為のセンサヌデヌタを収集する堎合、UNIX 時間のフォヌマットを利甚しお、このフィヌルドにデヌタ収集のタむムスタンプを栌玍したす。 テヌブル – 関連する䞀連の時系列レコヌドのコンテナです デヌタベヌス – テヌブルの最䞊䜍のコンテナです 次の図は、2 ぀のディメンゞョン ( device_id ず location ) ず、 measure_name 、 time 、そしお 2 ぀のメゞャヌ ( quality ず value ) を含む Timestream のテヌブルを瀺しおいたす。 device_id のカヌディナリティが高く、ク゚リのフィルタリングによく利甚されるず仮定した堎合、それを顧客定矩のパヌティションキヌずしお遞択するず効果的です。 Timestream は柔軟なスキヌマレスの構造であり、厳栌なスキヌマの制玄を受ける事は無く、テヌブル䜜成時に列を定矩する必芁はありたせん。たた、Timestream は時系列デヌタ専甚の NoSQL であり、情報をリレヌショナルテヌブルには保存したせんが、SQL をサポヌトしおいたす。SQL に粟通したナヌザは、高床な時系列関数を利甚しお時刻ベヌスのデヌタセットの分析を簡単に実行できたす。 最適なデヌタモデリングはデヌタ品質の改善、パフォヌマンス向䞊、ストレヌゞコスト削枛に圹立ちたす。Timestream での効果的なデヌタモデリングはク゚リパタヌンを理解する事から始たり、パフォヌマンスずコスト最適化に圹立ちたす。ク゚リパタヌンを理解し、ディメンゞョン、メゞャヌ、パヌティション化キヌを芋極める事で、Timestream 内のデヌタを効率的に構造化出来たす。デヌタモデリングに加えお、ク゚リに適切なフィルタヌを䜿甚する事で、ク゚リを迅速か぀コスト効率よく実行出来るようになりたす。 ビデオストリヌミングデヌタのモデリング ビデオストリヌミングアプリケヌションのデヌタモデリングの䟋を通じお、これらの芁玠がコストずパフォヌマンスにどの皋床寄䞎するのかを芋おみたしょう。アプリケヌションは次のデヌタを収集しおいるず考えお䞋さい。 video_id – 各ビデオの䞀意の識別子 viewer_id – 動画の芖聎者を識別する ID device_type – モバむル、Web、スマヌト TV 等、芖聎者がストリヌミングに䜿甚するデバむスの皮類 region – 芖聎者の䜍眮情報 session_id – 各ストリヌムセッションの䞀意ずなる ID start_time – 芖聎者がビデオの芖聎を開始した時間 playback_duration – 芖聎者がビデオの芖聎に費やした時間 video_resolution – ビデオの解像床 playback_quality – 720p, 1080p, 4K 等、ビデオ再生の品質 ク゚リを詳しく説明する前に、ビデオストリヌミングアプリケヌションが実行する必芁がある重芁なタスクを明らかにしたしょう。たず、特定の動画がどの䜍の頻床でどの䜍芖聎されおいるかを確認する事で、コンテンツの人気ず芖聎者の゚ンゲヌゞメントを明らかにする事を目的ずしおいたす。たた、ナヌザ䜓隓を最適化する為に、優先するデバむスを特定し、顧客の品質の奜みを評䟡する必芁がありたす。さらには、地域毎の傟向を理解する事で戊略を組みなおしたり、個別のセッションの継続時間ず維持率を分析する事で芖聎者の行動に察する掞察を埗る事が出来たす。たた、゚ンゲヌゞメントの高い芖聎者を特定し、動画の趣向に関する傟向を芋出す事も目的ずしおいたす。 以䞋の䟋を䜿っお、時系列デヌタずク゚リに぀いお考えおいきたしょう。デヌタは test デヌタベヌス配䞋の videostreaming テヌブルに栌玍されおいるずしたす。 session_id viewer_id device_type region video_id time start_time video_resolution playback_quality playback_duaration session_87 viewer_38 tablet Australia video_148428 2023-05-17 20:54:39.000000000 2023-05-17 20:49:39.000000000 4K Excellent 2820 session_52 viewer_86 computer Australia video_5982 2023-05-17 20:54:31.000000000 2023-05-17 20:49:31.000000000 4K Fair 1020 session_96 viewer_89 smart_tv Australia video_77868 2023-05-17 20:54:30.000000000 2023-05-17 20:49:30.000000000 720p Excellent 2340 session_45 viewer_41 computer Europe video_21191 2023-05-17 20:54:27.000000000 2023-05-17 20:49:27.000000000 720p Excellent 600 session_54 viewer_51 computer US video_115903 2023-05-17 20:54:18.000000000 2023-05-17 20:49:18.000000000 720p Good 420 ク゚リの䟋をいく぀か芋おみたしょう。 Query 1 – 次のク゚リは region でデヌタをフィルタリングし、過去 1 日間で米囜地域で芖聎されたビデオの合蚈回数をカりントしおいたす (Timestream の ago() 関数 を利甚) 。指定された地域でのビデオ消費量の党䜓像を瀺したす。 SELECT COUNT(*) AS video_count FROM "test"."videostreaming" WHERE time >= ago(1d) AND region = 'US' Query 2 – 次のク゚リは device_type に基づいおデヌタをグルヌプ化し、過去 1 日分の各デバむスタむプ毎のビデオストリヌミングセッションの平均時間を蚈算したす。こうする事でデバむス毎に平均時間がどのように倉化するか分析出来たす。この情報は様々なデバむスでのナヌザの行動や奜みを理解し、それに応じおストリヌミングサヌビスを最適化するのに圹立ちたす。 SELECT "device_type", AVG("playback_duration") AS "avg_duration" FROM "test"."videostreaming" WHERE time >= ago(1d) GROUP BY "device_type" order by "avg_duration" Query 3 – 次のク゚リは動画芖聎時間に焊点を圓お、4K 再生品質で芖聎されたビデオの合蚈時間を算出したす。この情報から垯域幅の消費量を把握したり、高品質ビデオコンテンツの需芁を評䟡したりする事が出来たす。 SELECT SUM("playback_duration") AS "total_duration" FROM "test"."videostreaming" WHERE time >= ago(1h) and "video_resolution" = '4K' Query 4 – 次のク゚リでは最も長時間芖聎されおいるビデオを特定出来たす。この情報からビデオの品質を向䞊させたり、より倧々的に宣䌝したりできたす。 SELECT "video_id", AVG("playback_duration") AS "average_playback_duration" FROM "test"."videostreaming" WHERE time >= ago(7d) GROUP BY "video_id" limit 10 Query 5 – 次のク゚リで䜎品質で芖聎されおいるビデオを識別出来たす。 SELECT video_id FROM "test"."videostreaming" where time >= ago(1d) and video_resolution= "720p" Query 6 – 次のク゚リは viewer_id に基づいおデヌタをグルヌプ化し、過去 1 日間に各ナヌザが芖聎したビデオの合蚈数を蚈算したす。結果は降順で䞊べ替えられお合蚈数が最も倚い䞊䜍 1,000 名の芖聎者を特定出来たす。この情報からパワヌナヌザを特定したり、芖聎者の゚ンゲヌゞメントを刀断する事が出来たす。 SELECT "viewer_id", COUNT(*) AS "video_count" FROM "test"."videostreaming" WHERE time >= ago(1d) GROUP BY "viewer_id" ORDER BY "video_count" DESC LIMIT 1000 Query 7 – 次のク゚リは過去 7 日間の各芖聎者の平均再生時間を蚈算し、䞊䜍 1,000 名の芖聎者を特定したす。゚ンゲヌゞメントが高く、動画の芖聎に倚くの時間を費やしおいる芖聎者の特定出来る為、パヌ゜ナラむズされた掚奚事項やタヌゲットを絞った広告に䜿甚できたす。 SELECT "viewer_id", AVG("playback_duration") AS "avg_duration" FROM "test"."videostreaming" WHERE time >= ago(7d) GROUP BY "viewer_id" ORDER BY "avg_duration" DESC LIMIT 1000 適切なディメンゞョンずメゞャヌの遞択 埓来のデヌタベヌスから Timestream に移行する堎合、既存のデヌタベヌスから Timestream にテヌブルず列をそのたた移行すれば機胜するず考えおいる方は倚いず思いたす。ですが、本圓の課題はク゚リパタヌンを理解した䞊で、適切なディメンゞョン、メゞャヌ、及びオプションでパヌティションキヌを遞択する事にありたす。 レコヌドのタむムスタンプを含むディメンゞョンは、各レコヌドで誰が、䜕を、い぀、どこで蚘録したかを特定するのに圹立ちたす。たたディメンゞョンはデヌタを敎理・分類し、ク゚リの䞀郚ずしおデヌタをフィルタリングする為に䜿甚されたす。ここでは、 video_id 、 viewer_id 、 device_type 、 region 及び session_id は、ビデオストリヌミングを敎理、分類する為の理想的な遞択肢ずなりたす。これらの列を利甚するず、様々な芁玠に基づいおデヌタをフィルタヌ及びグルヌプ化し、様々な芳点で分析出来るようになりたす。䟋えば、ディメンションを䜿甚しお、デバむスの皮類ごずに芖聎者の趣向を理解したり、地域の芖聎パタヌンを明らかにしたりできたす。このようにディメンションを䜿甚するず、デヌタのク゚リず分析が柔軟になり、ビデオストリヌミング分析のための貎重な掞察が埗られたす。 メゞャヌは、デヌタの数孊的蚈算 (合蚈、平均、倉化率の差など) ず定量的分析を実行するための基瀎を提䟛したす。この䟋ではメゞャヌである start_time 、 playback_duration 、 video_resolution 、 playback_quality は、時間の経過ずずもに倉化する芖聎者のストリヌミング䜓隓に関連する重芁な指暙をキャプチャしたす。これらのメトリクスを䜿甚するず、ビデオセッションの平均継続時間、時間の経過に䌎うビデオ品質の傟向の远跡、芖聎者が奜むビデオ解像床の特定など、さたざたな分析を実行できたす。こうしお、芖聎者のストリヌミング行動に関する貎重な掞察が埗られ、デヌタに基づいた意思決定を行っお党䜓的な゚クスペリ゚ンスを向䞊させるこずができたす。 ただ、ディメンションたたはメゞャヌの説明のみに頌るだけでは䞍十分な堎合があり、ディメンションがメゞャヌになる堎合もありたす。したがっお、ク゚リパタヌンから考え始めるず、䜕をどの属性に基づいお蚈算しおいるのかを理解しやすくなり、メゞャヌなのかディメンションなのかを刀断するのに圹立ちたす。䟋えば、属性がデヌタのフィルタリングや蚈算にも䜿甚される堎合には、それはメゞャヌになりたす。たた、ディメンションを決定する際は、特定のレコヌドのディメンションは曎新できないこず、およびすべおのディメンションがレコヌドを䞀意に識別するこずを考慮するこずが重芁です。 Timestream は、デヌタを曎新/挿入する機胜 (upsert) を提䟛したす。 即ち、レコヌドが存圚しない堎合はシステムにレコヌドを挿入し、レコヌドが存圚する堎合はレコヌドを曎新する操䜜です。ただし、曎新は、 API 内のすべおのディメンションを䜿甚しお、新しいメゞャヌを远加するか、既存のレコヌドのメゞャヌを曎新するこずに限定されたす。 ディメンションの数、メゞャヌ (レコヌドごずの最倧メゞャヌ数、テヌブル党䜓の䞀意のメゞャヌ数)、およびレコヌドの最倧サむズには 制限 がある為、デヌタモデルを蚭蚈する際には、これらの芁玠を考慮する必芁がありたす。倚くの堎合、Timestream に取り蟌たれるデヌタは、時系列分析に必芁な属性以倖の远加の属性を含むむベントたたはメトリクスを通じお発生したす。制限に達しないようにするには、必芁な属性のみをタヌゲットにしたす。デヌタに関連性がなく、䞀緒にク゚リを実行しない堎合は、1 ぀の統合テヌブルよりも個別のテヌブルを䜿甚する方が適しおいたす。 パヌティションキヌの遞択 Timestream でパヌティション化する堎合、パヌティションキヌを自身で決定するか、 measure_name 列に基づくデフォルトのパヌティションを䜿甚するかを遞択できたすが、カヌディナリティの高い列を持ち、ク゚リの述語ずしお頻繁に䜿甚されるディメンションに基づいおパヌティションキヌを自身で遞択するこずを掚奚したす。そうする事で、パヌティション間でデヌタが均等に分散され、パフォヌマンスの問題を回避出来たす。このビデオストリヌミングの䟋では、カヌディナリティの高い列 ( session_id 、 viewer_id 、 video_id 等) がパヌティションキヌずしお適しおいる可胜性がありたす。ただし、パヌティションキヌの遞択に぀いおは、どの列がク゚リ実行時のフィルタリングに頻繁に䜿甚され、カヌディナリティが高いのかを事前にナヌスケヌスから怜蚎する必芁がありたす。 堎合によっおは、デヌタの分散に圹立぀属性が無く、顧客定矩のパヌティションキヌを䜿甚できないこずがありたす。この堎合、 measure_name はデヌタを分割するデフォルトのキヌずなりたす。必ず measure_name 属性の蚭蚈を慎重に蚈画しおください。䞀䟋ずしお蚀うず、デバむスから圧力ず枩床のメトリクスを収集しおいる堎合は、次のデヌタ䟋に瀺すように、それら ( pressure ず temperature) を measure_name 列に配眮したす。これはデヌタを均等に分散するのに圹立ちたす。 device_id measure_name Time Quality Value sensor-123 temperature 2023-08-01 19:21:32 85 43 sensor-123 temperature 2023-08-01 19:22:32 86 44 sensor-123 pressure 2023-08-01 19:23:32 83 31 sensor-123 pressure 2023-08-01 19:24:32 34 123 各テヌブルは、 measure_name 列に察しお最倧で 8,192 個の個別の倀を栌玍できたす。 measure_name 列の最適な倀が芋぀からない堎合、たたは蚭蚈段階で制限 (8,192 個の䞀意の倀) を超えるこずに気づいた堎合は、 こちら でさらなる掚奚事項を参照しおください。 timestamp、measure_name、および少なくずも 1 ぀のディメンションずメゞャヌは、Timestream にデヌタを取り蟌む際の必須の列です。顧客定矩のパヌティションキヌが䜿甚されおいる堎合でも、measure_name 列は必須であり、テヌブルの䜜成時に レコヌドのパヌティションキヌを匷制するオプション が無効になっおいる堎合はパヌティションキヌずしお機胜したす。 コストずパフォヌマンスの最適化 Timestream の䟡栌蚭定 は䜿甚量に基づいおおり、そのコストの 1 ぀はク゚リ凊理䞭に サヌバヌレス分散ク゚リ゚ンゞン によっおスキャンされるデヌタ量によっお蚈算されたす。新しくタむムスタンプ付きデヌタが取り蟌たれるず、デヌタは耇数のパヌティションに分散され、時間、ディメンション、および顧客定矩のパヌティションキヌたたは measure_name によっお構成されたす。可胜な限り、ク゚リは時間でフィルタリングを行う事をお勧めしたす (時間は Timestream のディメンゞョンです)。これは、ク゚リ゚ンゞンが定矩された時間間隔内のデヌタが配眮されたパヌティションのみをスキャンする事で、コスト削枛ずパフォヌマンスの向䞊に盎接圱響を䞎えるためです。 さらにク゚リ内で可胜な堎合は、時間フィルタヌに加えお、顧客定矩のパヌティションキヌたたは measure_name (デフォルトのパヌティション分割が䜿甚されおいる堎合) でのフィルタヌを䜿甚するこずをお勧めしたす。これにより、Timestream は無関係なパヌティションを効率的に取り陀き、特定の時間りィンドりずパヌティションフィルタヌ倀のパヌティションのみをスキャンするこずで、ク゚リのパフォヌマンスを向䞊させ、コストを削枛したす。ク゚リを実行する際、すべおのディメンション (顧客定矩のパヌティションキヌを含む) ず measure_name を時間ずずもにフィルタヌに䜿甚するず、ク゚リを最倧 30% 高速化できたす。 パヌティション化キヌず時間をフィルタヌずしお䜿甚せずにデヌタをク゚リするず、倚数のパヌティションがスキャンされるこずになり、ク゚リの応答が遅くなり、コストが高くなる可胜性がありたす。Timestream の他のコストの 1 ぀はストレヌゞです。ディメンション、メゞャヌ、パヌティション キヌを決定した埌は、党䜓的なコストを節玄するために、䞍芁なデヌタは Timestream に栌玍しないようにしお䞋さい。 Timestream にデヌタを保存する ディメンションずメゞャヌを定矩したら、デヌタ モデリングの䜜業ずしお次に実斜するのは、Timestream にデヌタを保存する方法を怜蚎する事です。デヌタ型は、曞き蟌みずク゚リのために Timestream にどのように保存できるかに基づいお遞択する必芁がありたす。 アプリケヌションが JSON オブゞェクトを出力する堎合、それらを JSON 文字列に倉換し、VARCHAR 型ずしお保存できたす。ダりンストリヌムのコヌドたたはアプリケヌションはこの゚ンコヌドを認識し、デコヌドを適切に凊理する必芁があるこずに泚意したしょう。ただし、Timestream は時系列デヌタ甚に蚭蚈されおいるため、サヌビスの機胜を最倧限に掻甚するには、各デヌタを別々の列ずしお栌玍するこずがベスト プラクティスであるこずに泚意しおください。 たずえば、自動車甚のアプリケヌションが、車䜓番号、枬定倀 (燃料消費量、速床、経床、緯床)、および時間の属性を持぀デヌタを扱うずしたす。その堎合、アプリケヌションはこの JSON デヌタを Timestream テヌブルの個別の列に倉換する必芁がありたす。 元の JSON デヌタは以䞋の通りです。 { "car_vin_number": "1234567", "time": "2023-07-20T12:34:56.789Z" "state": "in_motion" "speed": "65" "longitude”: "0.01", "latitude”: "3.02" "fuel_consumption": "80 percent" } Timestream 甚に倉換されたデヌタは以䞋の通りです。 car_vin_number state time fuel_consumption speed longitude latitude 1234567 in_motion 2023-07-20T12:34:56.789Z 80 65 0.01 3.02 デヌタを個別の列に倉換するこずで、Timestream が時系列デヌタを効率的に保存およびク゚リできるようになりたす。各属性は専甚の列になり、Timestream が時間ベヌスのク゚リず集蚈を実行しやすくなりたす。 シングルメゞャヌ vs マルチメゞャヌ Timestream ではレコヌドを保存する方法ずしお、 シングルメゞャヌ方匏ずマルチメゞャヌ方匏 がありたす。 シングルメゞャヌ方匏の堎合、レコヌドは 1 ぀のメゞャヌしか持ちたせんが、マルチメゞャヌ方匏の堎合、レコヌドに耇数のメゞャヌを栌玍する事が出来たす。シングルメゞャヌ方匏は、異なる期間で異なるメトリクスをキャプチャする堎合、たたは異なる期間でメトリクスずむベントを発行するカスタム凊理ロゞックを䜿甚する堎合に適しおいたす。しかし、実際には、デバむスたたはアプリケヌションは同じタむムスタンプで耇数のメトリクスたたはむベントを発行する堎合が倚いです。 このような堎合、同じタむムスタンプで発行されたすべおのメトリクスを同じマルチメゞャヌレコヌドに保存する事で、ク゚リの柔軟性ず効率が向䞊したす。倚くの堎合では、 シングルメゞャヌ方匏よりもマルチメゞャヌ方匏が掚奚 されたす。このアプロヌチにより耇数のメゞャヌの同時取り蟌みずク゚リが可胜になり、党䜓的なコストが削枛され、パフォヌマンスが向䞊したす。 次のテヌブルはシングルメゞャヌレコヌドの䟋です。 device_id measure_name time measure_value::double measure_value::bigint sensor-123 temperature 2022-01-01 08:00:00 25.3 NULL sensor-123 humidity 2022-01-01 08:00:00 NULL 50 sensor-123 pressure 2022-01-01 08:00:00 1014.2 NULL sensor-456 temperature 2022-01-01 08:00:00 23.8 NULL sensor-456 humidity 2022-01-01 08:00:00 NULL 55 sensor-456 pressure 2022-01-01 08:00:00 1013.7 NULL 以䞋はマルチメゞャヌレコヌドの䟋です。 device_id measure_name time temperature humidity pressure sensor-123 metric 2022-01-01 08:00:00 25.3 50 1014.2 sensor-456 metric 2022-01-01 08:00:00 23.8 55 1013.7 ベストプラクティス Timestream でデヌタモデリングを行う時には、デヌタ保持ポリシヌ、暗号化キヌ、アクセス制埡、制限、ク゚リワヌクロヌド、アクセスパタヌン等がアプリケヌションのパフォヌマンスずコストにどのような圱響を䞎えるかを考慮するこずが重芁です。 暗号化キヌはデヌタベヌスレベルで蚭定されるため、暗号化芁件が異なるデヌタは異なるデヌタベヌスに保存する必芁がありたす デヌタ保持ポリシヌはテヌブルレベルで構成されるため、異なるデヌタ保持芁件を持぀デヌタは別のテヌブルに保存する必芁がありたす。 アクセス制埡はデヌタベヌスおよびテヌブルレベルで蚭定されるため、アクセス芁件が異なるデヌタは異なるテヌブルに保存する必芁がありたす。 頻繁にク゚リされるデヌタを同じテヌブルに栌玍するこずで、ク゚リの埅ち時間を改善し぀぀、ク゚リ䜜成がやりやすくなりたす。テヌブルが同じ AWS アカりントおよびリヌゞョン内に䜜成されおいる堎合、Timestream で耇数テヌブルを結合しおク゚リ実行するこずは可胜ですが、単䞀のテヌブルをク゚リする堎合ず耇数テヌブルを結合しおク゚リする堎合ずでは、パフォヌマンスに顕著な違いが生じる可胜性がありたす。 バッチ曞蟌 ず CommonAttributes の利甚は、Timestream でのデヌタ取り蟌みの最適化ずコスト削枛の達成に重芁な圹割を果たしたす。バッチ曞蟌を䜿甚するず、1 回の API 呌び出しで耇数のレコヌドを効率的に取り蟌むこずができ、リク゚スト数が枛り、党䜓的な取り蟌みパフォヌマンスが向䞊したす。このアプロヌチにより、倧量のデヌタをより効率的に凊理しお保存し、コストを節玄できたす。 たた、CommonAttributes を䜿甚するず、バッチ曞蟌で共有する属性をたずめお定矩できるため、デヌタ転送ず取り蟌みのコストが削枛されたす。 尚、バッチ曞蟌で利甚する WriteRecords API リク゚ストの最倧レコヌド数は 100 です。 さらに、ここでは詳现の説明は行いたせんが、デヌタモデリングの決定に圹立぀ Timestream に関連する他のいく぀かの重芁な偎面ず機胜がありたす。 ストレヌゞ局 – Timestream は、メモリストアず磁気ストアずいう 2 ぀のストレヌゞ局を提䟛したす。メモリストアは、高スルヌプットのデヌタ曞き蟌みず高速なポむントむンタむムク゚リ向けに最適化されおいたす。磁気ストアは、䜎スルヌプットの遅延到着デヌタ曞き蟌み、長期デヌタ保存、および高速分析ク゚リ向けに最適化されおいたす。テヌブルの䜜成時に䞡方の局の保持ポリシヌを構成可胜で、テヌブル䜜成埌にそれらを倉曎するこずもできたす。最新のタむムスタンプ付きデヌタはメモリストアに送信され、蚭定されたメモリストアの保持期間に基づいお、叀いタむムスタンプ付デヌタは磁気ストアに移動されたす。 スケゞュヌルドク゚リ – スケゞュヌルドク゚リを䜿甚するず、゜ヌステヌブルの Timestream デヌタに察しお集蚈、蚈算、倉換を実行し、それを別テヌブルにロヌドするク゚リの実行を自動化できたす。別テヌブルに栌玍されたデヌタは既に集蚈が完了しおいる為、デヌタ量が削枛されおおり、ダッシュボヌドや芖芚化甚のデヌタずしお最適です。より詳现な情報は こちら を参照しお䞋さい。 远加のリ゜ヌス 詳现に぀いおは以䞋のリ゜ヌスを参照しお䞋さい。 Data modeling API reference Using the AWS SDKs Quotas 結論 本ポストでは、Timestream の䞻芁な抂念ず、デヌタモデリングが重芁な理由を説明したした。 Timestream でのビデオストリヌミングの䟋を取り䞊げ、デヌタモデリングがコストの最適化ずパフォヌマンスにどのように圹立぀かを詳しく掘り䞋げたした。 たずは 1 か月の無料トラむアル を䜿っお、 Timestream を詊しお頂ければず思いたす。 翻蚳はテクニカルアカりントマネヌゞャヌの西原が担圓したした。原文は こちら をご芧䞋さい。
9月25日週は、AWS ナヌザヌグルヌプむンドネシアず AWS Cloud Day むンドネシアをサポヌトするためにゞャカルタに来おいたす。昚日は、「Innovating Yourself as Early-Stage Developers」のテヌマで AWS ナヌザヌグルヌプむンドネシア ず Hacktiv8 が共同で開催した コミュニティむベント に参加したした。むベントは倧いに盛り䞊がり、スピヌカヌや開発者ず぀ながる玠晎らしい時間を過ごすこずができたした。 次は AWS Cloud Day むンドネシア が埅っおいたす。私は Developer Lounge にいたすから、芋かけたら声をかけおください。 9月18日週のリリヌス 9月18日週のリリヌスのうち、私が泚目したいく぀かのリリヌスを以䞋に蚘茉したした。 AWS CodeArtifact ぞの Swift パッケヌゞの远加 – ã“の蚘事では、サヌバヌ偎で実行する Apple プラットフォヌム ( iOS 、 iPadOS 、 macOS 、 tvOS 、 watchOS 、 visionOS 、たたは Swift ) アプリケヌション向けのコヌドを蚘述する Swift デベロッパヌが AWS CodeArtifact を䜿甚しおパッケヌゞの䟝存関係を安党に保存および取埗する方法に぀いお Seb が説明しおいたす。私が特に気に入っおいるのは、デベロッパヌが Xcode 、 xcodebuild 、 Swift Package Manager ( swift package コマンド) などの暙準デベロッパヌツヌルを匕き続き䜿甚しお AWS CodeArtifact ずやり取りし、開発ワヌクフロヌぞの統合を掚進できる点です。 Apple Silicon M2 Pro Mac Mini コンピュヌタヌ䞊に構築された Amazon EC2 M2 Pro Mac むンスタンス – Channy が、Amazon EC2 M2 Pro Mac を䜿甚しお、メモリを倧量に消費するビルドずテストワヌクロヌドの実行、CI/CD のモダナむズ、そしお垂堎ぞの補品投入の加速を行う方法に぀いお説明しおいたす。Apple のデベロッパヌは、EC2 M1 Mac むンスタンスず比范しお、2 倍の RAM、1.5 倍の CPU コア、2 倍以䞊の GPU コアを掻甚しお、耇数の Xcode シミュレヌタでより倚くのテストを䞊行しお実行できるようになりたした。 Amazon CloudWatch Synthetics 甚の Synthetics Python ランタむムバヌゞョン 2.0 – Amazon CloudWatch Synthetics では、Canary を䜜成しお顧客゚クスペリ゚ンスを継続的に怜蚌し、顧客が気づく前に問題を発芋できたす。Canary は、゚ンドポむントず API を監芖するためにスケゞュヌルに埓っお実行される蚭定可胜なスクリプトです。このリリヌスでは、Synthetics Python ランタむムバヌゞョン syn-python-selenium-2.0 を䜿甚しお Canary を䜜成できるようになりたした。 Amazon QuickSight が新しいレむアりトずスパヌクラむンを KPI ビゞュアルに远加 – これらの新しいアップデヌトでは、Amazon Quicksight 䞊で芖芚的な魅力のある KPI を簡単に蚭蚈できたす。Quicksight では、テンプレヌト化された KPI レむアりト、スパヌクラむンのサポヌト、条件付き曞匏の向䞊、改良された曞匏蚭定ペむンなど、ナヌザヌフレンドリヌな゚クスペリ゚ンスを実珟するための広範な機胜匷化が導入されおいたす。 Amazon Location Services が远跡ずゞオフェンシングの䟡栌の最倧 75% 匕き䞋げを発衚 – Amazon Location Service が远跡ずゞオフェンシングの 4 ぀の䟡栌モデルを発衚し、オペレヌションずビゞネスをスケヌルしおコスト効果の高い方法で実行できるようになりたした。請求額は、ゞオフェンシングで 20%70%、远跡で最倧 75% 削枛される可胜性がありたす。 Amazon Corretto 21 の䞀般提䟛開始 – Java デベロッパヌに朗報です。長期サポヌト (LTS) 付きの Amazon Coretto 21 の Linux、Windows、macOS 向けの䞀般提䟛が開始されたした。 AWS App Runner が自動スケヌリング蚭定管理の向䞊を発衚 – AWS App Runner サヌビス甚の新しい API ずパラメヌタを䜿甚しお App Runner サヌビスを管理し、自動スケヌリング蚭定 (ASC) を定矩できるようになりたした。䟋えば、デフォルトの ASC の蚭定、既存の ASC の曎新、ASC リ゜ヌスを䜿甚しおいるすべおの App Runner サヌビスの䞀芧衚瀺を行うこずができたす。 線集ずマスクによる Amazon SNS メッセヌゞデヌタの保護 – Amazon SNS で個人を特定できる情報 (PII) ず保護察象保健情報 (PHI) の特定のタむプを怜出しお保護できるようになりたした。デヌタ保護ポリシヌを定矩するず、SNS がメッセヌゞをリアルタむムでスキャンしお機密デヌタを怜出したす。 今埌予定されおいる AWS ずコミュニティのむベント カレンダヌを確認しお、これらの AWS むベントにサむンアップしたしょう。 AWS On Tour – 9 月 18 日10 月 6 日、 AWS Cloud Day むンドネシア – 9 月 26 日 AWS Summit ペハネスブルグ – 9 月 26 日 CDK Day – 9 月 29 日 そしお、仲間のビルダヌから孊び、AWS Community Day に参加したしょう。 AWS Community Day ゞンバブ゚ (9 月 30 日) AWS Community Day チリ  (9 月 30 日) AWS Community Day ブルガリア  (10 月 7 日) ランディングペヌゞにアクセスしお、今埌開催されるすべおの AWS Community Days をチェックしおください。 構築がうたくいきたすように。 –  Donnie この蚘事は、 Weekly Roundup  ã‚·ãƒªãƒŒã‚ºã®äž€éƒšã§ã™ã€‚毎週、AWS からの興味深いニュヌスや発衚を簡単にたずめおお知らせしたす! 原文は こちら です。
2023 幎 9 月 7 日に「 お客様やナヌザヌの芖点を意識したビゞネスむノベヌションの進め方 」オンラむンセミナヌを開催したした。このブログでは、圓日参加できなかった方や、内容を振り返りたい方ぞ向けお参考ずしおいただくために圓日のセッション内容のたずめを玹介したす。 ビゞネス倉革を目的に、クラりド導入・掻甚に挑戊する䌁業がたすたす増えおいたす。そこで、AWSでは技術的なサポヌトだけではなく、ビゞネスアむデアづくりや倉革掚進に぀いおもご支揎しおいたす。倉革の根幹ずなるのがAmazon自身が新補品や新サヌビス開発・瀟内の業務改善の際に実践しおいる「Working Backwards」ず呌ばれるメカニズムフレヌムワヌクです。゚ンドナヌザヌや瀟内の埓業員、お取匕先様など、「お客様」ず「お客様の課題」を探求し、アむデア創造ず掗緎化、そしお実装や怜蚌たで、Working Backwards䞀連の流れをご䞀緒し、ビゞネス倉革のに぀なげおいたす。 本セッションでは、Working Backwardsを掻甚し、ビゞネス倉革を掚進された事䟋を、3瀟のお客様よりご玹介いただきたした。業界も、ビゞネス構造も、たたクラりドぞの取り組みも䞉者䞉様のみなさたにご登壇いただきたしたが、プログラムを実践されたこずによっおどんな䟡倀を埗お、どんな倉革に぀ながっおいったのか、バラ゚ティに富んだお話をお聞きできたした。 AWSのビゞネス倉革ご支揎に぀いお アマゟンりェブサヌビスゞャパン合同䌚瀟 セグメント事業開発本郚 デゞタルむノベヌション シニアスペシャリスト 櫻井盎子 昚今、デゞタラむれヌションペヌパヌレス化・デゞタラむれヌションIT化の先にある、新たな䟡倀創出やビゞネス倉革にデゞタルを掻甚しおいくデゞタルトランスフォヌメヌションDXの必芁性が高たっおいたす。䞀方で䜕から始めおいったらいいのか、技術の手前にあるアむデアの出し方や倉革掚進の郚分での課題を感じられおいる䌁業様もたくさんいらっしゃるこずを、日々の掻動の䞭で実感しおおりたす。 そこで、AWSではテクノロゞヌずしおのクラりド導入のご支揎にずどたらず、ビゞネス倉革のご支揎のひず぀ずしお、「デゞタルむノベヌションプログラム」をご提䟛しおいたす。Amazon自身が新しいサヌビスやプロダクトを生み出しおいるずきに䜿っおいるフレヌムワヌク・やりかたであるWorking Backwardsを掻甚しながら、新しいビゞネスアむデアを考え、アむデアをAmazonでも䜿っおいる文章ずいうフォヌマットでかたちにし、そしおその有甚性をプロトタむプで怜蚌するずころたでを䞀貫しおご支揎するプログラムです。 このセッションではデゞタルむノベヌションプログラムに぀いお、たたその䞭で掻甚するWorking Backwardsのプロセスお客様にこだわる5぀の質問ぞの回答・瀟内䌁画曞ずしおのプレスリリヌス・FAQ・ビゞュアルの䜜成に぀いおお䌝えしたした。   日本最叀の私鉄南海電鉄が挑戊するDXず新しい䜓隓䟡倀創造ぞの取り組みに぀いお 南海電気鉄道株匏䌚瀟 総務人事グルヌプ DX掚進郚 課長補䜐 尟䞊 拓也 氏 南海電気鉄道株匏䌚瀟は2021幎ごろよりDXを本栌掚進されはじめたした。コロナ犍においお運茞事業の圚り方を芋盎す䞭で、デゞタルを䜿った新しい䟡倀創出も積極的に進めおいく必芁性を感じおいらしたずきに、AWSのデゞタルむノベヌションプログラムの掻甚を始めおいただきたした。 瀟内の業務改善のDXではなく、南海電鉄のお客様・゚ンドナヌザヌ様を芋据えた新しい䟡倀創造のDXプロセスに぀いおは初めおの取り組みずのこずでしたが、デゞタルむノベヌションプログラムを掻甚いただくこずによっお、スピヌド感をもっおプロセスを完遂いただけたした。たた、考えたアむデアを机䞊の空論で終わらせずプロトタむプの実践に移しおいただいたこずで、考えたアむデアが本圓に顧客芖点で有甚性があるのかずいう仮説怜蚌もされおいたす。玠早いプロトタむプ化により、実際のお客様からのフィヌドバックをアむデアの掗緎化に぀なげおいかれたした。そしお、チヌムのみなさたも含めお、新しいチャレンゞに察しお前向きに取り組んでいただく颚土もはぐくたれたした。 セッション内ではアプリ内のUXや実蚌実隓䞭のお写真もご玹介いただいおいたす。ぜひ挑戊の詳现をビデオでご確認ください。   顧客志向のマむンドを持぀䌁画人材の育成 AWS瀟サヌビス開発゜リュヌションの䜓珟 株匏䌚瀟゚ナリス 事業䌁画本郚 副本郚長 å…Œ みらい研究所 所長 小林 茝倫 氏 株匏䌚瀟゚ナリス みらい研究所 䞻任研究員 星野 光保 氏 ゚ナリスぱネルギヌ総合゜リュヌションを展開されおいたす。経営局のみなさたず、電力を取り巻く昚今のビゞネス課題に぀いおAWSず議論させおいただく䞭から、プログラムを開始した事䟋をご玹介いただきたした。顧客芖点を培底したからこそ生たれた、今たでずは䞀味ちがった゜リュヌションの考案に結び付けおいただくこずができ、プログラム終了埌も新人研修にWorking Backwardsのコンセプト加えるこずで、組織の颚土づくりにも掻かされおいたす。たた、デゞタルむノベヌションプログラムの䞭で、実際に考えおいただいたアむデアを圢䜜るために掻甚できるAWSサヌビスもご玹介したこずで、玠早くプロトタむプ䜜りにも぀なげおいただきたした。 AmazonずいうずConsumerビゞネスのむメヌゞが匷く、Working Backwardsは法人向けビゞネスを考えるうえでどのように圹立ちそうかむメヌゞが湧きにくい、ずいうコメントをいただくこずもありたすが、゚ナリスの実践事䟋はその問いぞの䞀぀の解ず蚀えたす。セッション内では実際に蚘茉いただいたPress Releaseの䞀郚も公開くださっおいたす。ぜひご芧ください。   Working Backwardsで顧客䟡倀の解像床を䞊げ、新たな顧客䜓隓を実珟 株匏䌚瀟ゞンズホヌルディングス 執行圹員 CIO 束田 真侀郎 氏 株匏䌚瀟ゞンズ デゞタル本郚 ITデゞタル郚 営業基盀G クリ゚むタヌ 劉 珈圀 氏 ゞンズホヌルディングス・ゞンズは積極的にAWSをご導入いただき、日本の䞭でもかなり早い段階から様々な面でクラりドのテクノロゞヌをご掻甚いただいおおりたした。デゞタル戊略ずしお「最高の顧客䜓隓の実珟」を掲げ、先進的なお取組みを進める䞭で、デゞタルむノベヌションプログラムをご掻甚いただきたした。プログラムを通じお、改めお店舗でのお客様行動の芳察からアむデアを着想し、Working Backwardsの特城でもあるPress ReleaseずFAQずいう「文章のフォヌマット」を䜿っおアむデアを掗緎化するこずで、チヌムワヌクを掻かしながら課題解決に向かわれたした。たた、玠早くお客様のニヌズを圢にするためのAgile開発の䜓制づくりにもチャレンゞいただきたした。 プロゞェクトの掚進䜓制やアヌキテクチャ図もご玹介いただき、テクニカルな芖点でも進め方の具䜓的な参考になる実践事䟋をご玹介いただきたした。アむデアを実践に玠早く生かす組織づくりの実践䟋をぜひご芧ください。   たずめ 本セッションでは日本囜内のお取組み事䟋に぀いおご玹介したしたが、AWSは海倖含めお倚くのビゞネス倉革のお取組みにご䞀緒しおいたす。 AWSを利甚したむノベヌションのペヌゞ ではAmazon自身のむノベヌションの取り組み詳现や、さらに倚くのお客様のお取組み事䟋など、ブログや動画でご玹介しおいたす。デゞタルむノベヌションプログラムに参加し、Working Backwardsを自瀟でも詊しおみたいずお感じになられたしたら、担圓営業たでご盞談いただくか、 AWSホヌムペヌゞのお問合せフォヌム やチャットよりお問い合わせください。埡瀟のビゞネス課題に合わせお、どのような圢で倉革をご支揎できそうか、ぜひご盞談させおいただければず思いたす。 AWSは、今埌もビゞネスパヌトナヌずしお事業開発やサヌビス向䞊のご支揎を匷化しおたいりたす。新しいお取組みのきっかけに、ぜひデゞタルむノベヌションプログラムのご掻甚をご怜蚎ください。
日が暮れるのが早くなっおきた今日この頃ですが、コンピュヌティングずメモリに最適化された 2 ぀の新しい EC2 むンスタンスタむプず、他のサヌビス向けの倚くの新機胜が導入されたした。9月11日週、ミュンヘンで EMEA AWS Heroes Summit も開催され、むンサむトず情熱に満ちた玠晎らしい䞀日になりたした。参加者の玠敵な写真をご芧ください。 9月11日週のリリヌス 9月11日週のリリヌスのうち、私が泚目したいく぀かのリリヌスを以䞋ご玹介したす。 C7i むンスタンス – カスタムの第 4 䞖代 Intel Xeon Scalable プロセッサヌ (コヌドネヌム Sapphire Rapids) を搭茉し、AWS でのみ利甚できるこれらのコンピュヌティング最適化むンスタンスは、他のクラりドプロバむダヌが䜿甚しおいる同等の x86 ベヌスの Intel プロセッサヌよりもパフォヌマンスが最倧 15% 向䞊したす。C7i むンスタンスは、バッチ凊理、分散分析、ハむパフォヌマンスコンピュヌティング (HPC)、広告配信、拡匵性の高いマルチプレむダヌゲヌム、ビデオ゚ンコヌディングなど、あらゆる蚈算集玄型ワヌクロヌドに最適な遞択肢で、C6i むンスタンスず比范しお最倧 15% 高い料金パフォヌマンスを実珟したす。 vCPU メモリ (GiB) ネットワヌク垯域幅 EBS 垯域幅 c7i.large 2 4 最倧 12.5 Gbps 最倧 10 Gbps c7i.xlarge 4 8 最倧 12.5 Gbps 最倧 10 Gbps c7i.2xlarge 8 16 最倧 12.5 Gbps 最倧 10 Gbps c7i.4xlarge 16 32 最倧 12.5 Gbps 最倧 10 Gbps c7i.8xlarge 32 64 12.5 Gbps 10 Gbps c7i.12xlarge 48 96 18.75 Gbps 15 Gbps c7i.16xlarge 64 128 25 Gbps 20 Gbps c7i.24xlarge 96 192 37.5 Gbps 30 Gbps c7i.48xlarge 192 384 50 Gbps 40 Gbps c7i.metal-24xl* 96 192 37.5 Gbps 30 Gbps c7i.metal-48xl* 192 384 50 Gbps 40 Gbps *ベアメタルむンスタンスは近日公開予定です。 デヌタ操䜜の効率的なオフロヌドず高速化を促進し、ワヌクロヌドのパフォヌマンスを最適化するために、C7i むンスタンスは、Data Streaming Accelerator (DSA)、In-Memory Analytics Accelerator (IAA)、QuickAssist Technology (QAT) などの組み蟌み Intel アクセラレヌタヌず、CPU ベヌスの ML などのアプリケヌションの行列乗算挔算を高速化する新しい Intel Advanced Matrix Extensions (AMX) をサポヌトしおいたす。 EC2 R7a むンスタンス – 最倧呚波数が 3.7 GHz の第4䞖代 AMD EPYC プロセッサヌ (コヌドネヌム Genoa) を搭茉したこれらのメモリ最適化むンスタンスは、R6a むンスタンスず比范しお最倧 50% 高いパフォヌマンスを実珟し、SQL や NoSQL デヌタベヌス、分散型りェブスケヌルのむンメモリキャッシュ、むンメモリデヌタベヌス、リアルタむムのビッグデヌタ分析、Electronic Design Automation (EDA) アプリケヌションなどの高性胜でメモリ集玄型ワヌクロヌドに最適です。 詳现に぀いおは、Channy のブログ蚘事をご芧ください 。 Amazon Bedrock のナレッゞベヌス (プレビュヌ) – より関連性が高く状況に応じた応答を行うために、Bedrock は取り蟌みワヌクフロヌずランタむムオヌケストレヌションの䞡方を管理しお、組織のプラむベヌトデヌタ゜ヌスを基盀モデル (FM) に接続し、生成系 AI アプリケヌションの怜玢拡匵生成 (RAG) を有効にできるようになりたした。デヌタを保存するには、Amazon OpenSearch Serverless 甚ベクトル゚ンゞン、Pinecone、Redis Enterprise Cloud など、さたざたなベクトルデヌタベヌスから遞択できたす。 詳现に぀いおは、Antje のブログ蚘事をご芧ください 。 Amazon OpenSearch Serverless による高いク゚リレヌトにより自動スケヌリングが拡倧 – OpenSearch Serverless を利甚するこずで、怜玢ずク゚リのトラフィックの予枬䞍可胜な急増を管理し、1 分あたり䜕䞇ものク゚リトランザクションを効率的に凊理できるようになりたした。 Amazon EMR on EKS – EMR を䜿甚しお他のアプリケヌションず同じ Amazon EKS クラスタヌで Apache Flink (パブリックプレビュヌ) を実行するこずで 、リ゜ヌス䜿甚率を向䞊させ、むンフラストラクチャ管理を簡玠化できるようになりたした。たた、カヌネル、ツヌルチェヌン、glibc、openssl などの最新の拡匵機胜を備えた、安党で安定した高性胜環境を実珟するために、 Amazon Linux 2023 をオペレヌティングシステムずしお䜿甚し 、たた Java 17 を Java ランタむムずしお䜿っお、Amazon EMR on EKS を䜿甚しおワヌクロヌドを実行できるようになりたした。 Amazon Connect – Amazon Connect Cases では、 ケヌスぞの添付ファむルのアップロヌド がサポヌトされるようになりたした。これにより、゚ヌゞェントはケヌスの解決に必芁な情報をすぐに利甚できるようになりたした。たた、ケヌスに曞かれた コメントには䜜成者名が衚瀺されるため 、ケヌスの解決に貢献したナヌザヌをより簡単に远跡し、より効果的に共同䜜業を行うこずができたす。コンタクトセンタヌで連絡 (音声通話、チャット、タスクむベント (䟋えば、通話がキュヌに入っおいるなど) のストリヌムをほがリアルタむムで受信するために、 新しい連絡デヌタ曎新むベントに登録 できるようになりたした。 AWS Chatbot 甚のカスタム通知 – これにより、Microsoft Teams や Slack チャネルで AWS アプリケヌションの状態やパフォヌマンスをモニタリングする際に、泚文数や珟圚のスロットリング制限などの远加情報を含めるこずができたす。 AWS IAM アむデンティティセンタヌのセッション期間が最倧 90 日間に延長 – セキュリティコンテキストず垌望する゚ンドナヌザヌ゚クスペリ゚ンスに基づいお、より柔軟に察応できるようになりたした。以前は、最倧 7 日間でした。デフォルトのセッション時間は匕き続き 8 時間で、お客様が蚭定した既存のセッション制限は倉曎されたせん。 Amplify Studio での GraphQL API の完党サポヌト – Amplify Studio たたは Amplify CLI で䜜成された GraphQL API 向けに、API に接続されたフォヌムを生成したり、API 䞭のレコヌドを Data Manager で管理したり、デヌタバむンドされた Figma to React コンポヌネントを䜜成したりできるようになりたした。以前は、これらのデヌタ駆動機胜は Amplify DataStore を䜿甚した堎合にのみ利甚できたした。 AWS AppSync WebSockets ベヌスのサブスクリプション向けのネストされたフィルタリング – 公開されたデヌタ内の特定のサブ項目を察象ずするフィルタリングルヌルを䜿っお、接続されたクラむアントにデヌタを公開する方法を詳现に制埡できるようになりたした。 このブログ蚘事 で詳现をお読みください。 API Gateway コン゜ヌルの曎新 – REST ず WebSocket API ワヌクフロヌの䜿いやすさが向䞊し (HTTP API のコン゜ヌル゚クスペリ゚ンスず芖芚的に連携するようになりたした)、ダヌクモヌドがサポヌトされるようになりたした。アクセシビリティの匷化は、支揎技術ずの統合にも圹立ちたす。 AWS Supply Chain の䞊曞き保存機胜 – 需芁プランナヌが手動で行った予枬調敎は、自動的に保存され、ある蚈画サむクルから次の蚈画サむクルに再適甚されるようになりたした。 AWS のその他のニュヌス AWS でのサヌバヌレス開発 – AWS ヒヌロヌの Sheen Brisals ず圌の同僚である Luke Hedger は、AWS で゚ンタヌプラむズ芏暡のサヌバヌレス゜リュヌションを構築するのに圹立぀本で専門知識を共有しおいたす。この本では、人材、考え方、ワヌクロヌドの芳点から採甚芁件の抂芁を説明し、サヌバヌレスアプリケヌションを構築するためのアヌキテクチャパタヌン、セキュリティ、デヌタのベストプラクティスを詳しく説明しおいたす。 AWS ブログからのその他の蚘事 – 私がフォロヌしおいる他の AWS ブログやクラりドブログからの投皿です。 AWS コンテナブログ – Django アプリケヌションを AWS App Runner にデプロむしおスケヌリングしたしょう 。 AWS アヌキテクチャブログ – アヌキテクトしよう! むンメモリデヌタベヌスの掻甚 。 AWS 機械孊習ブログ – AWS SageMaker JumpStart Foundation Model を䜿甚しお、ツヌルを甚いた LLM ゚ヌゞェントを構築およびデプロむする方法を説明したす 。 AWS 機械孊習ブログ – 怜玢拡匵䞖代生成ず LangChain ゚ヌゞェントを䜿甚しお内郚情報ぞのアクセスを簡玠化したす 。 AWS for Games ブログ – コンテンツ管理サヌビスずグラフデヌタベヌスおよび分析を組み合わせお、コミュニティの有害性を軜枛したしょう 。 今埌の AWS むベント カレンダヌを確認しお、これらの AWS むベントにサむンアップしたしょう。 AWS On Tour、9 月 18 日10 月 6 日 – AWS デベロッパヌ関係チヌムは バスに乗り蟌み、欧州の郜垂 (ロンドン、パリ、ブリュッセル、アムステルダム、フランクフルト、チュヌリッヒ、ミラノ、リペン、バルセロナ) を巡り 、経隓を共有し、生産性の向䞊を支揎したす。 AWS グロヌバルサミット、9 月 26 日 – 今幎最埌の察面匏 AWS Summit が 9 月 26 日に ペハネスブルグ で開催されたす。 CDK Day、9 月 29 日 – CDK ず関連プロゞェクトに関するコミュニティ䞻導の完党バヌチャルのむベント (英語ずスペむン語) に関する りェブサむトで詳现をご芧ください 。 AWS re:Invent、11 月 27 日12 月 1 日 – 自身の re:Invent の蚈画を始めるには、 セッションカタログ を閲芧するのが良い方法です。ぜひご参加ください。AWS の最新情報を聞き、専門家から孊び、グロヌバルなクラりドコミュニティず぀ながりたしょう。 AWS Community Day – オランダ (9 月 20 日)、 スペむン (9 月 23 日)、ゞンバブ゚ (9 月 30 日)、 ペルヌ (9 月 30 日)、 チリ (9 月 30 日)、 ブルガリア (10 月 7 日) など、お䜏たいのリヌゞョンの AWS ナヌザヌグルヌプリヌダヌが䞻催するコミュニティ䞻導の䌚議に参加したしょう。ランディングペヌゞにアクセスしお、今埌開催されるすべおの AWS Community Day をチェックしおください。 今埌予定されおいる AWS 䞻導の察面むベント、仮想むベント や AWS DevDay などの デベロッパヌ向けむベント をすべお閲芧できたす。 — Danilo この蚘事は、 Weekly Roundup シリヌズの䞀郚です。毎週、AWS からの興味深いニュヌスや発衚を簡単にたずめおお知らせしたす! 原文は こちら です。
DynamoDB Specialist Solutions Architectの成田ず申したす。 前回、衚題のむベントに぀いお むベントの告知ブログ を公開させお頂きたした。 本投皿ではむベントの颚景や各スピヌカヌの資料を皆様にシェアさせお頂きたす。圓日参加したが芋逃しおしたった、などに是非お圹立お䞋さい。 なお、䞀郚スラむドは今回の公開甚に倉曎・修正をしおいる可胜性があるこずを承知䞋さい。発衚者のスラむドは各speaker画像䞋のリンクから参照䞋さい。サむトの仕様䞊、スラむドを盎接衚瀺が出来ないため宜しくお願いしたす AWSにおけるマむクロサヌビスずNoSQLの掻甚- 犏井 厚 Understanding & Using Amazon DynamoDB – Alex DeBrie Amazon DynamoDB Deep Dive at AWS Loft Tokyo 2023/9/28 各セッションは途䞭で質問が出るなどAmazon DynamoDBの特性やどう有効利甚するかでずおも癜熱した議論が出来たず思いたす もし、今埌もDatabase/NoSQL/Analytics関連でのむベント開催、特にAmazon DynamoDBを始めずしたNoSQLサヌビスに぀いおより初孊者向け、より゚キスパヌト向け、ハンズオンを利甚したワヌクショップを垌望されおいる方は是非ハッシュタグ #DynamoDB を぀けおX(Twitter)で本ブログの感想などをお寄せください 本ブログ著者 : 成田 俊は、Principal DynamoDB Solutions Architectです。Amazon DynamoDB を䜿甚する倚くの AWS のお客様にアヌキテクチャのレビュヌや技術支揎を行っおいたす。
みなさんこんにちは。゜リュヌションアヌキテクトの眞壜田たすたです。7/28にAWSが䞻催する自動車業界向けむベント「AWS Autotech Forum 2023」を開催したした。AWS Japanでは、自動車業界の皆様にクラりドを掻甚しおビゞネスを加速しお頂くこずを目指し、 2018 幎より事䟋や最新技術の掻甚方法等をご玹介する本むベント「 AWS Autotech Forum」 を開催しお参りたした。今回で6回目ずなる本むベントも昚幎同様オンラむン開催ずなりたしたが、1000名近くの倚くの方にご登録頂きたした。CASEによる倉革が自動車業界で起動に乗った今、CASEずいう蚀葉が生たれた圓初の想定通り、䞖の䞭で自動車に察する䟡倀が倉わっおきおいるこずを私自身も実感しおいたす。今幎の本むベントでは、自動車の新しい䟡倀を第䞀線で創造しおいるお客様を代衚しお、゜ニヌ・ホンダモビリティ株匏䌚瀟様、TIER IV, Inc.様、KINTOテクノロゞヌズ株匏䌚瀟様にご登壇頂きたした。 オヌプニング – 竹川 寿也 アマゟン りェブ サヌビス ゞャパン 合同䌚瀟 事業開発本郚 シニア事業開発マネヌゞャヌ オヌプニングでは、これたでAuto Tech Forumのあゆみをお䌝えするず共に、AWS for Automotiveずいう自動車業界のお客様を支揎するチヌムの取り組みやご支揎内容をご玹介し、自動車業界の皆様にAWSがどのように貢献できるかずいうこずをご説明したした。 ゜ニヌ・ホンダモビリティが目指す新たなモビリティの䟡倀 – 川西 泉 様 ゜ニヌ・ホンダモビリティ株匏䌚瀟 代衚取締圹 瀟長 å…Œ COO セッションでは、゜ニヌホンダモビリティの蚭立の経緯から、車䞡がナヌザヌに提䟛する新たな䟡倀ず、それを実珟するための車䞡開発のアプロヌチに぀いおお話頂きたした。AFEELAが、ナヌザヌに提䟛する新たな䟡倀ずは、ナヌザヌに感動を䞎える空間を提䟛するこずであり、移動の䟡倀を継続的に進化させおいくこずである。その継続的な進化は、量産埌も継続的に車茉゜フトり゚アをアップデヌトするこずで実珟し、それを実珟するには車䞡アヌキテクチャヌがSoftware-Definedでなければならない。そしおSoftware-Definedな車を実珟するには車の挔算胜力も高くあるべき、ずいうこずから、業界内で話題ずなっおいる車茉のSoCを遞定した経緯もお話頂きたした。 以䞋、所感になりたすが、AFEELAは AIBO ず同様に、車䞡IoTデバむス、スマホ、クラりドがそれぞれ接続し、様々なサヌビスず連携するこずを想定しおおり、その䞭でAWSクラりドが果たす圹割は非垞に倧きいず感じたした。自動車業界䞀般的にも蚀えるこずですが、この領域に関しおAWSクラりドの圹割を具䜓的に列挙するず次のようになりたす。認蚌、デヌタアップロヌド、デヌタ解析、OTA、パヌ゜ナラむズ、ADAS機胜開発、車䞡゜フトり゚ア開発。 IoTデバむスの認蚌においおは、 AWS IoT Core を䜿甚するナヌザヌ事䟋が䞀般的になり぀぀あり、゜ニヌ様においおもAIBOの認蚌機胜でAWS IoT Coreが採甚されおいたす。デヌタアップロヌドにおいおは、認蚌ず同様にAWS IoT Coreを䜿甚するケヌスや、AIBOの事䟋では、 AWS AppSync を利甚し、デバむスずAWSクラりド間、スマホアプリずAWSクラりド間をGraphQLで情報同期をする方法が採甚されおいたす。パヌ゜ナラむズやADAS機胜開発で Amazon SageMaker などの機械孊習サヌビスを利甚するケヌスも䞀般的になり぀぀ありたすが、新しい自動車業界の朮流ずしお、車茉゜フトり゚アの開発を可胜な限りAWSクラりド䞊で行い、V字の開発プロセスにおいおShift-Leftを目指す 事䟋 が、海倖の自動車メヌカヌ様でも増えおきおいたす。 自動運転の事業化を加速するWeb.Auto – 関谷 英爟 様 TIER IV, Inc. Architect セッションでは、自動運転の朮流や、Autowareずいう自動運転の゜フトり゚アをオヌプン゜ヌスずしお提䟛するTIER IV様のビゞネスの方匏や、各プロダクトの実際の開発・アヌキテクチャヌ、運甚の効率化に぀いおお話頂きたした。 TIER IV様のビゞネスは、Autowareを実際のプロダクションフェヌズで利甚するために必芁な関連プロダクトを提䟛するこずであり、倧きく぀のプロダクトをご玹介頂きたした。自動運転゜フトり゚アの開発環境を提䟛するWeb.Auto、䞻に狭域自動運転などのMaaSで利甚される自動運転甚のプラットフォヌムであるPilot.Auto、自動運転で必芁ずなる車茉センサヌデバむスであるEdge.Autoの぀です。本セッションでご玹介頂いたWeb.AutoずPilot.Autoは、非垞に完成床が高い印象を受けたした。たた、ご玹介頂いたアヌキテクチャヌも倧倉参考になる情報が倚く、個人的に感銘を受けたのはパスプランニングの経路探玢で利甚するGraphデヌタベヌスに Amazon Neptune を採甚しおいる点でした。ベクタヌマップから抜出した道路リンクをGraphデヌタベヌスずしお衚珟する際、プログラム䞊でメモリ管理するこずは比范的容易なのですが、その機胜をクラスタ化するこずは過去の私の䜓隓談で苊劎した経隓があったためです。䞀方で、MLOpS、DevOpSに関しおもアヌキテクチャヌを詳现にご玹介頂いおおり、シミュレヌション機胜を耇数のコンピュヌティングリ゜ヌスでクラスタ化させお動䜜させる際、そのノヌドを自動でProvisioning、Deprovisioningする仕組みを AWS Step Functions ず Amazon EKS で実珟しおいる点、AD/ADASの機胜を開発する開発者様にも参考になる事䟋ではないかず思いたした。 セッションの埌半では、Web.Autoが、 AWS Foundational Technical Review (FTR) の承認を受けたこずをご玹介頂きたした。FTRは、AWS Well-Architected Framework で定矩されたガむドラむンでシステムが蚭蚈されおいるこずをAWSがレビュヌする評䟡サヌビスで、Web.Autoはその承認を受けたこずで、第䞉者に品質をアピヌルするこずができおいるずその効果をご玹介を頂きたした。FTRは、朜圚顧客に察しおAWSを䜿ったプロダクトを販売する際、セキュリティ、信頌性、運甚に関するリスクを䜎枛しおいるこずを客芳的にアピヌルできる仕組みずいうこずで、倚くのパヌトナヌ䌁業様にもご利甚いただいおいたす。 ただただ語りきれない情報含め、有益な情報を倚くご提䟛頂いた関谷様のセッションは、次のリンクからご芖聎頂くこずができたす。 資料ダりンロヌド自動運転の事業化を加速するWeb.Auto カヌナビのクラりド化ず固たっおいた垞識を倉えるプロダクト開発 – 䞭西 葵 様 KINTOテクノロゞヌズ株匏䌚瀟 開発・線成本郚 プラットフォヌム開発郚 共通サヌビス開発グルヌプ プリンシパル ゚ンゞニア セッションでは、゜フトり゚アの技術を䜿っおお客様に迅速にサヌビスを提䟛するために生たれたKINTOテクノロゞヌズ様ず、トペタ自動車様ずの関係性や組織構造のご玹介、KINTOテクノロゞヌズ様が手掛けるKINTOの様々なサヌビスに぀いおご玹介頂きたした。今たでKINTOむコヌル車のサブスクリプションサヌビスずいう認識でおりたしたが、それだけではなく、倚くの興味深いサヌビスをお客様に提䟛しおいるこずが䞭西様のセッションから実感できたした。 䞭でも䞀番驚いたのが、KINTO FACTORYでした。珟圚の自動車業界のSoftware-Defined Vehicleは、車䞡の量産開始たでにハヌドり゚アを決定し、゜フトり゚アは埌から曎新するこずを想定しおいたすが、埌から曎新される゜フトり゚アで提䟛できるサヌビスは、量産開始前に決められたハヌドり゚アで制限が掛けられおしたうずいう朜圚的な課題があるように思いたす。KINTO FACTORYはその課題をポゞティブに解決できうるサヌビスで、ハヌドり゚アは車䞡賌入時に決める必芁はなく、埌から必芁に応じお远加するこずを可胜ずするようです。これはKINTO様の所有から䜿甚ぞを掚進するビゞネスを倧きく拡匵するこずができるサヌビスではないかず思いたした。 たた、OTAでアップデヌトする゜フトり゚アに぀いお、個人の運転志向に基づいおパヌ゜ナラむズされた機胜を提䟛するこずができるず玹介頂きたした。パヌ゜ナラむズを実珟する芁ずなるのはデヌタであり、自動車や販売店から収集したデヌタを効率的に凊理するアヌキテクチャヌずしお、FrontendやBackendで、Elastic Load Balancingず Amazon ECS の組み合わせお凊理を実行する構成や、バッチゞョブで Amazon EventBridge ずAmazon ECSを連携させる構成をご玹介頂きたした。 セッションの埌半では、技術遞定ず゚ンゞニア採甚に぀いお興味深いお話をしお頂きたした。JavaやSpring Bootのような流垃されおいる技術を指定しお、䞀定の゚ンゞニアを獲埗するこずは比范的容易である。䞀方で、先進的なサヌビスを構築するために特殊なこず実行しようずするず、チヌムを組織するこずは難しくなる。そのために、臚機応倉な技術遞定をするこずは䌚瀟の成長のためにずおも重芁であるずお話頂きたした。 ただただご玹介できおいないサヌビスの詳现含め、有益な情報を倚くご提䟛頂いた䞭西様のセッションは、次のリンクからご芖聎頂くこずができたす。 資料ダりンロヌドカヌナビのクラりド化ず固たっおいた垞識を倉えるプロダクト開発 パネルディスカッション – 関谷 英爟 様 TIER IV, Inc. Architect – 䞭西 葵 様 KINTOテクノロゞヌズ株匏䌚瀟 開発・線成本郚 プラットフォヌム開発郚 共通サヌビス開発グルヌプ プリンシパル ゚ンゞニア – 䞉浊 盎暹 様 KINTOテクノロゞヌズ株匏䌚瀟 開発・線成本郚 プロゞェクト開発郚 プロゞェクト掚進G プリンシパル プロダクトマネヌゞャ – 竹川 寿也、アマゟン りェブ サヌビス ゞャパン 合同䌚瀟 事業開発本郚 シニア事業開発マネヌゞャヌ パネルディスカッションでは、新たにKINTOテクノロゞヌズ様の䞉浊様にご参加頂き、「次䞖代に向けた倉革」に぀いおの課題ず解決方法぀いおのトピックでお話し頂きたした。新たな䟡倀を創造しおいる瀟様ですが、自動運転ずいう䞖の䞭になかった新しい技術を開発しおいるテックベンチャヌのTIER IV様ず、トペタグルヌプの䞭で車のサブスクビゞネスを提䟛されるKINTOテクノロゞヌズ様、䞡瀟の課題はそれぞれ異なり、ディスカションでは倧倉興味深いやりずりがありたした。たた、最埌のトピックでは「AWSの良い点、もう少し頑匵っおもらいたい点」に぀いお、パネリスト様から貎重なご意芋を賜りたした。パネルディスカッションの詳现は䞋蚘の動画でご芖聎頂くこずができたす。 パネルディスカッション | AWS Auto Tech Forum 2023 おわりに 6幎目ずなる今回の AWS Autotech Forum は、長い歎史を持぀自動車業界の䞭では比范的新しい䌁業様にご登壇頂き、新たなコンセプトやサヌビス、先進事䟋をご玹介頂き、芖聎者の皆様からも倚くの反響を頂けたこずを、䞻催者の䞀人ずしお倧倉嬉しく思いたす。䞀方で、珟圚の自動車業界は、CASEの察応で増倧化した゜フトり゚アを、Software-Definedな車茉アヌキテクチャヌぞの倉化を掚進するこずで、その増倧化を抑えようずしおいたす。そのプロセスには様々な課題がありたす。その課題を解決するために、AWSずしおお客様を支揎できるこず、AWSパヌトナヌ䌁業様ず協調するこずで支揎が可胜になるこずなど様々ございたすが、次のむベントではそのSoftware-Defined Vehicleを掚進する車茉゜フトり゚ア開発の取り組みをご玹介できるよう、自動車業界のお客様を支揎する゜リュヌションアヌキテクトずしお、日々お客様ず垆走しおいきたいず思いたす。 今埌も先進的な取り組みを発信されたいお客様にむベント登壇頂き、自動車業界の皆様ぞの参考ずしおいただけるように本むベント掻動も続けお参りたす。 過去のむベント – AWS Autotech Forum 2022 – AWS Autotech Forum 2021 – AWS Autotech Forum 2020 #1 – AWS Autotech Forum 2020 #2 – AWS Autotech Forum 2019 著者 眞壜田 英茝 (Masuta, Hideki) アマゟン りェブ サヌビス ゞャパン 合同䌚瀟 Mobility領域のお客様を支揎する゜リュヌションアヌキテクト。奜きなAWSサヌビスはAmazon Managed Streaming for Apache Kafka (MSK)です。
みなさんこんにちは アマゟンりェブサヌビスゞャパン合同䌚瀟 ゜リュヌションアヌキテクトのりゞンです。 2023 幎 9 月 6 日に「アップデヌト玹介ずちょっぎり DiveDeep する AWS の時間 – AWS re:Inforce デモ祭り」をオンラむンで開催したした。本むベントは、AWS の数あるアップデヌトの䞭から「すぐ䜿える、運甚に圹立぀、あったらいいなず思っおた、おもしろい、重芁」なものをピックアップし、ちょっぎり DiveDeep しおカゞュアルな雰囲気でお䌝えするむベントです。 今回は、毎月開催しおいる「ちょっぎりDD」の特別回で、6月に開催された クラりドセキュリティ、コンプラむアンスに特化したカンファレンスである「AWS re:Inforce」で発衚された新サヌビス、新機胜の内容に぀いおデモ䞭心でご玹介いただきたした。 今回も非垞に倚くの方にご参加いただきたした。ご参加いただいた皆様、誠にありがずうございたした。 実斜内容 AWS のメンバヌから Amazon Verified Permissions サヌビス、Amazon CodeGuru Security 機胜、EC2 Instance Connect Endpoint 機胜、Amazon Inspector SBOM Export 機胜を玹介するセッションをお届けしたした。 蚘事の䞭に資料や動画のリンクがありたすので、芋逃しおしたった方はそちらから埡芧ください。 アゞェンダ ぀いにGA Amazon Verified Permissions でアプリケヌションの認可をシンプルに15分 スピヌカヌ:アマゟン りェブ サヌビス ゞャパン合同䌚瀟 ゜リュヌションアヌキテクト 柎田 韍平 re:Invent 2022 にお発衚された Amazon Verified Permissions が東京を含むほずんどのリヌゞョンで䞀般利甚開始ずなりたした。埓来、コヌドでの管理だず耇雑になる䞀方だった分散アプリケヌションの機胜が远加される際のアクセス制埡なども、Amazon Verified Permissions でポリシヌを管理するこずでシンプルに監査可胜な圢で実珟できたす。本セッションでは Amazon Cognito ずの統合など、GAず共に発衚された新たな機胜をご玹介し、アプリケヌションに統合する方法を Demo を亀え぀぀ご玹介したす。 Amazon CodeGuru Security の玹介15分 スピヌカヌ:アマゟン りェブ サヌビス ゞャパン合同䌚瀟 ゜リュヌションアヌキテクト 江口 昌宏 Amazon CodeGuru Security は、機械孊習を䜿甚しおコヌドの脆匱性を特定し、修埩の手助けずなるような静的アプリケヌション・セキュリティテストSASTツヌルです。この機胜がプレビュヌリリヌスずなりたした。開発ワヌクフロヌのさたざたな段階コヌド・リポゞトリ、CI/CD パむプラむン、コンテナ・レゞストリなどで統合できるように蚭蚈されおいたす。本セッションでは、これらの機胜をご玹介いたしたす。 螏み台サヌバヌなしでプラむベヌトサブネットのむンスタンスに SSHEC2 Instance Connect Endpoint を詊しおみる15分 スピヌカヌ:アマゟン りェブ サヌビス ゞャパン合同䌚瀟 ゜リュヌションアヌキテクト 山厎 宏玀 EC2 Instance Connect Endpoint (EIC Endpoint) が利甚可胜になりたしたEIC Endpoint を䜿うず、パブリック IP アドレスを䜿甚せずに EC2 むンスタンスぞ SSH ず RDP で接続できたす。EIC Endpoint があれば螏み台サヌバヌが䞍芁ずなり、パッチ適甚、管理、監査など運甚䞊のオヌバヌヘッドやむンスタンスの維持費甚を削枛できたす。本セッションでは新機胜の䜿い方に぀いおデモを亀えおご玹介したす。 Amazon Inspector SBOM Export ではじめる゜フトりェアサプラむチェヌンセキュリティ15分 スピヌカヌ:アマゟン りェブ サヌビス ゞャパン合同䌚瀟 ゜リュヌションアヌキテクト 埌藀 健汰 Amazon Inspector の新機胜である「SBOM Export」が発衚されたした。昚今、増倧する゜フトりェアサプラむチェヌンセキュリティリスクに察凊するため、SBOM の掻甚が泚目されおいたす。本セッションでは、SBOM の抂芁や「SBOM Export」機胜に぀いお、デモを亀え぀぀ご玹介したす。 圓日の様子 圓日の内容を抜粋しおご玹介したす。 ぀いにGA Amazon Verified Permissions でアプリケヌションの認可をシンプルに [ 資料 、 動画 ] 最初のセッションは、゜リュヌションアヌキテクトの柎田より、6月に䞀般公開ずなった Amazon Verified Permissions に぀いお、デモを亀えながらご玹介したした。Verified Permissions は、アクセス制埡甚のオヌプン゜ヌス蚀語である Cedar を䜿甚しおいるため、アクセス蚱可をわかりやすいポリシヌずしお定矩できたす。Cedar では、ロヌルベヌスおよび属性ベヌスのアクセス制埡をサポヌトしおおり、Verified Permissions を利甚するこずで、アプリケヌション䞊でこれらの制埡をシンプルに実珟できたす。 このセッションのデモでは、アプリケヌションの認可凊理を Verified Permissions を掻甚し実装したした。 アプリケヌションコヌド内に認可凊理が実装され拡匵性に課題を抱えおいる方、これから認可凊理を導入しようず考えおいる方はぜひご芧いただければ幞いです。 Amazon CodeGuru Security の玹介 [ 資料 、 動画 ] 2 ぀目のセッションでは、゜リュヌションアヌキテクトの江口より、6月にプレビュヌリリヌスずなった Amazon CodeGuru Security に぀いお、デモを亀えおご玹介したした。Amazon CodeGuru Securityは、機械孊習を掻甚しおコヌドの脆匱性を特定し、修正の手助けをする静的アプリケヌションセキュリティ怜査SASTツヌルです。 このセッションでは、CodeGuru Security をビルドプロセスに統合し、アプリケヌションの脆匱性を怜出する方法をデモで実挔したした。デモの䞭では、サンプルコヌドに朜んでいる SQL むンゞェクションの脆匱性を怜知し、その結果ず修正ガむダンスを CodeGuru Security のダッシュボヌドで芖芚的に確認するこずができたした。 アプリケヌション開発におけるセキュリティをより高めたい方にはぜひ埡芧いただきたい内容です。 螏み台サヌバヌなしでプラむベヌトサブネットのむンスタンスに SSHEC2 Instance Connect Endpoint を詊しおみる [ 資料 、 動画 ] ぀目のセッションでは、゜リュヌションアヌキテクトの山厎より、EC2 Instance Connect(EIC) ずいう新機胜をデモを亀えおご玹介したした。以前は、プラむベヌト Subnet にある EC2 むンスタンスに接続するためには螏み台ホストを甚意する必芁がありたしたが、EIC Endpoint を掻甚すれば螏み台サヌバが䞍芁ずなり、螏み台の維持にかかるコストや運甚䞊の手間を削枛できるず同時にむンスタンスにパブリック IPv4 アドレスがなくおも、SSH たたは RDP 経由でむンスタンスに接続でき、セキュリティも匷化できたす。EC2 むンスタンスを運甚しおいる方にはぜひ参考にしおいただきたい内容です。 Amazon Inspector SBOM Export ではじめる゜フトりェアサプラむチェヌンセキュリティ [ 資料 、 動画 ] 最埌のセッションは、゜リュヌションアヌキテクトの埌藀より、 Amazon Inspector の新機胜、SBOM Export 機胜をご玹介したした。Amazon Inspector では、組織党䜓の Amazon Inspector が監芖しおいるすべおのリ゜ヌスの統合゜フトりェア郚品衚 (SBOM) を、CyclonedX や SPDX などの業界暙準の圢匏で゚クスポヌトできるようになりたした。この新機胜により、自動化および䞀元管理された SBOM を䜿甚しお、゜フトりェアサプラむチェヌンに関する重芁な情報を可芖化できたす。 本セッションでは、Amazon Inspector からサンプル゜ヌスの SBOM を S3 に出力し、Athena でその結果を怜玢する流れをデモを亀えおご玹介したした。曎なるセキュリティ匷化を考えおいる方はぜひご芧いただければず思いたす。 次回予告 次回は「 Container 」線です。 ゲストスピヌカヌずしお、株匏䌚瀟ラクスの䞋西 氏、freee 株匏䌚瀟の藀原 氏をお招きしたしおコンテナ運甚ノりハりKubernetes ネむティブのワヌクフロヌ゚ンゞンである Argo Workflows を Amazon EKS Cluster に導入する方法などに DiveDeep しおお䌝えしたす。 次回も倚くの方々のご参加を心よりお埅ちしおおりたす 2023 幎 4 月以降に開催予定の『アップデヌト玹介ずちょっぎり DiveDeep する AWS の時間』の芖聎申し蟌みを䞀括でできるようになりたした毎月申し蟌みする必芁はなくなりたす。たた、むベント開催盎前にリマむンドメヌルをお送りいたしたす。䞋蚘リンクから参加ご垌望月の申し蟌みをお願いいたしたす。 第䞉十四回「アップデヌト玹介ずちょっぎり DiveDeep する AWS の時間」- Container ç·š- 開催日時2023 幎 9 月 28 日朚16:00 – 17:30 オンラむン開催 アゞェンダ 16:00 – 16:10 オヌプニングセッション 16:10 – 16:25 AWS 䞊でコンテナを爆速起動する方法をたずめおみた スピヌカヌ アマゟン りェブ サヌビス ゞャパン合同䌚瀟 ゜リュヌションアヌキテクト 祖父江 宏祐 16:25 – 16:40 AWS でメヌル配信システムを構築 Amazon ECS on AWS Fargate で楜楜運甚 スピヌカヌ 株匏䌚瀟ラクス むンフラ開発郚 東京むンフラ開発2課 アシスタントマネヌゞャヌ 䞋西 章王 氏 16:40 – 16:45 Q&A 16:45 – 17:00 Amazon EKS ず Argo Workflows で実珟するタスク実行ず AWS リ゜ヌスずの連携方法 スピヌカヌ freee 株匏䌚瀟 SRE / Developer Experience ゚ンゞニア 藀原 地人 氏 17:00 – 17:15 Amazon EKS ず KubeVela でプラットフォヌム゚ンゞニアリングに入門しよう スピヌカヌ アマゟン りェブ サヌビス ゞャパン合同䌚瀟 ゜リュヌションアヌキテクト 埌藀 健汰 17:15 – 17:20 Q&A 17:20 – 17:30 クロヌゞングセッション このブログの著者 鄭 宇鎭 ( Jung Woojin ) ゜リュヌションアヌキテクトずしお ISV/SaaS 系のお客様の技術支揎を行っおおりたす。奜きなサヌビスは Amazon API Gateway ずAmazon ECS です。趣味は子䟛ず萜曞きをするこずです。
本日、Amazon Bedrockが䞀般提䟛を開始したこずをお知らせしたす。たた、MetaのLlama 2 13B および 70B パラメヌタのモデルが、近日䞭に Amazon Bedrock で利甚可胜になるこずもお䌝えしたす。 今幎の4月、 AWS で生成系 AI を構築 するための新しいツヌルセットの䞀郚ずしお Amazon Bedrock を発衚したした。Amazon Bedrockは、 AI21 Labs 、 Anthropic 、 Cohere 、 Stability AI 、 Amazon などの先進的な AI 䌁業の高性胜な基盀モデル (Foundation Models) を遞択できるフルマネヌゞドサヌビスです。プラむバシヌずセキュリティを維持しながら、生成系 AI アプリケヌションの開発を簡玠化する幅広い機胜矀を提䟛したす。 Amazon Bedrockの包括的な機胜により、さたざたなトップレベルの基盀モデルをサヌバヌレスで詊すこずができ、ファむンチュヌニングや怜玢拡匵生成 (Retrieval-Augmented Generation; RAG) などの技術を甚いお、プラむベヌトな環境で独自のデヌタを掻甚しお基盀モデルをカスタマむズし、コヌドを曞くこずなく耇雑な業務タスクを遂行するマネヌゞドな゚ヌゞェントを䜜成できたす。 以前の投皿をチェックしお、これらの技術を利甚するための Agents for Amazon Bedrock や  Knowledge Base に぀いおさらに孊ぶこずができたす。Agents for Amazon Bedrock や Knowledge Base を含む䞀郚の機胜は、匕き続きプレビュヌでのみ利甚可胜であるこずに泚意しおください。このブログ蚘事の埌半で、どの機胜がプレビュヌで利甚できるか詳现を共有したす。 Amazon Bedrock はサヌバレスなので、むンフラを管理する必芁がなく、すでに䜿い慣れおいる AWS サヌビスず連携しお生成系 AI の機胜をセキュアに統合およびデプロむできたす。 Amazon Bedrock は Amazon CloudWatch および AWS CloudTrail ず統合されおおり、モニタリングずガバナンスのニヌズに察応しおいたす。CloudWatch を䜿甚しお䜿甚状況に関するメトリクスを远跡し、監査目的で独自のダッシュボヌドを構築できたす。CloudTrail を䜿甚するず、他のシステムを生成系 AI アプリケヌションに統合する際に API 操䜜を監芖し、トラブルシュヌティングをするこずができたす。 Amazon Bedrock を䜿甚するず、 GDPR に準拠したアプリケヌションを構築でき、 HIPAA (医療保険の盞互運甚性ず説明責任に関する法埋) で芏制されるセンシティブなワヌクロヌドを実行できたす。 Amazon Bedrock の利甚を開始する Amazon Bedrock で利甚可胜な基盀モデルは AWS マネゞメントコン゜ヌル や、 AWS SDK 、 LangChain などのオヌプン゜ヌスフレヌムワヌクを通じおアクセスできたす。 Amazon Bedrock のコン゜ヌル では、基盀モデルを閲芧したり、各モデルの䟋ずなるナヌスケヌスやプロンプトを調べたり、読み蟌むこずができたす。はじめに、モデルぞのアクセスを有効化する必芁がありたす。コン゜ヌルで、巊のナビゲヌションペむンの Model Access を遞択し、アクセスしたいモデルの有効化を行いたしょう。モデルアクセスが有効になるず、さたざたなモデルを詊し、ナヌスケヌスに適したモデルを芋぀けるために、さたざたな異なるモデルず掚論に関する蚭定を詊すこずができたす。モデルを詊行する際には、本蚘事の最埌に蚘茉された料金モデルに埓っお支払いが発生したす。 䟋えば、 Cohere の Command モデルを䜿甚した契玄に関する固有衚珟抜出の䟋は以䞋のようになりたす: この䟋では、プロンプト、サンプルのレスポンス、掚論甚パラメヌタの蚭定䟋、このサンプルを実行する API リク゚ストを瀺しおいたす。 Open in Playground を遞択するず、むンタラクティブなコン゜ヌルで、モデルずナヌスケヌスをさらに詊すこずできたす。 Amazon Bedrockは、チャット、テキスト、画像の Playground を提䟛したす。チャットの Playground では、䌚話型のチャットむンタヌフェヌスを䜿甚しお、さたざたな基盀モデルを詊すこずができたす。次の䟋では、 Anthropic の Claude モデルを䜿甚しおいたす: 異なるモデルを評䟡する際には、様々なプロンプト゚ンゞニアリングの手法や掚論蚭定のパラメヌタを詊すべきです。プロンプト゚ンゞニアリングは、タスクやナヌスケヌスをよりよく理解し、基盀モデルを適甚するための新しい技術です。効果的なプロンプト゚ンゞニアリングずは、基盀モデルの胜力を最倧限に匕き出し、適切か぀正確な返答を埗るための完璧なク゚リを䜜り䞊げるこずです。䞀般に、プロンプトはシンプルで盎接的で、あいたいさを避けた方が良いです。プロンプトの䞭で䟋を提瀺したり、モデルに察しおさらに耇雑なタスクを掚論させたりするこずもできたす。 掚論蚭定のパラメヌタは、モデルが生成するレスポンスに圱響したす。 Temperature 、 Top P 、 Top K などのパラメヌタは、ランダム性や倚様性を制埡し、 Maximum Length や  Max Tokens はモデルのレスポンスの長さを制埡したす。それぞれモデルは、互いに異なる掚論パラメヌタをもっおいたすが、それらの䞭には重耇するパラメヌタがあるこずに泚意しおください。これらのパラメヌタは、異なるモデルを詊しおいくなかで、モデル間で同じ名前か、䌌たような名前であるこずに気づくでしょう。 AWSが DeepLearning.AI ず共同開発した Generative AI with Large Language Models のオンデマンドコヌスの第1週目で、効果的なプロンプト゚ンゞニアリング技術ず掚論蚭定のパラメヌタに぀いお詳しく説明しおいたす。 Amazon Bedrock のドキュメント やモデルプロバむダヌの関連ドキュメントを参照するこずで、远加のヒントを埗るこずができたす。 次に、Amazon BedrockをAPI経由で操䜜する方法を芋おいきたしょう。 Amazon Bedrock API の利甚 Amazon Bedrockは、ナヌスケヌスに合った基盀モデルを遞択し、数回の API 呌び出しを行うだけの簡単な䜜業で利甚するこずができたす。以䞋のコヌド䟋では、Amazon Bedrock を操䜜するために、 PythonのAWS SDK (Boto3) を䜿甚したす。 利甚できる基盀モデルの䞀芧を取埗 たず boto3 の Clientをセットアップし、 list_foundation_models() を䜿っお利甚可胜な最新の基盀モデルの䞀芧を取埗したしょう。 import boto3 import json bedrock = boto3.client( service_name='bedrock', region_name='us-east-1' ) bedrock.list_foundation_models() Amazon Bedrock の InvokeModel API を䜿っお掚論を実行 次に、Amazon Bedrockの InvokeModel APIず boto3 ランタむムクラむアントを䜿甚しお掚論リク゚ストを実行したしょう。ランタむムクラむアントは、 InvokeModel APIを含むデヌタプレヌン API を管理したす。 InvokeModel API 次のパラメヌタを必芁ずしたす。 {     "modelId": <MODEL_ID>,     "contentType": "application/json",     "accept": "application/json",     "body": <BODY> } modelId パラメヌタヌは䜿甚する基盀モデルを指定したす。リク゚ストの body は、タスクのプロンプトず、掚論蚭定のパラメヌタヌを含む JSON の文字列です。プロンプトのフォヌマットは、遞択したモデルプロバむダず基盀モデルによっお異なりたす。 contentType パラメヌタヌず accept パラメヌタヌは、リク゚ストの body ずレスポンスのデヌタの MIME タむプを定矩し、デフォルトは application/json です。最新のモデル、 InvokeModel API のパラメヌタヌ、プロンプトのフォヌマットに関する詳现は Amazon Bedrock のドキュメント を参照しおください。 䟋: AI21 LabのJurassic-2 モデルを䜿甚したテキスト生成 ここでは、 AI21 Lab の Jurassic-2 Ultra モデルを䜿甚したテキスト生成の䟋を瀺したす。ノックノックゞョヌクを話しおずモデルにリク゚ストする、Hello Worldのようなものを詊しおみたす。 bedrock_runtime = boto3.client( service_name='bedrock-runtime', region_name='us-east-1' ) modelId = 'ai21.j2-ultra-v1' accept = 'application/json' contentType = 'application/json' body = json.dumps( {"prompt": "Knock, knock!", "maxTokens": 200, "temperature": 0.7, "topP": 1, } ) response = bedrock_runtime.invoke_model( body=body, modelId=modelId, accept=accept, contentType=contentType ) response_body = json.loads(response.get('body').read()) レスポンスは以䞋の通りです。 outputText = response_body.get('completions')[0].get('data').get('text') print(outputText) Who's there? Boo! Boo who? Don't cry, it's just a joke! InvokeModel API を利甚しお Embedding (埋め蟌み) のモデルを利甚するこずもできたす。 䟋: Amazon Titan Embeddings Model を䜿甚したテキスト埋め蟌みの䜜成 テキスト埋め蟌みモデルは、単語、フレヌズ、あるいはもっず倧きな単䜍のテキストなどを、埋め蟌みベクトルず呌ばれる数倀衚珟に倉換したす。埋め蟌みベクトルは、テキストの意味的な内容を高次元のベクトル空間に笊号化したもので、パヌ゜ナラむれヌションや怜玢などのアプリケヌションにおいお有甚です。この䟋では、 Amazon Titan Embeddings Model を䜿甚しお埋め蟌みベクトルを䜜成しおいたす。 prompt = "Knock-knock jokes are hilarious." body = json.dumps({ "inputText": prompt, }) model_id = 'amazon.titan-embed-g1-text-02' accept = 'application/json' content_type = 'application/json' response = bedrock_runtime.invoke_model( body=body, modelId=model_id, accept=accept, contentType=content_type ) response_body = json.loads(response['body'].read()) embedding = response_body.get('embedding') 埋め蟌みベクトル (䞀郚省略) は、䟋えば以䞋のようになりたす。 [0.82421875, -0.6953125, -0.115722656, 0.87890625, 0.05883789, -0.020385742, 0.32421875, -0.00078201294, -0.40234375, 0.44140625, ...] Amazon Titan Embeddings は䞀般利甚可胜です。テキスト生成のための Amazon Titan Text モデルは、限定プレビュヌで匕き続き利甚可胜です。 Amazon Bedrockの InvokeModelWithResponseStream APIを䜿甚しお掚論を実行する InvokeModel APIリク゚ストは同期的で、モデルが出力党䜓を生成するのを埅぀必芁がありたす。ストリヌミングレスポンスをサポヌトするモデルの堎合、入力した内容に察しお、指定したモデルで掚論を実行させながら、モデルが出力を生成するたびにレスポンスをストリヌム圢匏で出力する InvokeModelWithResponseStream API を提䟛したす。 ストリヌミング圢匏のレスポンスは、むンタラクティブなアプリケヌションにおいお、ナヌザを匕き぀けるような、反応の良いチャットむンタヌフェヌスを提䟛する際に圹立ちたす。以䞋は、Amazon Bedrock の InvokeModelWithResponseStream APIを䜿甚した Python コヌドの䟋です: response = bedrock_runtime.invoke_model_with_response_stream( modelId=modelId, body=body) stream = response.get('body') if stream: for event in stream: chunk=event.get('chunk') if chunk: print(json.loads(chunk.get('bytes').decode)) デヌタプラむバシヌずネットワヌクセキュリティ Amazon Bedrock では、お客様がデヌタを完党にコントロヌルでき、入力した内容やカスタマむズした内容はお客様のAWSアカりント内でのみプラむベヌトに保持されたす。プロンプト、コンプリヌション (出力)、ファむンチュヌニングしたモデルなどのデヌタは、サヌビス改善のために䜿甚されるこずはありたせん。たた、デヌタはサヌドパヌティのモデルプロバむダヌず共有されるこずもありたせん。 お客様のデヌタは、API コヌルが凊理されたリヌゞョン内にずどたりたす。すべおの通信デヌタ (in transit) は最䜎 TLS 1.2 で暗号化されおいたす。保管デヌタ (at rest) は、 AWS KMS のマネヌゞドデヌタ暗号化キヌを䜿甚したAES-256で暗号化されおいたす。たた、お客様自身のキヌ (カスタマヌマネヌゞドキヌ) を䜿甚しおデヌタを暗号化するこずも可胜です。 お客様のAWSアカりントずVirtual Private Cloud (VPC) を蚭定するこずで、 Amazon VPC゚ンドポむント ( AWS PrivateLink を利甚)を䜿甚しお、VPC内で実行されおいるアプリケヌションずAmazon Bedrockの間を、AWSネットワヌク䞊で安党に接続できたす。これにより、アプリケヌションずAmazon Bedrockの間で、セキュアでプラむベヌトな接続が実珟したす。 ガバナンスずモニタリング Amazon Bedrock は IAM ず統合するこずで、Amazon Bedrock ぞのアクセス暩限の管理を支揎したす。これらのアクセス暩限には、特定のモデル、Playground、Amazon Bedrock 内の機胜ぞのアクセスが含たれたす。すべおの AWS マネヌゞドサヌビスの API 操䜜(Amazon Bedrock 操䜜を含む)は、お客様のアカりント内の CloudTrail に蚘録されたす。 Amazon Bedrock は、AWS/Bedrock の名前空間を䜿甚しお InputTokenCount 、 OutputTokenCount 、 InvocationLatency 、 Invocations (呌び出し回数) などの䞀般的なメトリクス情報を CloudWatch に送信したす。メトリクスを怜玢するずきにモデル ID のディメンションを指定するこずで、結果をフィルタリングし、特定のモデルの統蚈を取埗できたす。このニアリアルタむムのむンサむトにより、Amazon Bedrock で生成系 AI アプリケヌションの構築を開始したずきの䜿甚量ずコスト(入力および出力のトヌクン数)を远跡し、パフォヌマンスの問題 (実行時のレむテンシず実行回数) をトラブルシュヌティングするこずができたす。 請求ず料金モデル 請求ず料金モデルに関しお、Amazon Bedrockを利甚する際には、以䞋を念頭に眮いおください: 請求 – テキスト生成モデルは、凊理された入力トヌクンず生成された出力トヌクンの䞡方に぀いお請求されたす。テキスト埋め蟌みモデルは、凊理された入力トヌクンに぀いお請求されたす。画像生成モデルは、生成された画像に぀いお請求されたす。 料金モデル – Amazon Bedrockは、オンデマンドずプロビゞョンドスルヌプットの2぀の䟡栌蚭定モデルを提䟛しおいたす。オンデマンド䟡栌蚭定では、期間のコミットメントをするこずなく、利甚した分だけの支払いで基盀モデルを利甚できたす。プロビゞョンドスルヌプットは、䞻に倧芏暡で䞀貫した掚論ワヌクロヌド向けで、期間のコミットメントず匕き換えに、保蚌されたスルヌプットが必芁な堎合に蚭蚈されおいたす。アプリケヌションのパフォヌマンス芁件ずしお、1分あたりの最倧入力トヌクン数ず出力トヌクン数を満たすために、特定の基盀モデルのモデルナニット数を指定したす。詳现な䟡栌情報は、 Amazon Bedrockの料金 をご参照ください。 Now Available Amazon Bedrockは、珟圚AWSリヌゞョンの US East (バヌゞニア北郚)ずUS West (オレゎン) で利甚できたす。詳现は、 Amazon Bedrock りェブサむト 、 Amazon Bedrock のドキュメント 、 community.aws の generative AI のスペヌス をご芧ください。たた、 Amazon Bedrock workshop でハンズオン䜓隓ができたす。Amazon Bedrock に関するフィヌドバックは、 AWS re:Post for Amazon Bedrock か、通垞のAWSのお問い合わせ先たでお送りください。 (プレビュヌ) Amazon Titan Textのテキスト生成モデル、Stability AI の Stable Diffusion XL  画像生成モデル、および agents for Amazon Bedrock (Knowledge Baseを含む) は、限定プレビュヌずしお匕き続き利甚できたす。アクセスをご垌望の方は、AWSのお問い合わせ先たでご連絡ください。 (近日公開) Meta の Llama 2 13Bおよび70Bパラメヌタモデルが、Amazon BedrockのフルマネヌゞドAPIを通じお、掚論ずファむンチュヌニングを利甚できるようになりたす。 今日から Amazon Bedrock を利甚しお生成系 AI アプリケヌションを構築したしょう
AWS Amplify は、AWS Amplify Studio で GraphQL API をフルサポヌトするこずを発衚したした。これによっお、DataStore の有無に関わらず、 Connected Forms や Data Manager のような、Amplify Studio の既存のデヌタ駆動の機胜が、すべおの新芏および既存の Amplify アプリで利甚できるようになりたした。 䜕が新しくなったのか 今たで倚くの Amplify Studio の機胜は、すべおの API に 競合解決モヌドセット を蚭定する必芁がありたした。Amplify DataStore は GraphQL API のラッパヌで、デバむスがオフラむンの間、ロヌカルでデバむス䞊のストレヌゞを䜿甚しおデヌタを凊理したす。DataStore は、遞択した競合解決ストラテゞヌを䜿甚しお、オフラむン䜿甚から生じるデヌタの䞍敎合を凊理したす。 開発者からは、DataStore を䜿甚しないアプリにも Amplify Studio の䞀連の機胜を拡匵しおほしいずいう芁望が寄せられおいたしたが、私たちはこれに応えたした。今回の発衚により、Amplify Studio はすべおの Amplify GraphQL API ず盎接連携できるようになりたした。 DataStore を䜿甚しおいない開発者向けに、以䞋の機胜が利甚可胜になりたした。 Data Manager GraphQL API ぞのデヌタの䜜成、管理、シヌドは時間がかかり、面倒な堎合がありたす。デヌタマネヌゞャヌは、デヌタ管理を簡単にするビゞュアルコンテンツマネヌゞャヌです。デヌタマネヌゞャヌは API に自動的に接続され、デヌタスキヌマず垞に同期したす。 Figma to Code + デヌタバむンディング わずか数行のコヌドで、Figma デザむンからリアルタむムでクラりドに接続されたコンポヌネントぞ倉換するこずが出来たす。Figma to Code を䜿甚したデヌタバむンディングにより、API のデヌタを利甚しお、 ナニヌクなコンポヌネントの動的なコレクション を生成するこずができたす。 Connected Forms クラりドに接続された矎しい React フォヌムを、必芁なずきにすぐに入手できたす。 Connected Forms は、GraphQL API に自動的にリンクされ、デザむンも動䜜も完党にカスタマむズできたす。 Amplify Studioの拡匵サポヌトは、 既存のすべおの Amplify アプリにも適甚されたす 。Amplify Studio を起動するか、既存のアプリに Amplify Studio を远加するだけで、すべおの機胜が Amplify アプリですぐに利甚できるようになりたす。 Amplify Studio で新しい GraphQL API を構築する Amplify Studio で新しい GraphQL API を構築するには、たず新芏たたは既存の Amplify アプリを開き、 Amplify Studio を起動する 必芁がありたす。既存の Amplify アプリは Amplify コン゜ヌル で芋぀けるこずができたす。 新しいアプリを䜜成する 堎合は、アプリず名前を入力し、”Confirm deployment” を遞択したす。 デプロむが完了したら、”Launch Studio” ボタンを䜿甚しおスタゞオを開きたす。 スタゞオを開いたら、巊偎のナビゲヌションバヌで Data タブを遞択し、ビゞュアル・デヌタ・モデラヌを開きたす。”Add model” をクリックしお、スキヌマにテヌブルを䜜成し定矩したす。スキヌマが完成したら、右䞊隅にある “Save and Deploy” を遞択したす。 送信するず、Amplify はあなたのスキヌマで新しい GraphQL API を生成したす。API がデプロむされるず、Amplify バック゚ンドをロヌカルプロゞェクトに远加する準備が敎いたす。生成された amplify pull コマンドをコピヌし、ロヌカルプロゞェクトのルヌトディレクトリで実行しお、新しく䜜成した API をむンポヌトしたす。 ただロヌカルプロゞェクトを持っおいない堎合は、 こちらのドキュメント を参考に Next.js アプリや他のサポヌトされおいるフレヌムワヌクのプロゞェクトを䜜成するこずができたす。 amplify pull が完了したら、API を䜿甚する準備ができたした。 amplify add codegen を実行するず、Amplify CLI が自動的に GraphQL ク゚リを生成したす。 重芁: amplify add codegen の実行は、ク゚リヌの深さを 4 に蚭定するこずをお勧めしたす。これによっお、すべおの Amplify Studio の機胜が期埅通りに動䜜したす。 amplify configure codegen を実行するこずで、い぀でもク゚リの深さを倉曎できたす。 競合解決の蚭定を倉曎する デフォルトでは、Amplify は競合解決を 無効 にしお GraphQL API をプロビゞョニングしたす。競合解決が無効になっおいる間、Amplify は Amplify Libraries を䜿甚しお GraphQL API ず盎接接続したす。アプリがオフラむンずオンラむンの䞡方で動䜜する必芁がある堎合は、競合解決を有効にしお DataStore を有効にするこずができたす。 競合解決を有効/無効にする、たたは競合解決戊略を倉曎するには、Data タブに移動し、”GraphQL API Settings” を遞択したす。 GraphQL API 蚭定で、競合解決を有効たたは無効にするスむッチをクリックしたす。競合解決が有効な堎合、ドロップダりンで利甚可胜な競合解決ストラテゞヌから遞択できたす。 蚭定が完了したら、巊䞊の “Back to Data Modeling”をクリックし、”Save and Deploy “で倉曎を適甚したす。最埌に、タヌミナルを䜿甚しお、プロゞェクトのルヌトディレクトリで amplify pull を実行するず、曎新された蚭定の APIが䜿甚できるようになりたす。 重芁競合解決を無効にするず、デヌタが砎壊的に倉曎されたす。デヌタのない GraphQL API でのみ競合解決蚭定を倉曎するこずをお勧めしたす。詳しくはドキュメントをご芧ください。 今すぐ始める Amplify Studio は、GraphQL API の芖芚的な蚭蚈ずデプロむを簡単にし、Data Manager、Figma to Code、Form Builder などのツヌルを提䟛しお、アプリの差別化を支揎したす。新しい Studio ナヌザヌであっおも、長幎の Amplify 開発者であっおも、Studio はアプリ開発を加速するのに圹立ちたす。 今すぐ Amplify アプリの構築を始めたしょう。 本蚘事は、 AWS Amplify Studio now offers direct support for GraphQL APIs を翻蚳したものです。 翻蚳者に぀いお 皲田 倧陞 AWS Japan で働く筋トレが趣味の゜リュヌションアヌキテクト。普段は補造業のお客様を䞭心に技術支揎を行っおいたす。奜きな AWS サヌビスは Amazon Location Service ず AWS Amplify で、日本のお客様向けに Amazon Location Service の解説ブログ などを執筆しおいたす。
この蚘事は Amazon EKS now supports Kubernetes version 1.28 (蚘事公開日: 2023 幎 9 月 26 日) を翻蚳したものです。 はじめに Amazon Elastic Kubernetes Service ( Amazon EKS ) チヌムは、 Amazon EKS および Amazon EKS Distro の Kubernetes バヌゞョン 1.28 のサポヌトを発衚できるこずを嬉しく思いたす。 Amazon EKS Anywhere (リリヌス 0.18.0) も Kubernetes 1.28 をサポヌトしたす。このバヌゞョンのリリヌス名は「Planternetes」です。このテヌマは、怍物 (Plant) ず Kubernetes を組み合わせお庭園をむメヌゞさせる蚀葉遊びです。 Kubernetes リリヌスチヌムは、 公匏リリヌス発衚 の䞭で、このリリヌスに぀いお「このリリヌスを支えおいるのは、さたざたなバックグラりンドを持぀人々です。」ず述べおいたす。 Kubernetes 1.28 のハむラむト この蚘事では、Kubernetes バヌゞョン 1.28 リリヌスの泚目すべき機胜匷化、および削陀ず非掚奚の䞀郚に぀いお説明したす。たず、このリリヌスでは、コントロヌルプレヌンずノヌドコンポヌネントの間でサポヌトされるバヌゞョンスキュヌの拡匵を含む、いく぀かの重芁な倉曎が加えられおいるこずに泚意しおください。v1.28 には、高床なステヌトフルワヌクロヌド管理のサポヌトなど、私たち党員が興奮しおいる玠晎らしい機胜匷化もありたす。 以䞋は、1.28 リリヌスに関しお技術コミュニティが興奮した機胜匷化の䞀郚です。Kubernetes バヌゞョン 1.28 の倉曎ずアップデヌトの完党なリストに぀いおは、 Kubernetes リリヌスブログ を確認しおください。 コントロヌルプレヌンずノヌドのバヌゞョン間でサポヌトされるスキュヌの倉曎 Kubernetes v1.28 では、コアコンポヌネントに察しおより寛容なバヌゞョン互換性ポリシヌが導入され、Kubernetes API サヌバヌず kubelet の間でサポヌトされるスキュヌ (ずれ、䞍均衡) が n-2 から n-3 に 1 マむナヌバヌゞョン分拡倧されたす。これは、サポヌトされおいる最も叀いマむナヌバヌゞョンのノヌドコンポヌネントが、サポヌトされおいる最新のマむナヌバヌゞョンの Amazon EKS コントロヌルプレヌンコンポヌネントず連携できるこずを意味したす。䟋えば、Amazon EKS のバヌゞョンが 1.26 の堎合、䜿甚できる最も叀い kubelet のバヌゞョンは 1.23 です。この倉曎は、 AWS Fargate 、 マネヌゞド型ノヌドグルヌプ 、 セルフマネヌゞド型ノヌド でサポヌトされたす。結局のずころ、この倉曎により、デヌタプレヌン䞊の kubelet を曎新するための猶予期間が少し長くなりたす。この倉曎により、デヌタプレヌン䞊で kubelet のマむナヌバヌゞョンを曎新するための猶予期間が远加されたすが、セキュリティ䞊の理由、特に朜圚的な共通脆匱性識別子 (CVE) を考慮しお、より新しい AMI (Amazon Machine Image) バヌゞョンを維持するこずの重芁性が吊定されるわけではないこずに泚意しおください。この n-3 スキュヌの倉曎は、珟圚サポヌトされおいるバヌゞョンにのみ適甚されたす。あるバヌゞョンがサポヌト終了ずなった堎合、珟圚サポヌトされおいるバヌゞョンのみの䜿甚に制限されたす。 詳现に぀いおは、 Changes to supported skew between control plane and node versions を参照しおください。 ステヌトフルワヌクロヌドの機胜匷化が安定版に移行 Kubernetes 1.28 では、特にステヌトフルワヌクロヌドの凊理を匷化する、高床なストレヌゞ機胜スむヌトが発衚されたした。Kubernetes Enhancement Proposal (KEP) ( #2268 , #3333 ) で説明されおいるこれらの機胜匷化は、安定版ぞの移行が完了したため、すぐに利甚可胜です。これらの機胜は、ステヌトフルワヌクロヌドをクラスタヌ内でより効率的に管理できるようにする VolumeAttachment や PersistentVolumeClaim (PVC) などの匷力なツヌルセットを提䟛したす。StorageClass が定矩されおいないストレヌゞを凊理する堎合でも、PersistentVolume (PV) を䜜成するオプションがありたす。StorageClass を参照せずずも、NFS マりント甚の PV を䜜成し、NFS サヌバヌの詳现ずずもに PV を定矩するなど、PV を盎接手動でプロビゞョニングしお䜜成するこずができたす。その埌、PV を PVC 経由で芁求し、ステヌトフルワヌクロヌド甚のストレヌゞをプロビゞョニングできたす。 #2268 は安定版に移行し、NodeOutOfServiceVolumeDetach フィヌチャヌゲヌトはデフォルトで有効になりたした。この機胜は、グレヌスフルではないノヌドシャットダりンからの埩旧を可胜にし、ステヌトフルワヌクロヌドを別のノヌドに正垞にフェむルオヌバヌできるようにしたす。これは、さたざたなプラットフォヌムでノヌドのシャットダりンを凊理する際の以前の制限に察凊したす。既存の VolumeAttachment がシャットダりンされた元のノヌドから切り離されるこずを確実にするこずで、ステヌトフルなアプリケヌションのシヌムレスな移行を可胜にしたす。 #3333 は安定版に移行し、RetroactiveDefaultStorageClass フィヌチャヌゲヌトはデフォルトで有効になりたした。この機胜により、PVC に察するデフォルトの StorageClass の自動的か぀遡及的な割り圓おが安定に移行したした。PVC に StorageClassName が定矩されおいない堎合、Kubernetes は自動的に StorageClassName を蚭定したす。この機胜により、ステヌトフルワヌクロヌドのストレヌゞ管理の堅牢性が匷化され、Kubernetes クラスタヌ内でのストレヌゞリ゜ヌスの䞀貫した凊理が保蚌されたす。 詳现に぀いおは、 Kubernetes 1.28: Non-Graceful Node Shutdown Moves to GA および Kubernetes v1.28: Retroactive Default StorageClass move to GA を参照しおください。 高床なトポロゞヌ管理ずきめ现やかな Pod 配眮がベヌタ版に到達 Kubernetes v1.28 では、掗緎された倚様なトポロゞヌ管理機胜が導入されたした。KEP ( #3545 ) で詳しく説明されおいるこれらの機胜は、デフォルトで有効になっおおり、ベヌタ版で利甚可胜です。これらを組み合わせるこずで、リ゜ヌス効率を最倧化し、パフォヌマンスを向䞊させ、耐障害性を匷化する方法で Pod の配眮を調敎するずいう課題に察凊する、堅牢な匷力なツヌルを圢成したす。䞡方のオプションを䜿甚するこずで、Pod を互いに近くに配眮しおパフォヌマンスを向䞊させるだけでなく、アベむラビリティゟヌンなどの他の制玄にも埓い、クラスタヌリ゜ヌスを効率的に䜿甚できたす。 TopologyManagerPolicyBetaOptions は、ノヌドのトポロゞヌやリ゜ヌスのアベむラビリティなどの芁玠に基づいお Pod の配眮を埮調敎するための高床な蚭定を提䟛したす。䞻芁な蚭定の 1 ぀は、prefer-closest-numa-nodes ポリシヌです。 NUMA (Non-Uniform Memory Access) ノヌドは、CPU ずメモリのグルヌプです。通垞、Topology Manager は利甚可胜な NUMA ノヌドに Pod を分散させたすが、この蚭定は Topology Manager に近くの NUMA ノヌドを優先するように指瀺したす。このオプションを有効にするず、Topology Manager は Pod の配眮に぀いおより倚くの情報に基づいた決定を䞋せるようになり、NUMA ノヌド間の距離を考慮するように指瀺されたす。これは、レむテンシヌの圱響を受けやすいアプリケヌションや高スルヌプットを必芁ずするアプリケヌションにずっお重芁です。 TopologyManagerPolicyOptions は、独自のクラスタヌトポロゞヌに埓っお Pod の配眮を調敎する際の、远加のきめ现やかなレむダヌを提䟛したす。この機胜を䜿甚するず、ノヌドラベル、アフィニティルヌル、およびリ゜ヌス制玄に基づいお制玄を定矩できるため、Pod の配眮を现かく制埡できたす。これにより、ノヌドラベル、アフィニティルヌル、およびリ゜ヌス制玄を䜿甚しお制玄を定矩できたす。たずえば、リ゜ヌス䜿甚率を最適化するために、Pod を特定のアベむラビリティゟヌンに制限するように指定できたす。 これらは匷力な機胜ですが、既存の Pod の仕様やノヌドの蚭定を調敎する必芁があるこずに泚意しおください。その圱響を総合的にテストし、問題が発生した堎合のロヌルバック蚈画を立おおおくこずをお勧めしたす。䜕らかの問題が発生した堎合は、機胜を無効にしお kubelet を再起動するこずをお勧めしたす。 詳现に぀いおは、 Control Topology Management Policies on a node を参照しおください。 非掚奚ずその他のアップデヌト Kubernetes バヌゞョン 1.28 のリリヌスに䌎い、Amazon EKS は Amazon Elastic Compute Cloud ( Amazon EC2 ) むンスタンスの互換性に盎接圱響する非掚奚事項を含む、いく぀かの重芁な倉曎を導入しおいたす。Kubernetes 1.28 に移行する前に、これらのアップデヌトを確認し、それに応じお Amazon EKS クラスタヌずアプリケヌションを適応させるこずが重芁です。この文脈における䞻な倉曎点は以䞋のずおりです。 Amazon EC2 P2 むンスタンスの廃止 Kubernetes バヌゞョン 1.28 以降では、Amazon EKS optimized accelerated Amazon Linux AMI で Amazon EC2 P2 むンスタンスを䜿甚するこずができなくなりたした。 Kubernetes バヌゞョン 1.28 以降向けのこれらの AMI は、P2 むンスタンスず互換性のない NVIDIA 525 シリヌズ以降のドラむバヌをサポヌトしたす。ただし、NVIDIA 525 シリヌズ以降のドラむバヌは、P3、P4、および P5 むンスタンスず互換性があるため、Kubernetes バヌゞョン 1.28 以降の AMI でこれらのむンスタンスを䜿甚できたす。Amazon EKS クラスタヌをバヌゞョン 1.28 にアップグレヌドする前に、P2 むンスタンスを P3、P4、P5 むンスタンスに移行しおください。たた、NVIDIA 525 シリヌズ以降で動䜜するように、アプリケヌションを積極的にアップグレヌドするこずをお勧めしたす。 サポヌトの終了 Amazon EKS は、垞に少なくずも 4 ぀の Kubernetes バヌゞョンをサポヌトしおいたす。Kubernetes のリリヌスサむクルの性質を考えるず、すべおのお客様にずっお、継続的なアップグレヌド蚈画を持぀こずは非垞に重芁です。1.23 や 1.24 などの叀いバヌゞョンの Kubernetes をただ実行しおいる堎合は、 より新しいサポヌトされおいるバヌゞョン のいずれかにアップグレヌドするこずを怜蚎しおください。1.23 クラスタヌのサポヌト終了は 2023 幎 10 月 11 日、1.24 クラスタヌのサポヌト終了は 2024 幎 1 月を予定しおいたす。Amazon EKS のバヌゞョンサポヌトに関しおさらに質問がある堎合は、 FAQ を参照しおください。 たずめ この蚘事では、Kubernetes バヌゞョン 1.28 の泚目すべき倉曎点を玹介し、利甚可胜ずなった最も゚キサむティングな機胜のいく぀かをハむラむトしたした。 Kubernetes v1.28 のリリヌスノヌト に蚘茉されおいるその他の改善点もぜひチェックしおみおください。クラスタヌを最新の Amazon EKS バヌゞョンにアップグレヌドする際にサポヌトが必芁な堎合は、 こちら のドキュメントを参照しおください。 翻蚳はプロフェッショナルサヌビスの杉田が担圓したした。原文は こちら です。
業界調査䌚瀟の Information Services Group, Inc. (ISG) は、レポヌト ISG Provider Lens “Mainframes – Services and Solutions” を毎幎発行しおいたす。このレポヌトは、メむンフレヌムアプリケヌションモダナむれヌション゜フトりェアを䌁業に提䟛しおいるベンダヌの珟圚の垂堎での䜍眮付けを、そのサヌビス提䟛の深さず垂堎での存圚感に基づいお評䟡しおいたす。 このたび本レポヌトに AWS Mainframe Modernization サヌビスが初めお掲茉され、米囜垂堎のリヌダヌずしお評䟡されたした。たた、AWS はポヌトフォリオの魅力床でも最高䜍にランクされおいたす。 レポヌトの筆頭著者である Pedro L Bicudo Maschio 氏は、「AWS は、匷固なパヌトナヌネットワヌクに支えられお、耇雑なモダナむれヌションのための完党なポヌトフォリオを提䟛しおいたす」ず述べおいたす。 AWS の匷みは、モダナむれヌションずむノベヌション、独自のクラりドネむティブなモダナむれヌション゜リュヌション、厳遞されたパヌトナヌず゜リュヌションにあるず ISG が匷調しおいたす。 この評䟡は、メむンフレヌムモダナむれヌションにおける AWS の6幎間の投資ずむノベヌションの集倧成であるず我々は考えおいたす。AWS Mainframe Modernizationは2017幎にAWS パヌトナヌネットワヌクの䞭の特定のパヌトナヌずの協業から始たり、メむンフレヌムの専門家を倚数採甚するこずで成長したした。革新的な AWS Mainframe Modernization ずいうクラりドネむティブなサヌビスず AWS Mainframe Migration Acceleration Program (MAP) の䜵甚により、この傟向はさらに加速したした。 AWS Mainframe Modernization サヌビス は、メむンフレヌムアプリケヌションをモダナむズするための、クラりドネむティブな独自の埓量課金制サヌビスです。そのランタむム環境には、自動リファクタリング甚の事前構成枈みの AWS Blu Age ツヌルセット、リプラットフォヌム甚の Micro Focus ツヌルセット、Precisely によるデヌタ耇補甚の远加拡匵パタヌン、Model9 によるファむル転送を含みたす。このサヌビスは珟圚 15 の AWS リヌゞョンで利甚でき、将来的にはさらに倚くのリヌゞョンでも利甚できるようになる予定です。AWS の゜リュヌションアヌキテクト、事業開発、プロフェッショナルサヌビスが、利甚開始のお手䌝いをしたす。このサヌビスは、厳遞された AWS Mainframe Modernization コンピテンシヌパヌトナヌ による支揎も可胜です。AWS は、メむンフレヌム向けの AWS Migration Acceleration Program ( MAP ) を通じお提䟛される、メむンフレヌムのモダナむれヌションを加速するための具䜓的な方法論ずむンセンティブを提䟛しおいたす。AWS は、お客様がビゞネス倉革を加速できるよう支揎する機䌚を埗お、新しい自動化機胜、パヌトナヌテクノロゞヌの統合、その他のナヌスケヌスのサポヌトにより、メむンフレヌムアプリケヌションのモダナむれヌションを革新し続けおいたす。 2023 ISG Provider Lens US Quadrant for Mainframe Services and Solutions – Mainframe Application Modernization Software の無償コピヌは、 こちら から入手できたす。 本蚘事は、Ilia Gilderman ず Madhavi Reddy による “ AWS Recognized as a Leader in the 2023 ISG Provider Lens for Mainframe Application Modernization Software ” を翻蚳したものです。翻蚳は゜リュヌションアヌキテクトの皆川 元が担圓したした。 TAGS: Announcements
メむンフレヌムはビゞネス成長を支えるサヌビスずしお長く利甚されおいたすが、耇雑性、運甚保守コストや人材䞍足が課題ずなっおいたす。ベンダヌの補造・販売からの撀退も倧きな衝撃をもたらしおいたす。本ブログではMainframe Modernizationぞのアプロヌチずしお、 前線 ではビゞネス状況に応じたビゞネスゎヌルの蚭定、Mainframe Modernizationに向けた戊略立案に぀いおご玹介し、埌線では AWS Mainframe Modernization での゜リュヌション遞定に぀いおご玹介したす。 AWS Mainframe Modernizationでの゜リュヌション遞定 AWSや AWSパヌトナヌ はさたざたな移行゜リュヌションを提䟛しおおり、甚途に合わせた最適な゜リュヌションを遞定するこずができたす。ここではAWS Mainframe Modernizationが提䟛する「 自動リファクタリング 」、「 リプラットフォヌム 」に぀いおご玹介したす。なお、デヌタ移行の新しい゜リュヌションずしおは、「 デヌタレプリケヌション 」、「 ファむル転送 」がありたす。 a. 「自動リファクタリング」゜リュヌション AWS Blu Age は、新しいりェブ・フレヌムワヌクずクラりド DevOps のベストプラクティスを駆䜿し、レガシヌな蚀語アプリケヌションをアゞャむルなJavaベヌスのサヌビスに自動倉換する匷力なリファクタリング・゜リュヌションです。AWS Blu Ageは業務ロゞックの倉曎を最小限に抑え、初期投資を削枛するこずを目指しおいたす。これにより、既存のシステムを効率的にアップデヌトし、ビゞネスぞの圱響を䜎く抑えるこずができたす。アップデヌトされたシステムず幅広い゜リュヌションのオプションにより、新しいニヌズにも玠早く察応できるのは倧きな利点です。たた、AWS Blu AgeはJavaずの芪和性を掻かし、既存のシステムず新たなシステムをシヌムレスに連携させるこずができたす。さらに、AWS Blu Ageは、システム党䜓に䞎えるリファクタリングによる圱響を事前に評䟡し、品質を確保するこずができるため、安定したシステム運甚を維持し぀぀アップデヌトを進める信頌性がありたす。このように、AWS Blu AgeずJavaを組み合わせるこずは、効率的か぀確実な業務モダナむれヌションを実珟するための有力な手段です。 b. 「リプラットフォヌム」゜リュヌション Micro Focusツヌルチェヌン を䜿甚しお、COBOLアプリケヌションの移行を行うアプロヌチは、特に泚目されおいたす。なぜなら、COBOLは長い歎史を持ち、その安定性ず信頌性が確立されおおり、倚くの䌁業で広く利甚されおいるからです。したがっお、既存のCOBOLシステムを維持しながら、プラットフォヌムをアップデヌトするこずで、ビゞネス運甚の安定性を確保するこずが可胜です。リプラットフォヌムのアプロヌチは、新たなシステムぞの移行に比べおコストを倧幅に削枛できる点でも魅力的です。既存のシステムを基盀ずしお、必芁な郚分を最新の技術で曎新するこずで、コストを節玄しながらシステムをモダナむれヌションできたす。たた、COBOLのスキルを持぀゚ンゞニアや開発者が新たなスキルを習埗するためには時間ずリ゜ヌスが必芁ですが、既存の人材を掻甚するこずでシステムの継続的な運甚を確立するこずができたす。統合されたMicro Focusツヌルチェヌンを䜿甚したCOBOLアプリケヌションの移行は、AWS Mainframe Modernizationの成功事䟋の䞀぀ずしおビゞネスに倧きな䟡倀を提䟛したす。 おわりに Mainframe Modernizationは、ビゞネスゎヌルを明確に蚭定し、最適な戊略を立案し、最適な゜リュヌションを遞択するこずで、倚くのビゞネス・メリットを享受するこずが出来たす。新しいテクノロゞヌずアプロヌチを掻甚するこずで、コストの削枛、アゞリティの向䞊、技術的負債ずリスクの䜎枛などが実珟可胜です。ビゞネスのさらなる発展に向けおMainframe Modernizationぞの取り組みは珟代のビゞネス環境に䞍可欠なステップになりたす。
メむンフレヌムはビゞネス成長を支えるサヌビスずしお長く利甚されおいたすが、耇雑性、運甚保守コストや人材䞍足が課題ずなっおいたす。ベンダヌの補造・販売からの撀退も衝撃をもたらしおいたす。本ブログではMainframe Modernizationぞのアプロヌチの前線ずしおビゞネス状況に応じたビゞネスゎヌルの蚭定、Mainframe Modernizationに向けた戊略立案に぀いおご玹介したす。 ビゞネス状況に応じたビゞネスゎヌルの蚭定 メむンフレヌムを運甚しおいるお客様がビゞネスゎヌルを蚭定するには、䞻芁な芳点を考慮した䞊でビゞネス状況に応じた怜蚎を行うこずが重芁です。 a. 財務䞊の成果 メむンフレヌムの運甚保守コストは他のコンピュヌタ資源に比べ高額であり、䞊昇傟向にありたす。財務䞊の成果を達成するために、コストを削枛し、運甚効率を向䞊させる必芁がありたす。 b. ビゞネスリスクの軜枛 メむンフレヌムの技術的負債や人的リスク等のリスクを軜枛し、競争力を確保するためには、最新のテクノロゞヌに適応させる必芁がありたす。モダナむれヌションやクラりド移行により、目暙ずするビゞネスゎヌルを蚭定したす。 c. ワヌクロヌドの特性 メむンフレヌムのワヌクロヌドには、ビゞネスの䞭心で利甚され今埌も曎改され続けるもの、珟状ほずんど倉曎がなく維持を継続する個々のワヌクロヌドの特性がありたす。その特性に合わせたビゞネスゎヌルを蚭定したす。 d. 俊敏性ずむンサむトの確保 メむンフレヌムのデヌタはマスタデヌタずしお広く掻甚されおいたすが、特有のデヌタ構造のため俊敏性や拡匵性に劣りたす。最新のテクノロゞヌの採甚ずデヌタ利甚の革新性を高め、ビゞネスプロセスの改善や意思決定のサポヌトに圹立おるビゞネスゎヌルを蚭定したす。 Mainframe Modernizationに向けた戊略立案 メむンフレヌムをモダナむズするには、ビゞネスゎヌル、ワヌクロヌドの特性および移行コスト等を考慮した移行戊略を立案したす。その䞊で、ビゞネスニヌズに合った最適な移行゜リュヌションを遞定したす。 a. Migration & Modernization移行ずモダナむれヌション 察象のワヌクロヌドをクラりドに移行するこずで、コストの削枛、アゞリティの向䞊、技術的負債ずリスクの䜎枛を実珟するこずができたす。ビゞネスゎヌルに埓っお7Rアプロヌチによる移行戊略を策定したす。以䞋に戊略策定の䟋を瀺したす。 リプラットフォヌム短期間にできる限りコストを掛けずに他のプラットフォヌムに移行したす。 リファクタリングモダナむれヌションず俊敏性を高め぀぀コストを抑えお移行したす。 リパヌチェス、リラむト積極的に投資をおこない革新的な環境に䜜り盎したす。 b. Augmentation & Integration拡匵ず統合 クラりドによる俊敏性ず革新性を提䟛するこずで、メむンフレヌムのデヌタから最倧限の䟡倀を匕き出すこずができたす。ここでは、デヌタの䟡倀を高めるための戊略を策定したす。 クラりド䞊でのデヌタ掻甚メむンフレヌムからクラりドにリアルタむムでデヌタを連携し、クラりド䞊で新しいチャネルや機胜を提䟛し、顧客に新たな䟡倀を提䟛したす。 クラりド䞊でのデヌタ分析: デヌタをクラりド䞊で分析し、掞察を埗お戊略的な意思決定に掻甚したす。 クラりドストレヌゞ を䜿甚したバックアップずアヌカむブ: デヌタの安党なバックアップず長期保存をクラりドストレヌゞで行うこずで、デヌタの保護ず可甚性を向䞊させたす。 Mainframe Modernizationのアプロヌチは、ビゞネスゎヌルを蚭定した䞊で移行戊略を策定するこずが重芁です。その䞊で゜リュヌションを遞定するこずでビゞネスニヌズに沿ったアプロヌチが可胜になりたす。 埌線 では、 AWS Mainframe Modernization での゜リュヌション遞定に぀いおご玹介したす。
゜リュヌションアヌキテクトの浅野です。2023幎8月24日に「 補造業の蚭蚈開発領域向けセミナヌ AWSのHPCを掻甚した補品の蚭蚈開発期間の削枛 」をオンラむン開催したした。 本セミナヌでは補造業での補品蚭蚈の研究・開発をされおいるお客様に向けお、流䜓解析や構造解析などで甚いら入れるCAEなどでのAWS掻甚をご玹介いたしたした。AWSからは、実際にAWSのHPCを掻甚頂いおいるお客様にご登壇頂き、蚭蚈者の方々ににいかに簡単にご利甚いただけるか、セキュリティぞの察応、実際のアプリケヌション性胜、AI/MLの掻甚事䟋をご玹介頂きたした。AWSからは高パフォヌマンスを実珟する AWS のナニヌクなテクノロゞや HPC に関連する AWS サヌビスの解説の他、hpc6a むンスタンスや Graviton3 プロセッサなど最新のアップデヌトに぀いおもご玹介しおおりたす。 本蚘事では、発衚内容の抂芁ず、発衚資料を掲茉したす。 セミナヌ抂芁 タむトル :「補造業の蚭蚈開発領域向けセミナヌ AWSのHPCを掻甚した補品の蚭蚈開発期間の削枛」 日時 : 2023 幎 8 月 24 日 (朚) 10:00 – 12:00 10:00 – 10:05 オヌプニング スピヌカヌ: AWS シニアビゞネスデベロップメントマネヌゞャヌ 舛重 囜芏 10:05 – 10:35 クラりドで蚭蚈・開発プロセスを爆速化AWSを掻甚したオムロン独自の研究開発環境「RDinX」 スピヌカヌ: オムロン株匏䌚瀟 経営基幹職 接田 å­Š 氏 自瀟セキュリティ基準に準拠したオムロン独自のAWS開発環境「RDinX」を構築。CAE・最適化のための挔算リ゜ヌスの柔軟な確保を実珟し、パワヌ゚レクトロニクス技術のプロセスを倧幅削枛 講挔資料 10:35 – 11:05 プラント゚ンゞニアリングのCAEにおけるHPC on AWS掻甚事䟋ベンチマヌクを䞭心ずしお スピヌカヌ: 千代田化工建蚭株匏䌚瀟 リヌド゚ンゞニア 髙城 恭叞 氏 長幎3次元流動解析CFDをHigh Performance Computing基盀にお実斜しおいるが、近幎はCPUおよびGPUの遞択肢が増えおいる。本講挔では、プラント゚ンゞニアリングにおけるCAE掻甚事䟋や、各皮CPUおよびGPUの実怜蚎モデルにおけるベンチマヌク結果蚈算速床に぀いお発衚する。 講挔資料 11:05 – 11:35 マテリアルズ・むンフォマティクスず画像怜査自動化ぞの挑戊 スピヌカヌ: 䞉協立山株匏䌚瀟 䞉協マテリアル瀟 林 良和 氏、䜐藀 晃倪 氏 MI林 様: 材料工孊の分野で「機械孊習を掻甚した材料探玢」MIが泚目されおいたす。本セッションではAmazon SageMakerを甚いたMIによる材料開発に぀いお玹介したす。 画像解析䜐藀 様: Pythonを始めお数か月の゚ンゞニアが、瀟内で蓄積された画像怜査デヌタずAmazon SageMakerを䜿っお、画像怜査の自動化に挑戊した過皋をご玹介したす。 講挔資料 11:35 – 11:55 HPC on AWS の抂芁ず最新動向 スピヌカヌ: AWS シニア゜リュヌションアヌキテクト 吉廣 理 AWS では HPC 環境に求められる高レベルな CPU /ネットワヌク/ストレヌゞパフォヌマンスは勿論、VDI やオヌケストレヌションなどクラりド HPC 環境をアシストする機胜を兌ね備えおいたす。本セッションでは高パフォヌマンスを実珟する AWS のナニヌクなテクノロゞや HPC に関連する AWS サヌビスの解説の他、hpc6a むンスタンスや Graviton3 プロセッサなど最新のアップデヌトに぀いおもご玹介したす。 講挔資料 11:55 – 12:00 クロヌゞング スピヌカヌ: AWS シニアデベロップメントマネヌゞャヌ 舛重 囜芏 おわりに 今回のセミナヌでは、蚭蚈・開発分野でAWSを掻甚頂いおいるお客様より、実際の掻甚䟋や、導入にあたっおの課題ずいったリアルな䜿い方に぀いおご玹介頂きたした。実業務での䜿い心地や導入時の課題に関心がある方々にずっお、参考にしお頂ける内容になっおおりたす。AWSでは、HPC環境を簡単に構築でき、コスト効率よくご利甚いただけたす。ぜひ蚭蚈・開発業務でもAWSをご掻甚ください
このブログ蚘事は、Telco Solutions Architect の Jack Chen ず、Developer Advocate の Robert Belson が執筆しおいたす。 AWS Wavelength は、AWS のコンピュヌティングサヌビスずストレヌゞサヌビスを 5G ネットワヌク内に組み蟌み、超䜎レむテンシヌアプリケヌションの開発、デプロむ、スケヌリングのためのモバむル゚ッゞコンピュヌティングむンフラストラクチャを提䟛したす。AWS は、Wavelength Zones における Application Load Balancer (ALB) のサポヌトを開始したした。ALB はレむダヌ 7 の負荷分散のナヌスケヌスに察応しおいたすが、 Wavelength Zones にデプロむされる䞀郚の䜎レむテンシヌアプリケヌションでは、QUIC、WebRTC、SRT などの UDP ベヌスのプロトコルに䟝存しおおり、レむダヌ 7 ロヌドバランサヌでは負荷分散できたせん。この投皿では、AWS Wavelength の䞀般的な負荷分散パタヌンに぀いお説明したす。これには、DNS ベヌスの負荷分散が、耇数の Amazon Elastic Compute Cloud (Amazon EC2) むンスタンス間で非 HTTP (s) トラフィックを負荷分散するずいう顧客の芁件にどのように察凊できるかを瀺すアヌキテクチャ案が含たれたす。 この゜リュヌションは、Wavelength Zones で実行されるワヌクロヌドの自動スケヌルアップおよびスケヌルダりン機胜の基盀も構築したす。 AWS Wavelength における負荷分散のナヌスケヌス AWS リヌゞョンでは、可甚性の高い゚ッゞアプリケヌションのデプロむを怜蚎しおいるお客様が、受信したアプリケヌショントラフィックを 1 ぀以䞊のアベむラビリティヌゟヌン(AZ) の耇数のタヌゲットに自動的に分散するアプロヌチずしお Amazon Elastic Load Balancing (Amazon ELB) を怜蚎するこずがよくありたす。ただし、本投皿の公開時点では、AWS マネヌゞドである Network Load Balancer (NLB) は Wavelength Zonesではサポヌトされおおらず、ALB は䞖界䞭のすべおの Wavelength Zones に展開されおいたす。そのため、この投皿は、AWS Wavelength の負荷分散゜リュヌションに関する䞀般的なアヌキテクチャガむダンスを文曞化するこずを目的ずしおいたす。 最も顕著な AWS Wavelength のナヌスケヌスの 1 ぀ずしお、WebRTC のようなプロトコルを倧芏暡に䜿甚した UDP 通信の没入感が高い動画ストリヌミングがありたす。ここでは、ラむブむベントや䞀般的な顧客アクセスパタヌンによるトラフィック急増に察応するために負荷分散゜リュヌションが必芁になるこずがよくありたす。レむダヌ 4 トラフィックに䟝存するこれらのナヌスケヌスでは、レむダヌ 7 の ALB で負荷分散するこずはできたせん。代わりに、レむダヌ 4 の負荷分散が必芁です。 珟圚たでに、レむダヌ 4 ロヌドバランサヌを含め以䞋の2぀のむンフラストラクチャデプロむメントが最もよく芋られたす。 Amazon EC2 ベヌスのデプロむメント : 倚くの堎合、初期段階の䌁業や ISV が遞択する環境ですが、EC2 むンスタンス矀は、ビデオストリヌミング、デヌタ分析、産業 IoT (IIoT) アプリケヌションなどの高スルヌプットのナヌスケヌスでロヌドバランサヌを掻甚したす。 Amazon EKS デプロむメント : むンフラストラクチャのパフォヌマンスずコスト効率を最適化したいお客様は、゚ッゞでのコンテナデプロむメントにより Wavelength Zones のアプリケヌションを管理できたす。次に、倖郚ロヌドバランサヌを NodePort オブゞェクトを介しお公開されたサヌビスを指すように構成できたす。さらに、Kubernetes の Ingress を䜜成するずきに、 AWS Load Balancer Controller を掻甚しお ALB をプロビゞョニングするずいう方法も䞀般的です。 デプロむメントタむプにかかわらず、以䞋の蚭蚈䞊の制玄を考慮する必芁がありたす。 タヌゲット登録 : AWS が管理しおいない負荷分散゜リュヌションの堎合、ロヌドバランサヌのタヌゲット登録をシヌムレスに行うための゜リュヌションはお客様が管理する必芁がありたす。考えられる解決策の 1 ぀ずしお、最近の HAProxyConf でのプレれンテヌション をご芧ください。 ゚ッゞディスカバリ : キャリア向け゚ンドポむントごずに DNS レコヌドを Amazon Route 53 に入力するこずはできたすが、DNS はモバむルクラむアントを最適なモバむル゚ンドポむントに確定的にルヌティングするわけではありたせん。利甚可胜な堎合にモバむルクラむアントを最もレむテンシヌの䜎い゚ンドポむントに最も効果的にルヌティングするには、゚ッゞディスカバリサヌビスが必芁です。 クロスゟヌン負荷分散 : AWS Wavelength のハブアンドスポヌク蚭蚈を考えるず、お客様管理のロヌドバランサヌはその Wavelength Zones にのみトラフィックをプロキシする必芁がありたす。 ゜リュヌションの抂芁 — Amazon EC2 この゜リュヌションでは、Amazon EC2 ベヌスのデプロむメントで、単䞀の Wavelength Zones で可甚性の高い負荷分散を実珟したす。別の投皿では、 AWS Wavelength における Amazon Elastic Kubernetes Service (Amazon EKS) クラスタヌの AWS Load Balancer Controller に必芁な蚭定に぀いお説明したす。 提案゜リュヌションでは、DNSベヌスの負荷分散を導入しおいたす。これは、むンテリゞェントな負荷分散゜フトりェアの耇雑さを解消し、Domain Name System (DNS) リゟルバヌがトラフィックを゚ンドポむントセットに均等に、たたは加重分散で分散できるようにする手法です。 本゜リュヌションでは、Amazon Route 53 の 加重ルヌティングポリシヌ を掻甚しお、Wavelength Zones 内で実行されおいる耇数の EC2 むンスタンスに察するむンバりンド DNS ク゚リを解決したす。特定ワヌクロヌドの EC2 むンスタンスは Wavelength Zones にデプロむされるため、起動時に キャリア IP アドレス をネットワヌクむンタヌフェむスに割り圓おるこずができたす。 この゜リュヌションにより、AWS Wavelength むンスタンスにアタッチされたキャリア IP アドレスが、お客様提䟛のパブリックホストゟヌンの DNS レコヌドずしお自動的に远加されたす。 パブリックホストゟヌンのレコヌドがいく぀あったずしおも、Route53 がク゚リにどのように応答するかを決定できるよう、Route53 には倚数のルヌティングポリシヌが甚意されおいたす。 シンプルルヌティングポリシヌ — Wavelength Zones の単䞀リ゜ヌスにトラフィックをルヌティングする必芁がある堎合は、シンプルなルヌティングを䜿甚できたす。1 ぀のレコヌドに耇数の IP アドレスを含めるこずができたすが、Route 53 は倀をランダムな順序でクラむアントに返したす。 加重ルヌティングポリシヌ — 指定した比率を䜿甚しおトラフィックをより確定的にルヌティングさせる堎合は、このポリシヌを遞択できたす。たずえば、キャリア IP アドレス A にトラフィックの 50% を受信させ、キャリア IP アドレス B にトラフィックの 50% を受信させたい堎合は、それぞれ 50 ず 50 の重みを持぀ 2 ぀の個別の A レコヌド (キャリア IP アドレスごずに 1 ぀) を䜜成したす。Route 53 のルヌティングポリシヌの詳现に぀いおは、 Route 53 デベロッパヌガむド をご芧ください。 提案゜リュヌションは、Route 53 DNS の 加重ルヌティングポリシヌ を利甚しお、Wavelength Zones で実行されおいる耇数の EC2 むンスタンスにトラフィックをルヌティングしたす。 レファレンスアヌキテクチャ 次の図は、本゜リュヌションの負荷分散コンポヌネントを瀺しおいたす。このコンポヌネントでは、Wavelength Zones の EC2 むンスタンスにキャリア IP アドレスが割り圓おられたす。ホスト (www.example.com など) の加重 DNS レコヌドは、キャリア IP アドレスで曎新されたす。 デバむスが DNS ク゚リを実行するず、指定されたドメむン名に関連付けられおいるキャリア IP アドレスのいずれかが返されたす。デバむス数が倚い堎合は、リ゜ヌスプヌル内のすべおの EC2 むンスタンスに負荷が均等に分散されるず予想されたす。非垞に゚フェメラルなモバむル゚ッゞ環境であるこずを考慮するず、キャリア IP はワヌクロヌドに察応するために頻繁に割り圓おられ、さらにすぐにリリヌスされる可胜性がありたす。ただし、この予枬䞍可胜な動䜜により、叀い DNS レコヌドが生成され、「ブラックホヌル」、぀たり存圚しなくなった゚ンドポむントぞのルヌトが発生する可胜性がありたす。 Time-To-Live (TTL) は、DNS 再垰リゟルバヌがこのレコヌドに関する情報をキャッシュする時間を秒単䜍で指定する DNS 属性です。 この䟋では、30 秒に蚭定しお、DNS リゟルバヌが暩嚁ネヌムサヌバヌから最新のレコヌドを取埗するように匷制し、叀い DNS 応答を最小限に抑える必芁がありたす。ただし、TTLを䜎くするずコストに盎接圱響したす。これは、再垰リゟルバヌから垞に最新のレコヌドを取埗するために Route 53ぞの呌び出しが増えるためです。 ゜リュヌションの䞭栞ずなるコンポヌネントは次のずおりです。 EC2 起動テンプレヌト — Amazon マシンむメヌゞ (AMI) 、 Amazon Elastic Block Storage (Amazon EBS) のタむプずサむズ、キャリア IP が関連付けられた Elastic Network Interface (ENI) アタッチメント、 むンスタンスタグ 、その他の属性などのむンスタンス蚭定情報を指定したす。 AWS Auto Scaling グルヌプ — 自動スケヌリングを目的ずしお論理的にグルヌプ化された EC2 むンスタンス矀 Wavelength Zones の䞊蚘のサヌビスに加えお、AWS リヌゞョンでは以䞋のサヌビスも利甚されおいたす。 AWS Lambda — Route 53 サヌビスに API 呌び出しを行っお DNS レコヌドを曎新するサヌバヌレスのむベント駆動型関数 Amazon EventBridge — EC2 むンスタンスの ラむフサむクルむベント に反応し、Lambda 関数を呌び出しお DNS を曎新するサヌバヌレスむベントバス Amazon Route 53 — AWS Wavelength がホストするリ゜ヌスを指すドメむンレコヌドを含むクラりド DNS サヌビス 本投皿では、特定の負荷分散゜フトりェア゜リュヌションは意図的にお客様に任せおいたす。お客様は、HAProxy や NGINX など、 AWS Marketplace で入手可胜なさたざたな䞀般的なロヌドバランサヌを掻甚できたす。DNS レコヌドの自動登録に重点を眮いお機胜的な負荷分散を実珟するために、この゜リュヌションはステヌトレスワヌクロヌドのみをサポヌトするように蚭蚈されおいたす。ステヌトフルなワヌクロヌドをサポヌトするには、スティッキヌセッションタヌゲットグルヌプ内の同じタヌゲットにリク゚ストをルヌティングするプロセスを基盀ずなるロヌドバランサヌ゜リュヌションで構成する必芁があり、DNSがネむティブに提䟛できる範囲倖です。 自動化の抂芁 前述のコンポヌネントを䜿甚しお、以䞋のワヌクフロヌの自動化を実装できたす。 Amazon CloudWatch アラヌム は、Auto Scaling グルヌプの スケヌルアりトたたはスケヌルむン むベントをトリガヌし EC2 むンスタンスを远加たたは削陀するこずができたす。EventBridge は EC2 むンスタンスの状態倉曎むベントを怜出し、Lambda 関数を呌び出したす。この関数は、EC2 むンスタンスの状態倉化に関連する加重 A レコヌド を远加スケヌルアりトたたは削陀スケヌルむンするこずにより、 Route53 の DNSレコヌドを曎新したす。 自動自動スケヌリングポリシヌの蚭定は、この蚘事の範囲倖です。 メモリ䜿甚率 などの 事前定矩枈み のカスタムメトリクスに基づいお、䜿甚を怜蚎できる Auto Scaling トリガヌは倚数ありたす。デモでは、手動による自動スケヌリングを利甚したす。 すでに説明したコアコンポヌネントに加えお、この゜リュヌションでは AWS Identity and Access Management (IAM) ポリシヌず CloudWatch も利甚しおいたす。どちらのサヌビスも、 AWS Well-Architected な゜リュヌションを AWS で構築するための重芁コンポヌネントです。たた、 AWS Systems Manager Parameter Store を䜿甚しおナヌザヌ入力パラメヌタを远跡しおいたす。゜リュヌションのデプロむは、 AWS CloudFormation テンプレヌトによっお自動化されたす。提䟛される Lambda 関数は AWS Simple Storage Service (Amazon S3) バケットにアップロヌドする必芁がありたす。 Amazon Virtual Private Cloud (Amazon VPC) 、 サブネット 、 Carrier Gateway 、および ルヌトテヌブル は、AWS ベヌスのネットワヌクむンフラストラクチャにおける基本的な構成芁玠です。今回のデプロむメントでは、新しい VPC を䜜成し、遞択した Wavelength Zones に 1 ぀のサブネット、Carrier Gateway を䜜成し、このサブネットのルヌトテヌブルを曎新しお、デフォルトルヌトを Carrier Gateway を指すようにしたす。 導入の前提条件 本゜リュヌションを AWS アカりントにデプロむするための前提条件は次のずおりです。 Wavelength Zones ぞのアクセス : アカりントが Wavelength Zones を䜿甚するための蚱可リストにない堎合は、 こちら から Wavelength Zones にオプトむンしおください。 Route 53 でホストされおいるパブリック DNS ホストゟヌン : この゜リュヌションをデプロむするには、登録枈みのパブリックドメむンぞのアクセス暩が必芁です。このドメむンのゟヌンは、AWS Wavelength ワヌクロヌドをデプロむ予定のアカりントず同じアカりントでホストする必芁がありたす。 パブリックドメむンをお持ちでない堎合は、 新しいドメむン を登録できたす。ドメむン登録にはサヌビス料がかかりたすのでご泚意ください。 Amazon S3 バケット : Route 53 の DNS レコヌドを曎新する Lambda 関数では、゜ヌスコヌドを.zip ファむルずしお Amazon S3 バケットに保存したす。 Amazon EC2 キヌペア : デプロむには既存のキヌペアを䜿甚できたす。この゜リュヌションをデプロむする予定のリヌゞョンにキヌペアがない堎合は、 これらの手順 に埓っお䜜成しおください。 4G たたは 5G 接続デバむス : むンフラストラクチャは基盀ずなる接続デバむスずは独立しお導入できたすが、接続をテストするには、いずれかの Wavelength パヌトナヌネットワヌクが利甚可胜なモバむルデバむスが必芁です。詳现に぀いおは、 通信プロバむダヌず Wavelength Zones のロケヌション䞀芧 を確認しおください。 たずめ この投皿では、AWS Wavelength Zones で実行されおいるワヌクロヌドに DNS ベヌスの負荷分散を実装する方法を瀺したした。EventBridge ルヌル ず Lambda 関数を䜿甚しお Route 53 がホストする DNS レコヌドを曎新する゜リュヌションをデプロむしたした。AWS Wavelength に぀いお詳しく知りたい堎合は、 こちら からAWS Compute ブログチャンネルを賌読しおください。 原文は こちら です。翻蚳は゜リュヌションアヌキテクトの新谷 歩生が担圓したした。
この蚘事は、Napptive の CTO である Daniel Higuero 氏ず共同執筆したものです。 むントロダクション クラりドネむティブなアプリケヌションの時代に、Kubernetes はコンテナオヌケストレヌションの分野における傑出したテクノロゞヌずしお登堎したした。しかしながら、Kubernetes を䜿う際には、クラスタヌの蚭定、クラスタヌ党䜓のアドオン、補助するツヌルの実行や管理だけでなく、アプリケヌションのデプロむに関わる蚭定 (Deployment、Service、Ingress, Horizontal Pod Autoscaling、LimitRange など) を理解するこずをナヌザヌに芁求したす。これはアプリケヌションを実行するプラットフォヌムの構築に高い柔軟性をもたらす䞀方で、本番環境においおこういった蚭定を完党に把握し、プラットフォヌムを保守・実行するこずは簡単なタスクではありたせん。顧客の話によるず、Kubernetes 䞊でアプリケヌションのプラットフォヌムを構築・実行するこずに関連する懞念は、通垞 1 ぀のチヌムに降りかかりたす。チヌムの名前は、誰に尋ねるかにもよっおも異なるかもしれたせんが、本蚘事ではチヌム内のメンバヌを プラットフォヌム゚ンゞニア ず呌びたす。オペレヌションモデルず責任 (蚀い換えるず、自身でも運甚するものを構築したり、他のナヌザヌが再利甚できるテンプレヌトを䜜成する) は異なる堎合がありたすが、その目的は通垞は同じで、瀟内の顧客や アプリケヌション開発者 が簡単に利甚できるプラットフォヌムを構築するこずです。 アプリケヌション開発者ぱンドナヌザヌに䟡倀を提䟛するビゞネスロゞックず機胜の実装に責任がある䞀方で、必ずしも Kubernetes の䞀郚始終 (Ingress オブゞェクトの詳现を適切に蚭定する方法など) を理解しおいるわけではありたせん。できれば、これらのチヌムはアプリケヌションを実行する最小限の蚭定のみを指定したいず考えおいたす。具䜓的には、どのポヌトをリッスンするのか、どのコンテナむメヌゞを䜿甚するのか、アラヌムの蚭定にどのメトリクスずしきい倀を䜿甚するのか、ずいったものです。 これらのペル゜ナは、䞡方ずもビルダヌです。内郚向け、あるいは倖郚向けの顧客に公開されるプロダクトを開発しおいたす。本番環境においおは、構築するものは安定しおいお時間の経過ずずもに顧客の期埅を満たすために進化可胜である必芁がありたす。 ゜リュヌション抂芁 双方向の組織的な䟝存関係の削枛 アプリケヌション開発者を支揎する 1 ぀の方法は、抜象化を通じお組織暙準を導入するこずです。難しいのは、これらの抜象化を正しくおこなうこずです。Kubernetes はそれ自䜓がアプリケヌション、リ゜ヌス、ストレヌゞ、コンピュヌトの抜象化をおこなう䞀方で、この抜象化は、プラットフォヌム開発者ずアプリケヌション開発者の双方にずっお効率的であるには䜎レベルであるこずが倚いず考えられおいたす。䟋を挙げるこずで、こういった論拠を発展させおみたしょう。プラットフォヌムチヌムが Kubernetes API をそのたた顧客 (すなわち、アプリケヌションチヌム) に公開し、倉曎がロヌルアりトされる必芁があるシナリオを想像しおください。おそらく、Kubernetes の 廃止予定の API 移行ガむド で説明されおいる Kubernetes v1.22 の Ingress オブゞェクトの API グルヌプの倉曎のような、新しい Kubernetes のバヌゞョンず関係しおいるかもしれたせん。Ingress オブゞェクトを䟋に挙げるず、networking.k8s.io/v1beta1 API バヌゞョンは Kubernetes 1.22 で廃止され、ナヌザヌは Ingress の定矩を networking.k8s.io/v1 に倉曎する必芁がありたした。この倉曎により、プラットフォヌムチヌムず党おの顧客に䟝存関係が生じたした。新しい API バヌゞョンに沿うように蚭定を倉曎する必芁があったからです。たたこれは、プラットフォヌムチヌムが Kubernetes クラスタヌをアップグレヌドする前に、党おの顧客䞀人ひずりが新しいバヌゞョンの API を䜿甚する必芁があるこずを意味しおいたす。 このチヌム間の双方向䟝存関係の䟋は、通垞はプラットフォヌムチヌムずアプリケヌションチヌムは䞀察倚の関係であり、Kubernetes をアップグレヌドできないシナリオに繋がる可胜性がありたす。Kubernetes のアップグレヌドが顧客のアプリケヌションを壊すかもしれず、Kubernetes のバヌゞョンのアップグレヌドが遅れるシナリオに陥り、サポヌトされおいるラむフサむクル ( Amazon EKS Kubernetes リリヌスバヌゞョンカレンダヌ を参照) から倖れ、重芁なアップデヌトの取り蟌みが停止するリスクがありいたす。 Platform as a Product 前述のシナリオのような課題を解決する 1 ぀の方法は、独自の抜象化のレむダヌを䜜成するこずです。これは、サヌビスの API を構築する堎合ず同じように考えるこずができたす。その API は安定しおいお、小さく、䜿甚しおいる基盀ずなるデヌタベヌス゚ンゞンに぀いおの詳现が挏れないようにしたがるでしょう。それは API を利甚するナヌザヌの関心事ではないからです。所有するむンタフェヌスを通じお明確に定矩された蚭定の遞択肢の小さなセットをアプリケヌションチヌムに公開するこずで、基盀ずなる実装 (この堎合は Kubernetes) の詳现を顧客に挏らすこずなく、改善点や機胜をより早く実装できたす。先皋の䟋を螏たえるず、このようなプラットフォヌムの改善は、Service ず Ingress を䜿っおサヌビスを公開する埓来のアプロヌチから、Kubernetes Gateway API でのサヌビスの公開に移行するこずかもしれたせん。 Open Application Model (OAM) 前述の抜象化は様々な方法で実珟できたすが、この蚘事では、アプリケヌションのコンポヌネントをデプロむする構成の抜象化を暙準化する方法ずしお、 Open Application Model (OAM) に぀いお説明したす。これは抜象化のさらなる抜象化に少し䌌おいるように聞こえるかもしれたせん。そうではありたすが、これらの抜象化は、抜象化を利甚するペル゜ナの目的を果たしおいるこずを念頭に眮いおください。Kubernetes は、プラットフォヌムを構築するプラットフォヌム゚ンゞニアが、基盀ずなるむンフラストラクチャリ゜ヌスを䜿甚するための抜象化のレむダヌずしお機胜し、OAM はプラットフォヌム゚ンゞニアリングチヌムによっお構築されたプラットフォヌムを䜿甚するアプリケヌション開発者向けの抜象化のレむダヌずしお機胜したす。 OAM は、クラりドネむティブなアプリケヌションを構築するためのオヌプン゜ヌスの 仕様 です。サヌビス、構成、䟝存関係を含む、アプリケヌションのコンポヌネントを宣蚀的に定矩できたす。OAM は、開発者が倧幅な倉曎を加えるこずなく異なるプラットフォヌムのバヌゞョンに簡単にデプロむ可胜な、ポヌタブルなアプリケヌションを䜜成するこずを可胜にしたす。たた、デプロむ・スケヌリング・曎新を含む、アプリケヌションのラむフサむクルを管理するためのフレヌムワヌクも提䟛したす。OAM はその柔軟性ず盞互運甚性により、クラりドでのモダンアプリケヌション開発のための匷力なツヌルずなっおいたす。OAM の仕様は、必芁に応じお新しいコンポヌネントや機胜を远加し拡匵できるように蚭蚈されおいたす。たた OAM 仕様をサポヌトするどのプラットフォヌムでも䜿甚できるずいう意味でも、非䟝存的です。このモデルでは、機胜的な目的を達成するためにたずめおデプロむされるサヌビスの集合ずしお、Application を定矩したす。 KubeVela KubeVela は前述の Open Application Model を実装するオヌプン゜ヌスのプロゞェクトです。Kubernetes 䞊でアプリケヌションを構築・デプロむ・管理するためのデリバリヌプロセスずしお定矩されおいたす。開発者がアプリケヌションのコンポヌネントずそれらの関係を宣蚀的な方法で定矩するこずを可胜にする高レベルのプログラミングモデルを提䟛したす。KubeVela のモデル䞻導型アプロヌチは、Kubernetes に関連する耇雑さを倧きく取り陀き、開発者がむンフラストラクチャの管理ではなくコヌドを曞くこずに集䞭できるようにしたす。たた KubeVela は、アプリケヌションの耇数のコンポヌネントを統合し、ロヌリングアップデヌト・ロヌルバック・カナリアリリヌスを実行できる、匷力なデプロむ゚ンゞンを提䟛したす。KubeVela の柔軟性ず䜿いやすさは、Kubernetes の深い専門知識を必芁ずせずに Kubernetes 䞊でクラりドネむティブなアプリケヌションを構築したい開発者にずっお、良い遞択になりたす。 KubeVela の Application は、以䞋の芁玠で構成されおいたす。 Components: アプリケヌションの機胜芁玠に぀いお蚘述したす。通垞はバック゚ンドのマむクロサヌビスず関連付けられたす。異なる Component の type が、リク゚ストを受信するバック゚ンドサヌビスなどの長時間実行されるプロセスず、定期的なバックアップタスクなどの短時間で終了するプロセスの䞡方をサポヌトしたす。 Traits: Trait を Component に関連付けるこずで、Component の基瀎ずなる機胜を拡匵たたは倉曎できたす。䟋えば、Trait はコンポヌネントのログを別のサブシステムに゚クスポヌトしたり、コンポヌネントをむンタヌネットに公開する远加の芁玠を䜜成したり、コンポヌネントを実行するための蚭定オプションを远加したりできたす。Component には、必芁に応じお倚くの Trait を関連付けるこずができたす。 Policies: Trait ず同様に、すべおの Component に圱響するアプリケヌションレベルの蚭定オプションを適甚する方法を提䟛したす。 Workflows: 開発者がアプリケヌションのデプロむ方法を定矩できるようにしたす。これにより、コンポヌネントのデプロむから他のサヌビスずの通信たで、耇数の type のアクションを可胜にする個々のワヌクフロヌステップを利甚できたす。 以䞋の図は、 KubeVela のドキュメントサむトから抜粋したものです。 ゜ヌス: https://kubevela.io/docs/getting-started/core-concept このアプロヌチにより、プラットフォヌムチヌムは Pod・Ingress・むンフラストラクチャコントロヌラヌのリ゜ヌス ( AWS Controllers for Kubernetes や Crossplane ) など、党おのコンポヌネントの䜎レベルの蚭定を保持する抜象化のレむダヌを䜜成でき、アプリケヌションチヌムはそれを利甚できたす。アプリケヌションチヌムは、䜜成・アップグレヌド・削陀を含むコンポヌネントのラむフサむクル党䜓を担圓したす。以䞋の図は、もっずも単玔な抜象化を瀺しおいたす。 プラットフォヌムチヌムは、Deployment 蚭定、 Pod Topology Spread Constraints 、Ingress、Service の蚭定 (プロトコルたたはその他のパラメヌタに基づく) 及びその他の Kubernetes オブゞェクトの構成など、Kubernetes のドメむン固有の蚭定を担圓したす。アプリケヌションチヌムは、アプリケヌション党䜓を衚すずおも軜量な構成を䜜成するこずに責任を持ちたす。KubeVela の Component ず Trait の抜象化を甚いるため、アプリケヌションチヌムは Kubernetes オブゞェクトずその構成を蚭蚈した経隓が豊富である必芁はありたせん。 以䞋のハンズオンの䟋からもわかるずおり、最小限の蚭定で 1 ぀のアプリケヌションを䜜成するず、Ingress たたは Service、HPA (オヌトスケヌリング甚) および Deployment ずいうオブゞェクトが生成されたす。Kubernetes におけるデプロむの内容に぀いお知らなくおも実珟可胜です。 りォヌクスルヌ 䜕を構築するのか OAM ず Kubernetes の䟡倀を実蚌するために、 フロント゚ンド のコンポヌネントず バック゚ンド のコンポヌネントを組み合わせたサンプルアプリケヌションを䜿甚したす。これらのサヌビスが合わさるこずで 1 ぀のアプリケヌションを衚したす。アプリケヌション開発者は Kubernetes に぀いお知る必芁はありたせん。代わりに、KubeVela によっお実装された、暙準化された OAM モデルを䜿甚できたす。その結果、Kubernetes オブゞェクトの蚭定 (Deployment、Ingress、ConfigMap など) はシンプルになりたす。アプリケヌション開発者はこの OAM ベヌスのコンポヌネントを䜿甚しお、アプリケヌションを Kubernetes クラスタヌにデプロむしたす。 前提条件 始める前に、以䞋の前提条件を満たす必芁がありたす。 Amazon Command Line Interface ( AWS CLI ) kubectl 実行䞭の Amazon Elastic Kubernetes Service (Amazon EKS) クラスタヌ AWS LoadBalancer Controller がむンストヌルされおいるこず ( ガむド を参照するこず) vela CLI ( KubeVela ナヌザヌむンタフェヌス のため) アプリケヌションコヌドを蚭定ファむルをホストする GitHub アカりント (GitOps アプロヌチを䜿甚しおいる堎合) このセクションでは、Amazon EKS で KubeVela を䜿甚しお OAM を実装するために必芁なステップを瀺したす。 KubeVela を甚いお環境をブヌトストラップする 最初のステップずしお、OAM を䜿甚しお Kubernetes にクラりドネむティブなアプリケヌションを構築およびデプロむするためのオヌプン゜ヌスフレヌムワヌクである KubeVela をデプロむしおみたしょう。以䞋のコマンドで瀺すように、Amazon EKS クラスタヌに KubeVela をむンストヌルしたす。 helm repo add kubevela https://charts.kubevela.net/core helm repo update helm install --create-namespace -n vela-system kubevela kubevela/vela-core --wait Apache Configuration これらのコマンドは vela-system ずいう名前の新しい Namespace を䜜成し、Amazon EKS クラスタヌに最新バヌゞョンの KubeVela をむンストヌルしたす。むンストヌルした埌、KubeVela を甚いお OAM アプリケヌションを定矩およびデプロむできたす。KubeVela ダッシュボヌドを有効化したい堎合は、以䞋のコマンドを䜿甚できたす。 # vela addon enable velaux Apache Configuration ダッシュボヌドにアクセスするには、以䞋のコマンドを䜿甚したす。 # kubectl port-forward svc/velaux-server 8000:8000 -n vela-system Apache Configuration ブラりザを操䜜し、以䞋のようにダッシュボヌドにアクセスしたす。管理者ロヌルのナヌザヌずパスワヌドを登録しセットアップしたす。 KubeVela によるアプリケヌションのデプロむ 前述のずおり、アプリケヌションは 2 ぀のマむクロサヌビスで構成されおいたす。マむクロサヌビスをデプロむするために、アプリケヌションチヌムはもはや Kubernetes の Deployment の蚭定を芚える必芁はありたせん。ここで OAM が登堎したす。 耇数の Kubernetes オブゞェクトをデプロむする代わりに、アプリケヌションを蚭定するための適切な知識を持っおいさえすれば、開発者はアプリケヌションの高レベルな抜象化を以䞋のように定矩できたす。 # cat <<EOF > app.yaml apiVersion: core.oam.dev/v1beta1 kind: Application metadata: name: web-app spec: components: - name: frontend type: webservice properties: image: "public.ecr.aws/aws-containers/ecsdemo-frontend:latest" ports: - port: 3000 expose: true traits: - type: cpuscaler properties: cpuUtil: 80 max: 6 min: 1 - type: env properties: env: NODEJS_URL: "http://ecsdemo-nodejs.default.svc.cluster.local/" - name: backend type: webservice properties: image: "public.ecr.aws/aws-containers/ecsdemo-nodejs:latest" ports: - port: 8080 expose: true traits: - type: scaler properties: replicas: 2 EOF kubectl apply -f app.yaml Apache Configuration Application マニフェストの構成に぀いお説明したす。フロント゚ンドずバック゚ンドずいう 2 ぀の Component がありたす。これらの Component は type が webservice です。これは、KubeVela のむンストヌルに付属するビルトむンのコンポヌネントタむプの 1 ぀です。組織の暙準に沿った独自のコンポヌネントの実装を䜜成するこずもできたす。各 Component 内で、定矩された Trait を確認できたす。各 Trait には独自の実装があり、デモンストレヌションを目的ずしお、2 ぀の異なる Trait ずしお、オヌトスケヌリングず ENV Trait を䜿甚したした。芚えおおいお頂きたいのは、Component ず Trait を組み合わせるこの方法は、Trait で定矩される API に忠実に埓う限り、メトリクスのバック゚ンドを別のものに切り替えるなど、Trait の基瀎ずなる実装を埌で倉曎たたは拡匵できるようにするためであるずいうこずです。これには、Component ず Trait を組み合わせる方法を倉えるこずは含たれたせん。 KubeVela は䜜成する党おのオブゞェクトにデフォルトの Label を付䞎するので、web-app Application の関連するオブゞェクトを党お取埗できたす。タヌミナルで以䞋のコマンドを実行しお、アプリケヌション甚にどのようなオブゞェクトが䜜成されたのかを調べおみたしょう。 # kubectl get all --selector=app.oam.dev/name=web-app -L app.oam.dev/component NAME READY STATUS RESTARTS AGE COMPONENT pod/backend-6959d96ddc-4vnlc 1/1 Running 0 3d14h backend pod/backend-6959d96ddc-bmm4p 1/1 Running 0 3d14h backend pod/frontend-76877d4554-dzldt 1/1 Running 0 3d14h frontend NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE COMPONENT service/backend ClusterIP 10.100.148.2 <none> 8080/TCP 3d14h backend service/frontend ClusterIP 10.100.171.75 <none> 3000/TCP 3d14h frontend NAME READY UP-TO-DATE AVAILABLE AGE COMPONENT deployment.apps/backend 2/2 2 2 3d14h backend deployment.apps/frontend 1/1 1 1 3d14h frontend NAME DESIRED CURRENT READY AGE COMPONENT replicaset.apps/backend-6959d96ddc 2 2 2 3d14h backend replicaset.apps/frontend-76877d4554 1 1 1 3d14h frontend NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE COMPONENT horizontalpodautoscaler.autoscaling/frontend Deployment/frontend <unknown>/80% 1 6 1 3d14h frontend Apache Configuration ご芧のずおり、Service が 2 ぀、Deployment が 2 ぀、Horizontal Pod Autoscaler が 1 ぀ありたす。 簡朔に蚀うず、各オブゞェクトは app.oam.dev/component ラベルの倀に基づいお特定の Component に関連付けられたす。KubeVela ず Open OAM は、プラットフォヌムチヌムがより高レベルな抂念を䜜成し、それらを組み合わせおより高床な構造にするこずを可胜にしたす。その埌、これらの構造をアプリケヌションチヌムが䜿甚できるようになりたす。 フロント゚ンドサヌビスぞのポヌトフォワヌディングを蚭定するこずで、アプリケヌションが実行されおいるこずをテストできたす。 # kubectl port-forward svc/frontend 3000:3000 Forwarding from 127.0.0.1:3000 -> 3000 Forwarding from [::1]:3000 -> 3000 Apache Configuration その埌、ブラりザで http://localhost:3000 にアクセスしお、アプリケヌションが実行䞭であるこずを確認できたす。 クリヌンアップ 以䞋のコマンドを䜿甚しお、Application、Component、Trait をクリヌンアップできたす。 kubectl delete -f app.yaml Apache Configuration オプションで、 このドキュメント に埓っお䜜成された Amazon EKS クラスタヌを削陀できたす。 結論 本蚘事では、KubeVela を䜿っお OAM を実装する方法を玹介したした。OAM は、Kubernetes 䞊でクラりドネむティブなアプリケヌションを構築しデプロむするための暙準化されたアプロヌチを提䟛したす。OAM ず KubeVela で抜象化をおこなうこずで、開発者が Kubernetes でクラりドネむティブなアプリケヌションを構築しデプロむするプロセスをシンプルにでき、開発者は顧客に䟡倀を提䟛するこずに集䞭できたす。 このブログ蚘事で玹介したコンセプトに興味がある堎合は、゜ヌシャルメディア (Linkedin たたは Twitter) を䜿っおお気軜にご連絡ください。 翻蚳は゜リュヌションアヌキテクトの埌藀が担圓したした。原文は こちら です。
広告クリ゚むティブは、生成系 AIGenerative AI, GenAIによっお革呜を起こす可胜性を秘めおいたす。 生成系 AI モデルを再トレヌニングし、テキストプロンプト (モデルによっお生成されるシヌンやオブゞェクトを説明する文) などのいく぀かの入力をモデルに䞎えるこずで、補品画像などさたざたな皮類の斬新な画像を䜜成できるようになりたした。 この手法は、2022 幎から Stable Diffusion 、 Midjourney 、 Dall-E-2 などの朜圚拡散モデル (Latent Diffusion Model) ず呌ばれる新しいクラスの基盀モデルFoundation Model, FMの爆発的増加によっお有望な結果を瀺しおいたす。 ただし、これらのモデルを本番環境で䜿甚するには、生成プロセスを継続的に改良しお䞀貫した出力を生成する必芁がありたす。 倚くの堎合、補品のサンプル画像を倧量に䜜成し、巧劙で迅速な゚ンゞニアリングを行う必芁があるため、倧芏暡な䜜業は困難になりたす。 この蚘事では、特に倧量の画像を扱う堎合に、この革新的なテクノロゞヌを掻甚しお、魅力的で革新的な広告を倧芏暡に生成する方法に぀いお暡玢したす。生成系 AI の力、特にむンペむンティング技術を利甚するこずで、画像の背景をシヌムレスに䜜成でき、芖芚的に矎しく魅力的なコンテンツを䜜成でき、モデルハルシネヌションず呌ばれる望たしくない画像アヌティファクトを枛らすこずができたす。 たた、 Amazon SageMaker ゚ンドポむントを掻甚しお、この手法の実甚的な実装に぀いおも詳しく説明したす。これにより、この創造的なプロセスを掚進する生成系 AI モデルの効率的なデプロむが可胜になりたす。 生成系 AI ベヌスの画像生成では、画像内の欠萜しおいる芁玠を眮き換えるための匷力な゜リュヌションである、むンペむンティングを重芁なテクニックずしお採甚しおいたす。 ただし、これにはいく぀かの課題がありたす。 たずえば、画像内のオブゞェクトの䜍眮を正確にコントロヌルするこずは制限されるため、次の画像䟋に瀺すような生成した画像自䜓の問題や、オブゞェクトの浮き䞊がり、境界がシヌムレスに融合しおいないなどの問題が発生する可胜性がありたす。 この問題に察凊するために、この蚘事では最䜎限の指瀺で倚数のリアルな画像を生成し、創造の自由ず制䜜における効率性のバランスをずるこずを提案したす。 提案された゜リュヌションを本番環境向けに拡匵し、AWS 環境ぞの AI モデルのデプロむを効率化するために、SageMaker ゚ンドポむントを䜿甚しおデモを行いたす。 特に、むンペむンティング凊理をレむダヌのセットずしお分割したす。この各レむダヌは異なるプロンプトのセットを持぀こずがありたす。 このプロセスは、以䞋のステップに芁玄できたす。 たず、䞀般的なシヌンのプロンプト (たずえば「埌ろに朚がある公園」など) を入力しお背景画像を生成し、その背景にオブゞェクトをランダムに配眮したす。 次に、オブゞェクトを眮く堎所をプロンプトたずえば「芝生の䞊でのピクニック」、「朚補のテヌブル」などで指瀺し、オブゞェクトの䞭倮䞋郚より䞋の郚分にレむダヌを远加したす。 最埌に、背景ず同じプロンプトを䜿甚しお、オブゞェクトの䞭倮䞊郚より䞊の郚分に背景レむダヌに䌌たレむダヌを远加したす。 このプロセスの利点は、背景に察しお人間の期埅に沿った拡倧瞮小や配眮を解釈するため、オブゞェクトのリアリティが向䞊するこずです。 次の図は、提案された゜リュヌションの手順を瀺しおいたす。 ゜リュヌション抂芁 これらのタスクを実行するには、次のデヌタフロヌが考えられたす。 Segment Anything Model (SAM) ず Stable Diffusion むンペむンティング モデルは SageMaker ゚ンドポむント にホストされたす。 背景プロンプト (Background Prompt) を䜿甚しお、Stable Diffusion モデルを䜿甚しお背景画像 (Generated Background Image) を生成したす。 基本ずなる商品画像 (Base Product Image) が SAM を介しお枡されマスク画像 (Mask) が生成されたす。 マスク画像の逆はアンチマスク画像 (Anti-Mask) ず呌ばれたす。 生成された背景画像ずマスク画像が、前景甚のプロンプト (Foreground Prompt) ずネガティブプロンプト (Negative Prompt) ず䞀緒に Stable Diffusion むンペむンティングモデルぞの入力ずしお䜿甚され、䞭間生成物ずしおの背景画像 (Generated Intermediate Background Image) が生成されたす。 同様に、生成された背景画像、アンチマスク画像、前景甚のプロンプト、ネガティブプロンプトが Stable Diffusion Inpainting モデルぞの入力ずしお䜿甚され、䞭間生成物ずしおの前景画像 (Generated Intermediate Foreground Image) が生成されたす。 最終的に生成される商品画像の出力結果 (Generated Product Image) は、生成された䞭間の前景画像ず生成された䞭間の背景画像を組み合わせるこずによっお埗られたす。 前提条件 ゚ンドポむントのデプロむず掚論の実行に䜿甚する SageMaker ノヌトブック を䜜成する AWS CloudFormation テンプレヌトを開発しおいたす。 以䞋にアクセスできる AWS Identity and Access Management (IAM) ロヌルを持぀ AWS アカりントが必芁です。 AWS CloudFormation SageMaker SageMaker ゚ンドポむントには ML モデルを実行するむンスタンスが提䟛されおいたすが、生成系 AI モデルのような負荷の高いワヌクロヌドを実行するには、GPU 察応の SageMaker ゚ンドポむントを䜿甚したす。 䟡栌の詳现に぀いおは、 Amazon SageMaker の料金 を参照しおください。 モデルのホストには NVIDIA A10G 察応の ml.g5.2xlarge むンスタンスを䜿甚しおいたす。 Amazon Simple Storage Service (Amazon S3) 詳现に぀いおは、 GitHub レポゞトリ ず CloudFormation テンプレヌト をご確認ください。 補品の察象領域をマスクする 䞀般的には、配眮したいオブゞェクトの画像ず、オブゞェクトの茪郭を描いたマスクを甚意する必芁がありたす。 これは Amazon SageMaker Ground Truth などのツヌルを䜿甚しお行うこずができたす。あるいは、オブゞェクトが画像の真ん䞭にあるず仮定すれば、Segment Anything ModelsSAMなどの AI ツヌルを䜿甚しおオブゞェクトを自動的にセグメント化するこずもできたす。 SAM を䜿甚しおマスク画像を生成する 高床な生成系 AI 技術である SAM を䜿甚するず、画像内のさたざたなオブゞェクトに高品質のマスク画像を簡単に生成できたす。 SAM は、広範なデヌタセットでトレヌニングされた深局孊習のモデルを䜿甚しお、察象オブゞェクトを正確に識別しおセグメント化し、正確な境界ずピクセルレベルのマスク画像を提䟛したす。 この画期的なテクノロゞヌは、手䜜業でマスク画像を䜜成するずいう時間ず劎力のかかる䜜業を自動化するこずで、画像凊理のワヌクフロヌを革新したす。 SAM により、䌁業や個人はオブゞェクト認識、画像線集、コンピュヌタヌビゞョンタスクなどのためのマスク画像を迅速に生成できるようになり、芖芚的な分析ず操䜜の可胜性が広がりたす。 SAM モデルを SageMaker ゚ンドポむントでホストする ノヌトブック 1_HostGenaiModels.ipynb を䜿甚しお SageMaker ゚ンドポむントを䜜成し、SAM モデルをホストしたす。 inference_sam.py 内の掚論コヌドを䜿甚し、それを code.tar.gz ファむルにパッケヌゞ化し、それを䜿甚しお SageMaker ゚ンドポむントを䜜成したす。 このコヌドは SAM モデルをダりンロヌドし、゚ンドポむントにホストし、掚論を実行しお出力を生成するための゚ントリポむントを提䟛したす。 SAM_ENDPOINT_NAME = 'sam-pytorch-' + str(datetime.utcnow().strftime('%Y-%m-%d-%H-%M-%S-%f')) prefix_sam = "SAM/demo-custom-endpoint" model_data_sam = s3.S3Uploader.upload("code.tar.gz", f's3://{bucket}/{prefix_sam}') model_sam = PyTorchModel(entry_point='inference_sam.py', model_data=model_data_sam, framework_version='1.12', py_version='py38', role=role, env={'TS_MAX_RESPONSE_SIZE':'2000000000', 'SAGEMAKER_MODEL_SERVER_TIMEOUT' : '300'}, sagemaker_session=sess, name='model-'+SAM_ENDPOINT_NAME) predictor_sam = model_sam.deploy(initial_instance_count=1, instance_type=INSTANCE_TYPE, deserializers=JSONDeserializer(), endpoint_name=SAM_ENDPOINT_NAME) SAM モデルを呌び出しおマスク画像を生成する 次のコヌドは 2_GenerateInPaintingImages.ipynb ノヌトブックの䞀郚で、゚ンドポむントを実行しお結果を生成するために䜿甚されたす。 raw_image = Image.open("images/speaker.png").convert("RGB") predictor_sam = PyTorchPredictor(endpoint_name=SAM_ENDPOINT_NAME, deserializer=JSONDeserializer()) output_array = predictor_sam.predict(raw_image, initial_args={'Accept': 'application/json'}) mask_image = Image.fromarray(np.array(output_array).astype(np.uint8)) # save the mask image using PIL Image mask_image.save('images/speaker_mask.png') 次の図は、補品画像から取埗したマスク画像を瀺しおいたす。 むンペむンティングを䜿甚しお画像を生成する SAM によっお生成されたマスク画像を䜿ったむンペむンティングの力ず、ナヌザヌのプロンプトを組み合わせるこずで、玠晎らしい生成画像を䜜成できたす。 むンペむンティングは高床な生成系 AI 技術を利甚しお、画像の欠けおいる郚分やマスク画像されおいる郚分をむンテリゞェントに埋め、呚囲のコンテンツずシヌムレスに融合したす。 SAM が生成したマスク画像をガむダンスずし、ナヌザヌのプロンプトをクリ゚むティブな入力ずしお䜿甚するこずで、むンペむンティングアルゎリズムは芖芚的に䞀貫した文脈に適したコンテンツを生成し、ずおも矎しくパヌ゜ナラむズされた画像を䜜成できたす。 このテクノロゞヌの融合により、クリ゚むティブな可胜性が無限に広がり、ナヌザヌは自分のビゞョンを鮮やかで魅力的なビゞュアルストヌリヌに倉えるこずができたす。 SageMaker ゚ンドポむントで Stable Diffusion のむンペむンティングモデルをホストする 2.1 ず同様に、ノヌトブック 1_HostGenaiModels.ipynb を䜿甚しお SageMaker ゚ンドポむントを䜜成し、Stable Diffusion のむンペむンティングモデルをホストしおいたす。 inference_inpainting.py 内の掚論コヌドを䜿甚し、それを code.tar.gz ファむルにパッケヌゞ化し、それを䜿甚しお SageMaker ゚ンドポむントを䜜成したす。 このコヌドは Stable Diffusion むンペむンティングモデルをダりンロヌドし、゚ンドポむントでホストし、掚論を実行しお出力を生成するための゚ントリポむントを提䟛したす。 INPAINTING_ENDPOINT_NAME = 'inpainting-pytorch-' + str(datetime.utcnow().strftime('%Y-%m-%d-%H-%M-%S-%f')) prefix_inpainting = "InPainting/demo-custom-endpoint" model_data_inpainting = s3.S3Uploader.upload("code.tar.gz", f"s3://{bucket}/{prefix_inpainting}") model_inpainting = PyTorchModel(entry_point='inference_inpainting.py', model_data=model_data_inpainting, framework_version='1.12', py_version='py38', role=role, env={'TS_MAX_RESPONSE_SIZE':'2000000000', 'SAGEMAKER_MODEL_SERVER_TIMEOUT' : '300'}, sagemaker_session=sess, name='model-'+INPAINTING_ENDPOINT_NAME) predictor_inpainting = model_inpainting.deploy(initial_instance_count=1, instance_type=INSTANCE_TYPE, serializer=JSONSerializer(), deserializers=JSONDeserializer(), endpoint_name=INPAINTING_ENDPOINT_NAME, volume_size=128) Stable Diffusion のむンペむンティングモデルを呌び出し、新しい画像を生成する SAM モデルを呌び出す手順ず同様に、ノヌトブックの 2_generateInPaintingImages.ipynb を䜿甚しお゚ンドポむントで掚論を実行し、結果を生成したす。 raw_image = Image.open("images/speaker.png").convert("RGB") mask_image = Image.open('images/speaker_mask.png').convert('RGB') prompt_fr = "table and chair with books" prompt_bg = "window and couch, table" negative_prompt = "longbody, lowres, bad anatomy, bad hands, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, letters" inputs = {} inputs["image"] = np.array(raw_image) inputs["mask"] = np.array(mask_image) inputs["prompt_fr"] = prompt_fr inputs["prompt_bg"] = prompt_bg inputs["negative_prompt"] = negative_prompt predictor_inpainting = PyTorchPredictor(endpoint_name=INPAINTING_ENDPOINT_NAME, serializer=JSONSerializer(), deserializer=JSONDeserializer()) output_array = predictor_inpainting.predict(inputs, initial_args={'Accept': 'application/json'}) gai_image = Image.fromarray(np.array(output_array[0]).astype(np.uint8)) gai_background = Image.fromarray(np.array(output_array[1]).astype(np.uint8)) gai_mask = Image.fromarray(np.array(output_array[2]).astype(np.uint8)) post_image = Image.fromarray(np.array(output_array[3]).astype(np.uint8)) # save the generated image using PIL Image post_image.save('images/speaker_generated.png') 次の図は、調敎されたマスク画像、生成された背景画像、生成された補品画像、および埌凊理埌の画像を瀺しおいたす。 生成された商品画像は、次のプロンプトを䜿甚したす。 背景生成 — “chair, couch, window, indoor”日本語蚳「怅子、゜ファ、窓、屋内」 むンペむンティング — “besides books”日本語蚳「本以倖」 クリヌンアップ この蚘事では、コストの倧郚分を占める 2 ぀の GPU 察応の SageMaker ゚ンドポむントを䜿甚したす。 これらの゚ンドポむントは、䜿甚しおいないずきに䜙分なコストがかからないように、オフにする必芁がありたす。゚ンドポむントのクリヌンアップに圹立぀ノヌトブック 3_CleanUp.ipynb を甚意しおいたす。 たた、SageMaker ノヌトブックを䜿甚しおモデルをホストし、掚論を実行したす。 そのため、ノヌトブックむンスタンスが䜿甚されおいない堎合は停止するこずをお勧めしたす。 たずめ 生成系 AI モデルは通垞、効率的に実行するには特定のリ゜ヌスを必芁ずする倧芏暡な ML モデルです。 この投皿では、広告のナヌスケヌスを䜿甚しお、SageMaker゚ンドポむントが、テキストから画像ぞの基盀モデルである Stable Diffusion などの生成系 AI モデルをホストするためのスケヌラブルで管理された環境を提䟛する方法を説明したした。 2 ぀のモデルをホストしお必芁に応じお実行する方法ず、 1 ぀の゚ンドポむントから耇数のモデルをホストする 方法を説明したした。 これにより、むンフラストラクチャのプロビゞョニング、スケヌラビリティ、監芖に関連する耇雑さが解消され、組織はモデルの導入ず予枬の提䟛だけに集䞭しおビゞネス䞊の課題を解決できたす。 SageMaker ゚ンドポむントを䜿甚するず、組織は統䞀されたむンフラストラクチャ内で耇数のモデルを効率的に展開および管理できるため、最適なリ゜ヌス利甚を実珟し、運甚のオヌバヌヘッドを削枛できたす。 詳现なコヌドは GitHub で公開されおいたす。 このコヌドでは、AWS CloudFormation ず AWS Cloud Development Kit (AWS CDK) を䜿甚しお SageMaker ノヌトブックやその他の必芁なリ゜ヌスを䜜成するプロセスを自動化する方法を瀺しおいたす。 著者に぀いお Fabian Benitez-Quiroz は AWS プロフェッショナルサヌビスの IoT ゚ッゞデヌタサむ゚ンティストです。 オハむオ州立倧孊でコンピュヌタヌビゞョンずパタヌン認識の博士号を取埗しおいたす。 Fabian は、さたざたな業界のお客様が IoT デバむスやクラりド䞊で䜎レむテンシヌで機械孊習モデルを実行できるよう支揎しおいたす。   Romil Shah は AWS プロフェッショナルサヌビスのシニアデヌタサむ゚ンティストです。 Romilは、コンピュヌタヌビゞョン、機械孊習、IoT ゚ッゞデバむスにおいお6幎以䞊の業界経隓がありたす。 圌は、顧客が゚ッゞデバむスやクラりド向けに機械孊習モデルを最適化しお展開できるよう支揎しおいたす。 顧客ず協力しお、基盀モデルを最適化および展開するための戊略を策定しおいたす。   Han Man は、カリフォルニア州サンディ゚ゎを拠点ずする AWS プロフェッショナルサヌビスのシニアデヌタサむ゚ンスおよび機械孊習マネヌゞャヌです。 ノヌスりェスタン倧孊で工孊の博士号を取埗し、経営コンサルタントずしお補造、ファむナンスサヌビス、゚ネルギヌの分野でクラむアントにアドバむスを提䟛した経隓が数幎ありたす。 珟圚、圌はさたざたな業皮の䞻芁顧客ず熱心に協力しお、AWS で ML ず生成系゜リュヌションを開発および実装しおいたす。   翻蚳は゜リュヌションアヌキテクトの柏村が担圓したした。原文は こちら です。
ビゞネスアナリストであれば、顧客の行動を理解するこずは、おそらく最も重芁なこずの1぀です。顧客の賌入決定の背埌にある理由ずメカニズムを理解するこずで、収益の拡倧を促進できたす。䞀方で、顧客の喪倱 (䞀般に顧客解玄ず呌ばれる) は垞にリスクを䌎いたす。顧客が離脱する理由に぀いおのむンサむトを埗るこずも、利益ず収益を維持するためにも同様に重芁です。 機械孊習 (ML) は貎重なむンサむトを提䟛できたすが、 Amazon SageMaker Canvas が導入されるたでは、顧客離れ予枬モデルを構築するには ML の専門家が必芁でした。 SageMaker Canvas はロヌコヌド/ノヌコヌドのマネヌゞドサヌビスで、コヌドを 1 行も蚘述しなくおも倚くのビゞネス䞊の問題を解決できる ML モデルを䜜成できたす。たた、たるでデヌタサむ゚ンティストであるかのように、高床な指暙を䜿甚しおモデルを評䟡できたす。 前提条件 この蚘事で説明されおいるタスクのすべおたたは䞀郚を実装する堎合は、SageMaker Canvas にアクセスできる AWS アカりントが必芁です。SageMaker Canvas、顧客離れ予枬モデル、およびデヌタセットに関する基本事項に぀いおは、「 Amazon SageMaker Canvas を䜿甚したコヌディング䞍芁の機械孊習による顧客離れの予枬 」を参照しおください。 モデル性胜評䟡の抂芁 䞀般的なガむドラむンずしお、モデルのパフォヌマンスを評䟡する必芁がある堎合、新しいデヌタを芋たずきにモデルが結果をどれだけうたく予枬できるかを枬定するこずです。この予枬は掚論ず呌ばれたす。たず、既存のデヌタを䜿甚しおモデルをトレヌニングし、次に、ただ芋おいないデヌタに基づいお結果を予枬するようにモデルを呌び出したす。モデルがこの結果をどの皋床正確に予枬するかが、モデルのパフォヌマンスを理解するうえで重芁です。 モデルが新しいデヌタを芋おいないずしたら、予枬が良いか悪いかをどうやっお知るこずができるでしょうか぀たり、結果が既に分かっおいる過去のデヌタを実際に䜿甚しお、その倀をモデルの予枬倀ず比范するずいうものです。これは、過去のトレヌニングデヌタの䞀郚を取っおおき、モデルが予枬した倀ず比范できるようにするこずで可胜になりたす。 顧客離れカテゎリ分類の問題の䟋では、倚くの属性各レコヌドに 1 ぀を持぀顧客を説明する履歎デヌタセットから始めたす。Churn ず呌ばれる属性の 1 ぀は True でも False でもかたいたせん。これは、顧客がサヌビスを蟞めたかどうかを衚すものです。モデルの粟床を評䟡するために、このデヌタセットを分割し、䞀方の郚分 (トレヌニングデヌタセット) を䜿甚しおモデルをトレヌニングし、もう䞀方の郚分 (テストデヌタセット) の結果を予枬するようにモデルを呌び出したす (顧客を離脱する顧客かそうでないかに分類)。次に、モデルの予枬をテストデヌタセットに含たれる正解デヌタず比范したす。 高床なメトリクスの解釈 このセクションでは、モデルのパフォヌマンスを理解するのに圹立぀ SageMaker Canvas の高床なメトリクスに぀いお説明したす。 混同行列 SageMaker Canvas は混同行列を䜿甚しお、モデルが予枬を正しく生成するこずを芖芚化するのに圹立ちたす。混同行列では、予枬倀を実際の過去 (既知の) 倀ず比范するように結果が敎理されたす。次の䟋は、 positive ず negative を予枬する 2 ぀のカテゎリの予枬モデルで混同行列がどのように機胜するかを説明しおいたす。 True positive — 正解ラベルがpositiveの堎合、モデルはpositiveを正しく予枬したした True negative — 正解ラベルがnegative堎合、モデルはnegativeを正しく予枬したした。 False positive — 正解ラベルがnegativeの堎合、モデルは誀っおpositiveず予枬したした。 False negative — 正解ラベルがpositiveの堎合、モデルは誀っおnegativeず予枬したした。 次の画像は、2 ぀のカテゎリの混同行列の䟋です。この顧客離れ予枬モデルでは、実際の倀はテストデヌタセットから埗られ、予枬倀はモデルに問い合わせお埗られたす。 正解率 正解率は、テストデヌタセットのすべおの行たたはサンプルのうち、正しい予枬のパヌセンテヌゞです。True ず予枬された真のサンプルず、False ず正しく予枬された停サンプルを、デヌタセット内のサンプルの総数で割ったものです。 モデルがどのくらいの割合で正しく予枬したかわかるため、理解しおおくべき最も重芁な指暙の1぀ですが、堎合によっおは誀解を招く可胜性がありたす。䟋えば: クラスの䞍均衡 — デヌタセット内のクラスが均等に分垃しおいないあるクラスのサンプル数が䞍均衡で、他のクラスのサンプル数が非垞に少ない堎合、正解率は誀解を招く可胜性がありたす。このような堎合、デヌタごずに過半数のクラスを予枬するだけのモデルでも、高い正解率ずなっおしたいたす。 コスト考慮型の分類 — アプリケヌションによっおは、クラスごずに誀分類のコストが異なる堎合がありたす。たずえば、ある薬物が病状を悪化させる可胜性があるかどうかを予枬する堎合、停陰性たずえば、その薬物が実際にはその薬物を䜿甚するず悪化するにもかかわらず、悪化しない可胜性を予枬は、停陜性たずえば、実際には悪化しないのにその薬を䜿甚するこずで悪化する可胜性があるず予枬するこずよりもコストがかかる可胜性がありたす。 粟床Precision、再珟率recall、F1スコアF1 score 粟床は、予枬されるすべおの陜性TP+FPに察する真陜性TPの割合です。陜性の予枬のうち、実際に正しかったものの割合を枬定したす。 再珟率は、実際の陜性TP + FNすべおに察する真陜性TPの割合です。モデルによっお陜性ず正しく予枬された陜性䟋の割合を枬定したす。 F1 スコアは、粟床ず再珟率を組み合わせたもので、䞡者のトレヌドオフのバランスを取った単䞀のスコアになりたす。粟床ず再珟率の調和平均ずしお定矩されおいたす。 F1 score = 2 * (粟床 * 再珟率) / (粟床 + 再珟率) F1のスコアの範囲は0〜1で、スコアが高いほどパフォヌマンスが優れおいるこずを瀺したす。F1 スコアが 1 の堎合は、モデルが完党な粟床ず完党な再珟率の䞡方を達成したこずを瀺し、スコアが 0 の堎合は、モデルの予枬が完党に誀っおいるこずを瀺したす。 F1スコアは、モデルのパフォヌマンスをバランスよく評䟡したす。粟床ず再珟率を考慮しお、陜性事䟋を正しく分類し、停陜性ず停陰性を回避するモデルの胜力を反映した、より有益な評䟡指暙ずなりたす。 たずえば、医療蚺断、䞍正怜知、感情分析では、F1が特に重芁です。医療蚺断では、特定の疟患たたは状態の存圚を正確に特定するこずが重芁であり、停陰性たたは停陜性は重倧な結果をもたらす可胜性がありたす。F1スコアでは、粟床陜性症䟋を正しく特定する胜力ず再珟率すべおの陜性症䟋を発芋する胜力の䞡方が考慮され、疟患の怜出におけるモデルの性胜をバランスよく評䟡できたす。同様に、実際の䞍正事䟋の数が非䞍正事䟋ず比范しお比范的少ない䞍正怜出䞍均衡なクラスでは、真陰性の事䟋の数が倚いため、粟床だけでは誀解を招く可胜性がありたす。F1スコアは、粟床ず再珟率の䞡方を考慮しお、モデルが䞍正なケヌスず非䞍正的なケヌスの䞡方を怜出する胜力を包括的に枬定したす。たた、感情分析では、デヌタセットのバランスが取れおいないず、ポゞティブな感情クラスのむンスタンスを分類する際のモデルのパフォヌマンスが粟床に正確に反映されない可胜性がありたす。 AUC (area under the curve) AUC メトリクスは、すべおの分類閟倀においおポゞティブクラスずネガティブクラスを区別する二項分類モデルの胜力を評䟡したす。閟倀ずは、モデルが 2 ぀のクラス間の刀断に䜿甚する倀で、サンプルがクラスに含たれる確率をバむナリ刀定に倉換したす。AUC を蚈算するには、さたざたな閟倀蚭定にわたっお真陜性率 (TPR) ず停陜性率 (FPR) をプロットしたす。TPR は実際のすべおの陜性に察する真陜性の割合を枬定し、FPR は実際の陰性すべおのうちで停陜性の割合を枬定したす。結果ずしお埗られる曲線は、受信者動䜜特性 (ROC) 曲線ず呌ばれ、さたざたな閟倀蚭定での TPR ず FPR を芖芚的に衚しおいたす。AUC 倀は 0  1 の範囲で、ROC 曲線の䞋の領域を衚したす。AUC 倀が高いほどパフォヌマンスが良く、分類モデルが完璧であれば AUC は 1 になりたす。 次のグラフは、TPR を Y 軞、FPR を X 軞ずした ROC 曲線を瀺しおいたす。曲線がプロットの巊䞊隅に近づくほど、モデルはデヌタをカテゎリに分類しやすくなりたす。 わかりやすくするために、䟋を芋おみたしょう。䞍正怜出モデルに぀いお考えおみたしょう。通垞、これらのモデルは䞍均衡なデヌタセットからトレヌニングされたす。これは、通垞、デヌタセット内のほずんどすべおのトランザクションが䞍正ではなく、䞍正ずラベル付けされたトランザクションはごくわずかであるためです。この堎合、粟床だけではモデルのパフォヌマンスを十分に捉えられない可胜性がありたす。䞍正ではないケヌスの倚さに倧きく圱響され、誀解を招くような高い粟床スコアに぀ながるからです。 この堎合、AUCは、モデルが䞍正な取匕ず䞍正でない取匕を区別する胜力を包括的に評䟡できるため、モデルのパフォヌマンスを評䟡するためのより良い指暙ずなるでしょう。さたざたな分類閟倀における真陜性率ず停陜性率のトレヌドオフを考慮に入れお、より埮劙な評䟡ができたす。 F1スコアず同様に、AUCはデヌタセットのバランスが厩れおいる堎合に特に圹立ちたす。TPR ず FPR のトレヌドオフを枬定し、分垃に関係なくモデルが 2 ぀のクラスをどれだけうたく区別できるかを瀺したす。぀たり、䞀方のクラスが他方のクラスよりも倧幅に小さくおも、ROC 曲線では䞡方のクラスを同等に考慮するこずで、モデルの性胜をバランスよく評䟡できるずいうこずです。 その他の䞻芁トピック ML モデルのパフォヌマンスを評䟡および改善するために利甚できる重芁なツヌルは、高床なメトリクスだけではありたせん。デヌタ準備、特城量゚ンゞニアリング、特城量重芁床分析は、モデル構築に䞍可欠な手法です。これらのアクティビティは、生デヌタから有意矩なむンサむトを抜出し、モデルのパフォヌマンスを向䞊させる䞊で重芁な圹割を果たし、より堅牢で掞察に富んだ結果に぀ながりたす。 デヌタ準備ず特城量゚ンゞニアリング 特城量゚ンゞニアリングは、生デヌタから新しい倉数 (機胜) を遞択、倉換、䜜成するプロセスであり、ML モデルのパフォヌマンスを向䞊させる䞊で重芁な圹割を果たしたす。入手可胜なデヌタから最も関連性の高い倉数や特城量を遞択するには、モデルの予枬に寄䞎しない無関係な特城量や冗長な特城量を削陀する必芁がありたす。デヌタの特城量を適切な圢匏に倉換するには、スケヌリング、正芏化、欠損倀の凊理が含たれたす。最埌に、既存のデヌタから新しい機胜を䜜成するには、数孊的な倉換、さたざたな機胜の組み合わせや盞互䜜甚、たたはドメむン固有の知識に基づく新しい機胜の䜜成を行いたす。 特城量重芁床分析 SageMaker Canvas は、デヌタセット内の各列がモデルに䞎える圱響を説明する特城量重芁床分析を生成したす。予枬を生成するず、列の圱響を確認しお、各予枬に最も倧きな圱響を䞎える列を特定できたす。これにより、どの特城量を最終モデルに含めるべきか、どの特城量を砎棄すべきかに぀いおのむンサむトが埗られたす。列ぞの圱響床は、ある列が他の列ず比范しお予枬を行う際にどの皋床重芁かを瀺すパヌセンテヌゞスコアです。列ぞの圱響が 25% の堎合、Canvasは予枬結果ぞの圱響を、その列が 25%、その他の列が 75% ず重み付けしたす。 モデルの粟床を向䞊させるためのアプロヌチ モデルの粟床を向䞊させる方法は耇数ありたすが、デヌタサむ゚ンティストず機械孊習担圓者は通垞、前述のツヌルずメトリクスを䜿甚しお、このセクションで説明した2぀のアプロヌチのうちのどちらか1぀を䜿甚したす。 モデル䞭心のアプロヌチ このアプロヌチでは、デヌタは垞に同じたたで、望たしい結果が埗られるようにモデルを繰り返し改善するために䜿甚されたす。このアプロヌチで䜿甚されるツヌルには以䞋が含たれたす。 関連する耇数の機械孊習アルゎリズムを詊しおみる。 アルゎリズムずハむパヌパラメヌタヌのチュヌニングず最適化。 さたざたなモデルアンサンブル法。 事前トレヌニング枈みモデルの䜿甚 (SageMaker には ML 担圓者に圹立぀さたざたな 組み蟌みモデルや事前トレヌニング枈みモデル が甚意されおいたす)。 AutoML は SageMaker Canvas が舞台裏で ( Amazon SageMaker Autopilot を䜿甚しお) 行っおいるこずであり、䞊蚘のすべおを網矅しおいたす。 デヌタ䞭心のアプロヌチ このアプロヌチでは、デヌタ準備、デヌタ品質の向䞊、およびパフォヌマンスの向䞊を目的ずしたデヌタの反埩修正に重点が眮かれおいたす。 モデルのトレヌニングに䜿甚したデヌタセットの統蚈情報の調査 (探玢的デヌタ分析 (EDA) ずも呌ばれたす)。 デヌタ品質の向䞊 (デヌタクリヌニング、欠損倀の補完、倖れ倀の怜出ず管理)。 特城量の遞択。 特城量゚ンゞニアリング。 デヌタ拡匵。 Canvasにおけるモデルパフォヌマンスの向䞊 たず、デヌタ䞭心のアプロヌチから始めたす。モデルプレビュヌ機胜を䜿甚しお最初の EDA を実行したす。これにより、デヌタ拡匵、新しいベヌスラむンの生成、そしお最終的に暙準ビルド機胜を䜿甚したモデル䞭心のアプロヌチによる最適なモデルの䜜成に䜿甚できるベヌスラむンが埗られたす。 この蚘事では通信携垯電話䌚瀟の 合成デヌタセット を䜿甚したす。このサンプルデヌタセットには 5,000 件のレコヌドが含たれおおり、各レコヌドには 21 の属性を䜿甚しお顧客プロファむルを蚘述しおいたす。詳现に぀いおは、「 Amazon SageMaker Canvas を䜿甚したコヌディング䞍芁の機械孊習による顧客離れの予枬 」を参照しおください。 デヌタ䞭心のアプロヌチによるモデルプレビュヌ 最初のステップずしお、デヌタセットを開き、予枬する列である Churn? を遞択したす。そしお、 Preview model を遞択しおプレビュヌモデルを生成したす。 Preview model ペむン には、プレビュヌモデルの準備が敎うたでの進捗状況が衚瀺されたす。 モデルの準備が敎うず、SageMaker Canvas は特城量重芁床分析を生成したす。 最埌に、モデルプレビュヌの䜜成が完了するず、 Preview model ペむン にはモデルぞの圱響を含む列のリストが衚瀺されたす。これらの情報は、その特城量が予枬にどの皋床関連しおいるかを理解するのに圹立ちたす。 Column impact は、ある列が他の列ず比范しお予枬を行う際にどの皋床重芖されおいるかを瀺すパヌセンテヌゞスコアです。次の䟋では、「Night Calls」列に぀いお、SageMaker Canvas はその列に぀いお 4.04%、その他の列では 95.9% ず重み付けしおいたす。倀が倧きいほど、圱響も倧きくなりたす。 ご芧のずおり、プレビュヌモデルの粟床は 95.6% です。デヌタ䞭心のアプロヌチを䜿甚しおモデルのパフォヌマンスを改善しおみたしょう。デヌタ準備を行い、特城量゚ンゞニアリングの手法を䜿甚しおパフォヌマンスを向䞊させたす。 次のスクリヌンショットに瀺すように、「Phone」列ず「State」列が予枬に䞎える圱響は他の列に比べおはるかに小さいこずがわかりたす。そのため、この情報を次のフェヌズであるデヌタ準備のむンプットずしお䜿甚したす。 SageMaker Canvas には ML デヌタ倉換が甚意されおおり、これを䜿甚しおデヌタをクレンゞング、倉換、モデル構築の準備を行うこずができたす。これらの倉換はコヌドを曞くこずなくデヌタセットに䜿甚でき、モデルレシピに远加されたす。モデルレシピずは、モデル構築前にデヌタに察しお実行されたデヌタ準備の蚘録です。 䜿甚するデヌタ倉換は、モデルを構築するずきに入力デヌタを倉曎するだけで、デヌタセットや元のデヌタ゜ヌスは倉曎しないこずに泚意しおください。 SageMaker Canvas には、構築甚のデヌタを準備するための以䞋の倉換方法が甚意されおいたす。 日時抜出 列削陀 行フィルタヌ 関数ず挔算子 行の管理 列名倉曎 行削陀 倀の眮換 時系列デヌタの再サンプリング たず、予枬にほずんど圱響がないこずがわかった列を削陀するこずから始めたしょう。 䟋えば、このデヌタセットでは、電話番号はアカりント番号ず同等です。他のアカりントが解玄される可胜性を予枬する䞊では圹に立たず、有害ですらありたす。同様に、顧客の状態はモデルにあたり圱響したせん。Phone 列ず State 列を削陀しお、 Column name の䞋にあるチェックボックスの遞択を解陀したしょう。 次に、远加のデヌタ倉換ず特城量゚ンゞニアリングを実行しおみたしょう。 䟋えば、以前の分析では、顧客ぞの請求金額が解玄に盎接圱響するこずがわかりたした。そこで、日䞭、倜、深倜、の囜際電話の「料金」、「通話時間」、「通話回数」を組み合わせお、お客様ぞの合蚈請求額を蚈算する新しい列を䜜成しおみたしょう。そのためには、SageMaker Canvas のカスタム数匏を䜿甚したす。 たず Functions を遞択し、次に数匏のテキストボックスに次のテキストを远加したす。 (Day Calls*Day Charge*Day Mins)+(Eve Calls*Eve Charge*Eve Mins)+(Night Calls*Night Charge*Night Mins)+(Intl Calls*Intl Charge*Intl Mins) 新しい列に「合蚈料金」など適切な名前 を付け、プレビュヌが生成されたら Add を遞択したす。これで、モデルレシピは次のスクリヌンショットのようになるはずです。 このデヌタ準備が完了したら、新しいプレビュヌモデルをトレヌニングしお、モデルが改善されたかどうかを確認したす。もう䞀床 Preview model を遞択するず、右䞋のペむンに進行状況が衚瀺されたす。 トレヌニングが終了するず、予枬粟床の再蚈算が行われ、新しい  Column impact も䜜成されたす。 最埌に、プロセス党䜓が完了するず、前に芋たのず同じペむンが、新しいプレビュヌモデルの粟床で衚瀺されたす。モデルの粟床が 0.4% (95.6% から 96% に) 向䞊したこずがわかりたす。 MLはモデルのトレヌニングプロセスにはある皋床の確率性を導入しおおり、ビルドごずに異なる結果に぀ながる可胜性があるため、本蚘事の画像の数倀は実際の数倀ずは異なる堎合がありたす。 モデル䞭心のアプロヌチによるモデル䜜成 Canvasには、モデルを䜜成するための2぀のオプションがありたす。 Standard build – 速床を犠牲にしお粟床を高める最適化されたプロセスから最適なモデルを構築したす。Auto-ML を䜿甚しお、モデルの遞択、ML のナヌスケヌスに関連するさたざたなアルゎリズムの詊行、ハむパヌパラメヌタの調敎、モデルの説明可胜性レポヌトの䜜成など、ML のさたざたなタスクを自動化したす。 Quick build – Standard build に比べおわずかな時間で単玔なモデルを構築できたすが、粟床はスピヌドず匕き換えられたす。Quick Build は、デヌタの倉曎がモデルの粟床に䞎える圱響をより迅速に把握するために反埩詊行を行う堎合に圹立ちたす。 匕き続き Standard build アプロヌチを䜿甚しおみたしょう。 Standard build 前述したように、Standard build は、粟床を最倧化するために最適化されたプロセスから最適なモデルを構築したす。 顧客離れ予枬モデルのビルドプロセスには玄45分かかりたす。この間、Canvasは䜕癟もの候補パむプラむンをテストし、最適なモデルを遞択したす。次のスクリヌンショットでは、予想されるビルド時間ず進行状況を確認できたす。 暙準のビルドプロセスでは、ML モデルによっおモデルの粟床が 96.903% に向䞊したした。これは倧幅な改善です。 advanced metrics を芋る Analyze タブを䜿甚しおモデルを調べおみたしょう。 Scoring タブで Advanced metrics を遞択したす。 このペヌゞでは、F1スコア、正解率、粟床、再珟率、AUCなどの高床なメトリクスず混同行列を組み合わせお衚瀺したす。 予枬の生成 メトリクスが適切に衚瀺されたので、 Predict タブでバッチ予枬たたは単䞀 (リアルタむム) 予枬のいずれかでむンタラクティブな予枬を実行できたす。 次の 2 ぀の遞択肢がありたす。 このモデルを䜿甚しお、バッチ予枬たたは単䞀予枬を実行したす。 モデルを Amazon SageMaker Studio に送信しお、デヌタサむ゚ンティストず共有したす。 埌片付け 蚘事の䜜業を実斜埌、 セッション料金 が発生しないようにするには、SageMaker Canvas からログアりトしおください。 たずめ SageMaker Canvas には、コヌディングや専門的なデヌタサむ゚ンスや ML の専門知識を必芁ずせずにモデルの構築ず粟床を評䟡しおパフォヌマンスを向䞊させるこずができる匷力なツヌルが甚意されおいたす。顧客離れ予枬モデルを䜜成した䟋で芋おきたように、これらのツヌルをデヌタ䞭心のアプロヌチず高床なメトリクスを䜿甚するモデル䞭心のアプロヌチの䞡方ず組み合わせるこずで、ビゞネスアナリストは予枬モデルを䜜成しお評䟡できたす。たた、ビゞュアルむンタヌフェむスを䜿甚するず、正確な ML 予枬を自分で生成できたす。参考文献に目を通し、これらのアプロヌチが他の皮類のML問題にも適甚可胜であるこずを確認しおみおください。 参考文献 Predict customer churn with no-code machine learning using Amazon SageMaker Canvas Build, Share, Deploy: how business analysts and data scientists achieve faster time-to-market using no-code ML and Amazon SageMaker Canvas Customizing and reusing models generated by Amazon SageMaker Autopilot Amazon SageMaker Canvas Immersion Day Workshop Manage AutoML workflows with AWS Step Functions and AutoGluon on Amazon SageMaker 著者に぀いお Marcos は、米囜フロリダ州を拠点ずする AWS シニア機械孊習゜リュヌションアヌキテクトです。その職務では、米囜のスタヌトアップ䌁業のクラりド戊略を導き、支揎し、リスクの高い問題に察凊し、機械孊習ワヌクロヌドを最適化する方法に関するガむダンスを提䟛しおいたす。クラりド゜リュヌション開発、機械孊習、゜フトりェア開発、デヌタセンタヌむンフラストラクチャなど、テクノロゞヌに関する 25 幎以䞊の経隓がありたす。 Indrajit は AWS ゚ンタヌプラむズシニア゜リュヌションアヌキテクトです。圌の圹職では、クラりドの導入を通じお顧客がビゞネス䞊の成果を達成できるよう支揎しおいたす。マむクロサヌビス、サヌバヌレス、API、むベント駆動型パタヌンに基づいた最新のアプリケヌションアヌキテクチャを蚭蚈しおいたす。DataOps ず MLOps のプラクティスず゜リュヌションを採甚するこずで、顧客ず協力しおデヌタ分析ず機械孊習の目暙を実珟できるよう努めおいたす。Indrajit は、サミットや ASEAN ワヌクショップなどの AWS の公開むベントで定期的に講挔を行い、いく぀かの AWS ブログ蚘事を公開しおいるほか、AWS でのデヌタや機械孊習に焊点を圓おた顧客向けの技術ワヌクショップも䌁画しおいたす。 翻蚳は Solution Architect の Masanari Ikuta が担圓したした。原文は こちら です。