#SnowflakeDBSnowflake『カスタマーストーリー』を支えるツール特集2019年10月15日たまちゃん(77)10こんちわ。大阪オフィスの玉井です。Snowflakeのチュートリアルがあったのでやってみました。2019/10/08時点の最新ステップ0:準備CLIクライアントのインストールSnowflakeの管理画面にログインして、右上のHelpメニューからDownloadを選びます。CLIクライアントをダウンロードできる画面が開くので、自分のOS用のものをダウンロードしましょう。インストールはウィザードに従うだけです。公式ドキュメント(下記参照)からサンプルデータをダウンロードできます。C:\tempに展開しておくと、後が楽です。Documentationステップ1:snowSQLでログインログインコマンドプロンプトを起動して、下記を入力します。左側の部分になります。AWS版を利用している場合、リージョン名も入っていますが、リージョン名も含みます。user_nameその名の通りユーザー名を入れます。ログインに成功すると下記のようになります。schema)>今後の一連の操作は、ここから行います。公式ドキュメントSnowflake側の環境によっては、別途設定が必要なので、ドキュメントをみて確認しましょう。Objectの作成データベースを作成するsf_tutsというデータベースを作成します。いうテーブルを、先程のデータベースに作成します。カラムについても下記を御覧ください。Warehouseを作成するsf_tuts_whというWarehouseを作成します。Warehouseとは、Snowflakeのコンピュートノード的な存在のもので、このWarehouseがSnowflakeでの各処理を担います。Snowflakeは、DBとWarehouseがそれぞれ独立しているのが特徴です。Warehouseが行う処理の具体的な内容については下記をどうぞ。Documentation今回は一番小さいサイズ(X-Small)を指定します。0.786s今の時点ではWarehouseは停止しています。Warehouseが必要となる処理が開始されると、自動的にWarehouseが実行されます。Documentationステップ3:データを配置するデータをアップロードするステップ0で取得したサンプルデータをSnowflakeにアップロードします。PUTコマンドを使います。配置するテーブルは、先程作ったemp_basicです。7.125s上記の通り、ワイルドカードも使えます。5つのCSVを一気にアップロードしました。PUTコマンドはデフォルトではgzipに圧縮して配置します。ちなみに、この作業で配置した場所のことをstageと呼称するようです。LISTコマンドでファイルを確認LISTコマンドを使用すると、そのテーブルのstageに置いてあるファイルを確認することができます。Documentationステップ4:データをテーブルにコピーさっき配置したファイルを、実際にテーブルに入れます。COPYコマンドを使います。Documentationステップ5:データに対してクエリを発行するテーブルにデータを入れたので、snowSQLで問い合わせできるようになりました。snowSQLといっても、標準SQLに対応しているので、普通の操作をする分には、新しい言語を覚える必要はありません(もちろんsnowSQL独自の部分もあるので、そこは使っていきながら覚えるしか無いと思います)。テーブルの全データを確認する普通のSQLでできます。83.876sEMAILカラムを使用した検索メールアドレスのドメインが.ukなユーザーを出します。0.803sちょっとしたデータの加工2017年1月1日より前に入社した従業員に対して、入社日(start_date)に90日を足したカラムを追加し、従業員に対する福利厚生が始まる日を出します。0.776sいずれも標準SQLで行っていますので、普通のDBと同じ感覚で問い合わせができます。Documentationステップ6:まとめと後片付け操作自体はステップ5で終了。ステップ6はチュートリアルのまとめ的なものになっています。公式ドキュメントを読めばOKな内容ですが、下記に自分なりにまとめたものを記します。今回行った操作のまとめ1.データ(ファイル)をSnowflakeに配置する今回はcsvをSnowflakeの中に配置しました。S3等の外部ストレージにファイルを配置することも可能です。2.配置したファイルからテーブルにデータを入れる当然ながら、予めテーブルを用意しておく必要があります。この操作ではWarehouseが稼働します。csvの要件レコード毎に改行されていることカンマ区切りcsvとコピー先テーブルについてカラム数を揃えるカラムの順番を揃えるカラムの型を揃えるこれらが一致していない場合、データは入れられません。後片付けチュートリアルで使用した環境を削除します。DROPコマンドを使います。Documentation他の学習リソースおわりにまだ試してませんが、S3にcsvさえ置いておけば、テーブルにサクッとロードできちゃうのは便利そうですね。Snowflakeの四刀流を目指す。AWS?何それ?元学生プロレスラー。リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。カフェ店長のオカノです。使いたいときの注意点を書きました。本が出ていたので読んでみたところよかったので紹介させていただきます。EC2)環境において、不要な踏み台サーバをなくすことができる便利なアップデートです。臼田佳祐295ワークフロー自動化OSSのn8nをAWS環境で建てて検証してみました。非常に期待できるサービスです。Fargateの勉強をしています。使ってみたい方は参考にしてください。洋介252SnowflakeがAWSの東京リージョン上で稼働するようになりました。データを日本に置けます。芳賀健232こんにちは!猫様の忠実なるしもべ、芳賀健です。Tokyoで開催されました。カフェ店長のオカノです。クラスメソッド株式会社が運営するAWS・iOS・HTML5に関する技術情報サイトです。