Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
COPYコマンドって知ってる?
Search
HimekaKawaguchi
August 28, 2024
Technology
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
COPYコマンドって知ってる?
HimekaKawaguchi
August 28, 2024
More Decks by HimekaKawaguchi
See All by HimekaKawaguchi
若手エンジニアの成長記- 技術以外に大事なこと -
himekakawaguchi
0
54
社内Slackでバズっている投稿が知りたい!
himekakawaguchi
0
63
Azure Functions を使って社内Slackで今週バズってる投稿が知りたい!
himekakawaguchi
0
140
Other Decks in Technology
See All in Technology
The future of architectural work
ufried
0
160
今から始めるAWS環境の暗号移行 - ポスト量子時代に備える
sato4mi
0
150
bpf_arenaとstruct_opsを使うのが難しかった話
masu_mi
1
130
【dbts2026】AIエージェントの 判断と探索を変える、 データベース エンジニアリング― 既存DBの処理と依存関係から作る、オペレーショナルオントロジー ―
shisyu_gaku
0
160
cdkd (CDK Direct)
gotok365
3
220
あなたのDartコードは丸見えかもしれない ~reFlutterで暴くFlutterアプリの中身と多層防御~
zozotech
PRO
0
770
攻撃 3 時間 vs 復旧 10 時間。アクセスキー流出の非対称性を体感するために CTF を作った話
kazzpapa3
1
140
You Have Agency(サンキュー、Ruby)
snoozer05
PRO
5
680
自律的なチームを作るためにTechPMがやらないこと
ny7760
1
510
公共分野での生成AI活用
toru_kubota
1
160
AWSを利用する上で知っておきたい名前解決の話 2026
nagisa53
3
1.7k
Lint の層を組み直した話
bengo4com
3
310
Featured
See All Featured
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
760
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
370
Building Adaptive Systems
keathley
44
3.3k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.9k
The Invisible Side of Design
smashingmag
301
52k
Odyssey Design
rkendrick25
PRO
2
920
Fireside Chat
paigeccino
43
4.1k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
430
Designing Powerful Visuals for Engaging Learning
tmiket
1
640
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.8k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
500
Transcript
COPYコマンド って知ってる? Amazon S3からDWHへのデータ移行 2024/08/28 クラウドLT大会vol.10 セゾンテクノロジー 川口媛香
アジェンダ • はじめに • DWHへのデータの取り込み • DWHをSnowflakeに変更したい • やってみた •
まとめ 2
はじめまして Himeka Kawaguchi 川口 媛香 2022年入社 3年目 データ活用によるお客様の業務効率化を目指すPJに参画 ドメインの理解とエンジニアリングの習熟の両立に奮闘する日々 業務で使用する技術:Snowflake・Power
BI・Tableauなど 3 Qiitaやってます~
業務内容を少しだけ HULFT Squareを用いてデータ分析基盤を構築、内製化を支援 お客様システム DWH BI ダッシュボード 4
業務内容を少しだけ HULFT Squareを用いてデータ分析基盤を構築、内製化を支援 お客様システム DWH BI ダッシュボード 5
DWHへのデータの取り込み DWHへのデータの取り込みにはデータレイクを挟むことが多い データレイク DWH BI ダッシュボード お客様システム 6
DWHへのデータの取り込み ▪DWHにAmazon Redshiftを選んだ場合 Amazon S3からCOPYコマンドで取り込み Amazon S3 Amazon Redshift COPY
コマンド データレイク DWH 7
COPYコマンドとは COPY コマンドは Amazon Redshift の超並列処理 (MPP) アーキテクチャを使用し、 複数のデータソースからデータを並列で読み込んでロードします。 Amazon
S3 のデータファイル、Amazon EMR、または Secure Shell (SSH) 接続でアクセス可能なリモー トホストからロードできます。 あるいは Amazon DynamoDB テーブルから直接ロードできます。 https://docs.aws.amazon.com/ja_jp/Amazon Redshift/latest/dg/r_COPY.html AWSが提供する Amazon S3などデータをAmazon Redshiftへ取り込むコマンドのこと COPYコマンドを使えば 簡単にAmazon Redshiftへデータを取り込むことが出来る! 8
DWHへのデータの取り込み ▪Amazon Redshift Amazon S3 Amazon Redshift COPY コマンド データレイク
DWH COPY <table_name> FROM 's3://<bucket_name>/<object_prefix>' authorization; Amazon S3もAmazon Redshiftも同じAWSサービスなので コマンド1つでデータを入れられるのは分かる 9
データ分析基盤 Amazon S3 (データレイク) Amazon Redshift (DWH) BI ダッシュボード お客様システム
▪DWHにAmazon Redshiftを選んだ場合 10
データ分析基盤 Amazon S3 (データレイク) Snowflake (DWH) BI ダッシュボード お客様システム ▪DWHをSnowflakeに変更したい
データ分析基盤を作る私たちが考えること 出来るだけ改修を減らしたい(今あるものをそのまま使えないか?) 11
DWHをSnowflakeに変更したい Amazon S3 (データレイク) Snowflake (DWH) BI ダッシュボード お客様システム データ連携基盤を作る私たちが考えること
出来るだけ改修を減らしたい(今あるものをそのまま使えないか?) 課題 ・ Amazon S3のデータはSnowflakeへ取り込めるのか? Amazon S3 にあるデータは別のデータレイクに移動する必要があるか >出来ればデータを移動させる手間は無くしたい 12
出来るんです!COPYコマンドで! 13
Amazon S3からSnowflakeへCOPYできる! ・どうやって? Snowflakeが提供するCOPYコマンドを使う >Amazon S3のデータを移動せず、Snowflake に取り込むことが出来る >DWHの変更だけで済む(開発者も、お客様も楽) COPY INTO
<テーブル> ステージングされたファイルから既存のテーブルにデータをロードします。ファイルは、次のいずれかの場所に既にス テージングされている必要があります。 https://docs.snowflake.com/ja/sql-reference/sql/copy-into-table ・COPYコマンドとは? Snowflakeが提供するコマンドのこと Amazon S3やGoogle Cloud Storageなどのストレージから取り込み可能 14
COPYコマンドを比べてみた! COPY <table_name> FROM 's3://<bucket_name>/<object_prefix>' authorization; ▪AWS ▪Snowflake 取り込み元の記法が違う程度(Amazon S3>バケット、Snowflake>ステージ)
構文の違いはほぼ無い(同じ感覚で使用できる) COPY customer FROM 'Amazon S3://dir/hsq_data.csv’ COPY INTO customer FROM @EXT_STAGE_TEST/hsq_data.csv COPY INTO [<namespace>.]<table_name> FROM { internalStage | externalStage …} 15
DWHをSnowflakeに変更したい Amazon S3 (データレイク) Snowflake (DWH) BI ダッシュボード お客様システム 課題
・ Amazon S3のデータはSnowflakeへ取り込めるのか? Amazon S3 にあるデータは別のデータレイクに移動する必要があるか >お客様の作業になることが多い、出来れば移動の手間は無くしたい 解決策 ・ SnowflakeのCOPYコマンドを使用する ・ Amazon S3のデータを取り込めるので、データレイクは変更不要 16
気になる… Snowflakeはクラウドプラットフォームを選択する >どのクラウド上でSnowflakeを動かすのか ということは… データレイクは選択したクラウドプラットフォームと 同じクラウドのサービスで無いといけないのでは? ここで1つの疑問が ・AWS → Amazon
S3 ・Google Cloud → Google Cloud Storage ・Azure → Microsoft Azure BLOBストレージ 17
Snowflakeへの取り込み 調べてみると アカウントのクラウドとデータレイクに使用するサービスのクラウドは関係ないとのこと Snowflakeは、Snowflakeアカウントのクラウドプラットフォームに関係なく、 次のいずれかの場所にステージングされたファイルからのデータのロードをサポートしています。 https://docs.snowflake.com/ja/user-guide/intro-cloud-platforms 注釈 異なるプラットフォーム間でステージングされたファイルからデータをロードする場合、データ転送請求料金が適用さ れる場合があります。詳細については、 データ転送のコストについて
をご参照ください。 この目で確かめたい!ということで実際にやってみた 18
やってみた HULFT Squareを使って Amazon S3のデータを Microsoft Azure上で動く Snowflakeに取り込んでみた! 19
用意したもの ・ HULFT Square ・ Amazon S3 ・ Snowflakeトライアルアカウント クラウドプロバイダー>Microsoft
Azureを選択 ※アカウント作成時に選択します 20
Amazon S3 (データレイク) Snowflake (DWH) やってみた 21
Amazon S3 (データレイク) Snowflake (DWH) やってみた HULFT Square COPY INTO
TEST_DB.TEST_SC.CUSTOMER FROM (SELECT $1,$2,$3,$4 FROM @EXT_STAGE_TEST/hsq_data.csv); 22
Amazon S3 (データレイク) Snowflake (DWH) やってみた 23
Amazon S3 (データレイク) Snowflake (DWH) やってみた 24
やってみた -結果- Microsoft Azure環境で動くSnowflakeに Amazon S3のデータを取り込むことは可能! 25 データが取り込まれている!
学び・気づき • 業務内容から視野を広げることが出来た 業務で扱っていると当たり前のように感じるが視野を広げて考えると誰かに とっては新しい学びになることに気づけた。 学びは自分のものだけにするのでは無く、発信をして、みんなの学びにして いきたいと思った。 • 実際に手を動かして自分の目で確かめてみることは大事 ドキュメントを読んで終わりにするのでは無く、自分の手で検証することで、
ドキュメントの読み込みでは得られない知識を身につけられた。 26
まとめ Amazon S3からDWHへのデータ取り込みには COPYコマンドが使える ・AWSやSnowflakeが提供するCOPYコマンドがある ・Amazon S3など様々なデータレイクからデータ取り込みが実現可能 27
28