Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon SageMaker Catalogの、AIエージェントによる自動データ分類機能を...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
kasacchiful
PRO
January 17, 2026
Technology
0
34
Amazon SageMaker Catalogの、AIエージェントによる自動データ分類機能を試してみようとしたが、できなかったので、代わりに最近構築したデータ連携基盤を紹介します / 20260117jawsug-fukui
2026/01/17 (土) JAWS-UG福井 #1 にて発表した資料。
イベントページ:
https://jawsug-fukui.connpass.com/event/375652/
kasacchiful
PRO
January 17, 2026
Tweet
Share
More Decks by kasacchiful
See All by kasacchiful
Amazon Q Developer CLI (現Kiro CLI) で作った 新潟ランチマップWebアプリのこれまでとこれから / 20260207jawsug-tochigi
kasacchiful
PRO
0
32
データファイルをAWSのDWHサービスに格納する / 20251115jawsug-tochigi
kasacchiful
PRO
2
210
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
PRO
0
680
ワイがおすすめする新潟の食 / 20250912jasst-niigata-lt
kasacchiful
PRO
0
37
WorkersでDiscord botを試してみた / 20250822workers-tech-talk-niigata
kasacchiful
PRO
1
80
地域コミュニティへの「感謝」と「恩返し」 / 20250726jawsug-tochigi
kasacchiful
PRO
0
250
Amazon Q Developer for CLI を使って PHP Conference 新潟 2025 参加者向けにグルメサイトを構築した話 / 20250620niigata-5min-tech
kasacchiful
PRO
1
140
ワイがおすすめする新潟の食 / 20250530phpconf-niigata-eve
kasacchiful
PRO
0
480
生成AIでメタデータを生成してみた / 20250525generate-metadata-using-generative-ai
kasacchiful
PRO
0
160
Other Decks in Technology
See All in Technology
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
230
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
260
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
470
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
130
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.8k
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.5k
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
340
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
160
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
240
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
170
Context Engineeringの取り組み
nutslove
0
360
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
150
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
Balancing Empowerment & Direction
lara
5
890
Making the Leap to Tech Lead
cromwellryan
135
9.7k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
55
WCS-LA-2024
lcolladotor
0
450
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
70
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
170
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Transcript
Amazon SageMaker Catalogの、AIエージェントによる自 動データ分類機能を試してみようとしたが、できなかったの で、代わりに最近構築したデータ連携基盤を紹介します JAWS-UG福井 #1 2026/01/17 笠原 宏
JAWS-UG福井 リブート おめでとうございます! 約2年前の「JAWS-UG北陸新幹線 #1 in 福井」以来、2回目の福井参加
笠原 宏 (@kasacchiful) クラスメソッド株式会社 データ事業本部 ビジネスソリューション部 ソリューションアーキテク ト 新潟県新潟市在住 JAWS-UG新潟
/ Python機械学習勉強会 in 新潟 / JaSST Niigata / ASTER / SWANII / Cloudflare Meetup Niigata / AI CRAFT Hacks Niigata / KomeKaigi AWS Community Builder (Serverless) 2025 Japan AWS Top Engineer / 2025 Japan All AWS Certifications Engineer 自己紹介 3
本日の道のり 4
本編勉強会 不定期で約2〜3時間 オフライン (たまにZoom配信あり) 講演いただいたり、ハンズオンしたり、事前にテーマ決めて開催 プチキャッチアップ会 毎週木曜夜21:00から1時間 オンライン 気になる記事を一緒に見たり、お悩み相談したり、その場でやること 決めて開催
JAWS-UG新潟のご紹介 https://jawsug-niigata.connpass.com/ 5
まずは re:Invent 2025で出てきた分析サービスについて、簡単にお話し。 タイトル申請時にこのようにしていたので https://jawsug-fukui.connpass.com/event/375652/ 6
AWS re:Invent 2025で出たデータ分析系の流れ https://speakerdeck.com/ishikawa_satoru/aws-re-invent-2025-data-and-ai-updates?slide=6 7
データカタログ作成の手間を、AIが支援 https://aws.amazon.com/jp/about-aws/whats-new/2025/11/amazon-sagemaker-catalog- automatic-data-classification-ai-agents/ 8
Amazon SageMaker Catalog
ビジネスメタデータを管理 Amazon SageMaker Unified Studioから利用可能 Amazon SageMaker Catalog 10
Glue Data Catalog テクニカルメタデータ向け 主にETLパイプラインで利用 SageMaker Catalog ビジネスメタデータ向け 主に組織全体のデータガバナンス管理で利用 Glue
Data Catalogを呼び出して管理することも可能 SageMaker Catalog vs Glue Data Catalog 11
早速試そうと、SageMaker Unified Studioを新規作成したものの... 結論: 試せませんでした... 早速試そうとしたが... 12
メニューがない ? https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/autodoc.html 13
権限の問題かも? 色々試したが変わらず、権限の問題ではなさそう。 なんか、SageMakerのドメインが、古くね? SageMaker Unified Studioの環境構築したのに、ドメインの形式が前のSageMakerのもの になってるらしい 今のドメイン: https://[domain-id].sagemaker.[region].on.aws/ 本来こうなってほしいらしい:
https://[domain-name].studio.[region].sagemaker.aws/ SageMaker Unified Studioのドメイン再作成したけど変わらず 他のAWSアカウントで作成してみたけど変わらず 最終的には、AWSサポートへの問い合わせになりました。 (Amazon Qからも、サポートに問い合わせた方がいいと助言いただきました) わからないので、Amazon Qに問い合わせ 14
このままでは大した発表にならない
代わりに最近構築したデータ連携基盤を紹介します
オンプレミスやRDSにあるOracle DBから、DWH(Snowflake)にデータを溜めたい DWHでは、データマートを整備して、BIツールでデータを可視化したい とある事例 17
構成図 18
処理の流れ 19
Oracle DBはオンプレミスや他アカウントのRDSにある お客様にてTransit GatewayやDirectConnectが整備済 Transit Gateway経由でアクセス可能 接続先は4箇所 (オンプレミス・RDS含め) Oracle DBのバージョンは全て19c
ただし、RDS以外は sec_case_sensitive_logon がFalse 「ログイン時のパスワードの大文字・小文字を区別しない」古い設定 「python-oracledb」ライブラリのthinモード(Oracleクライアント不要)では接続できず、 thickモード(Oracleクライアント必要)での接続が必須 Oracle Instant Client導入するにしても容量が大きいため、今回はコンテナ化 (Lambdaコン テナ → 後にECS/Fargate) で対応する Oracle DBへのクエリはS3に保管しておいて、実行時にダウンロード Oracle DB → S3 20
Snowflakeには「Snowpipe」という便利な機能がある 今回はSnowflake SQL REST APIをLambdaから実行して、Snowflakeのテーブルにロードする 方法をとった (なお、今回のテーマにはあまり関わってこないところなので、詳細は控える) S3 → DWH(Snowflake)
21
Lambdaの実行時間制限「15分」を超える処理が必要になる メモリも上限10GBじゃ足りなくなる Lambdaコンテナから、ECS/Fargateへ移行 その後の運用にて 22
1. Lambda関数はそのままに、ECS/Fargateのエントリポイント用の関数を用意する 2. Dockerfileのエントリポイントを変更する 3. Step Functionsのステートマシン上でサービス定義 4. ステートマシン上のpayloadは、必要な項目をCommandに渡す 5.
VPCエンドポイントを各種用意する 6. ステートマシンの実行権限に注意 LambdaコンテナからECS/Fargateへの変更方法 23
ECSサービスを定義する代わりに、ステートマシン上で定義する ステートマシンでコールされた分だけ、タスクが起動する Comment: >- ETL1 State Machine StartAt: ETL_query_serialize States:
ETL_query_serialize: Type: Pass Parameters: query_serialize.$: States.JsonToString($.queries) Next: ETL_Command ETL_Command: Type: Pass Parameters: commands.$: States.Array($.query_serialize) Next: ETL_process Step Functionsのステートマシン上でサービス定義 24
ETL_process: Type: Task Resource: "arn:aws:states:::ecs:runTask.sync" ResultPath: null Parameters: LaunchType: FARGATE
Cluster: ${EcsClusterArn} TaskDefinition: ${EcsTaskDefinitionArn} NetworkConfiguration: AwsvpcConfiguration: Subnets: - ${subnetId1} - ${subnetId2} SecurityGroups: - ${securityGroupId1} AssignPublicIp: DISABLED Overrides: ContainerOverrides: - Name: ${EcsTaskDefinitionContainerName} Command.$: $.commands Environment: - Name: TASK_TOKEN Value.$: $$.Task.Token End: true Step Functionsのステートマシン上でサービス定義 (続き) 25
コンテナのCMDは、ContainerOverridesで上書き可能 ステートマシンのpayloadから、必要な項目を配列で渡してあげると、各々の引数としてエント リポイントに渡せる JSON項目は、 States.JsonToString() で文字列化すれば渡せる ETL_Command: Type: Pass Parameters:
commands.$: States.Array($.query_serialize) Next: ETL_process Overrides: ContainerOverrides: - Name: ${EcsTaskDefinitionContainerName} Command.$: $.commands payloadは、必要な項目をCommandに渡す 26
ステートマシンのIAMロールに以下の権限を追加しないと、ステートマシンからのECSタスク起 動時にエラーになるので注意 手動で設定する場合に忘れがち { "Version": "2012-10-17", "Statement": [ { "Effect":
"Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:ap-northeast-1:<AWS_ACCOUNT_ID>:rule/StepFunctionsGetEventsForECSTaskRule" ] }, // <省略> ] } ステートマシンの実行権限に注意 27
ステートマシンの構成: 接続先毎に並列実行 28
Lambda → 軽めのタスクを並列でぶん回したい場合はLambdaが良い 起動は早い タイムアウト・メモリ・ストレージ等の制約は大きい タイムアウト: 最大15分 メモリ: 最大10GB エフェメラルストレージ(
tmp ): 512MB〜10GB ECS/Fargate → 重めのタスク起動に向いている 起動するまで時間はそれなりにかかる タイムアウト・メモリ・ストレージ等の制約は少ない タイムアウト: 最大14日 メモリ: 最大120GB エフェメラルストレージ: 20GB〜200GB LambdaコンテナとECS/Fargateコンテナの違い 29
SageMaker Catalogの新機能を試そうとしましたが、残念ながら試せませんでした。 その代わり、データ基盤でコンテナを活用した際のお話をしました。 Step FunctionsのステートマシンからECSタスクを実行する際の参考にどうぞ ECSサービスに相当する部分をステートマシン上で定義する 必要なリソースを適宜追加する LambdaコンテナからECS/Fargateコンテナに変更する際は、なるべく元のLambda関数に変更 を加えないように移行した エントリポイントのpythonコードで、Lambda関数に必要な引数や環境変数を定義
まとめ 30
来週のJAWS-UG北陸新幹線in群馬では、Apache Icebergにつ いてお話ししようかな?
おわり