views4GCPのストレージサービスについてまとめてみた。Exp:71334新しい物好きなエンジニアですTweetShareHatena注意この記事は2016年5月25日に更新されたもので、内容が古い可能性がありますのでご注意ください。DatalabとはJupyterをベースとしたデータ分析を対話形式でかつWeb上で行うことが出来るシェル環境です。ソースコードやSQL、実行結果、テキスト、画像等を「1つのノートブック」としてまとめて扱えることが特徴です。Environmentと同様の費用が課せられることになります。EnvironmentはBeta版である為、今後改定されると思いますが現在はVMごとにGCEと同様の費用感になっているようです。1つのノードブックの上で完結できます。Jupyterの詳しい活用方法については以下の記事に良くまとまっているので、こちらを参考にしてみてください。使い方http://qiita.com/k24d/items/d6e8b8200108353b5354TreasureDataとPandasとJupyterでインタラクティブにデータを可視化する。http://qiita.com/toru-takahashi/items/7c4320df5b77e4b6e2a5本記事では基本的なDatalabの起動から、BigQueryのサンプルデータを用いた検索、CloudStorageからのデータインポート&エクスポートを紹介します。※本記事ではGCPプロジェクトの作成方法等は割愛します。アクセス以下の画面に遷移します。Start」ボタンからサインインプロジェクトの選択画面が表示されます。既存のプロジェクト一覧が表示されますのでdatalabをデプロイするプロジェクトを選択してください。デプロイしていない場合は画像のようにDeployボタンのみ有効になっています。4.デプロイDeployをしてしばらくすると(10分~15分程)、以下のように他のボタンも有効になります。上記画像にある通りDeployすると...AppEngineの「datalab」モジュール「datalab」というネットワークを持つComputeEngineのインスタンスCloudRepositoryに「datalab」というブランチの3つが新たに指定したプロジェクト内に作成されます。VMs)のインスタンスが起動していることが分かります。※注意GCEのインスタンスの削除のみ行うと、10分くらいすると再度GCEインスタンスが立ち上がり、課金状態は継続されます。インスタンスを完全に削除する為には、AppEngine→サービスの画面からサービス「datalab」を削除する必要があります。Startボタンを押下すると、Datalabのページに遷移します。ここで重要となるのはNotebookと呼ばれる、テキストやソースコード、グラフ等をひとまとめにしたファイルです。World.ipynbという2つのNotebookが表示されています。Notebookの作成内容の記述Notebookのボタンをクリックすると新しくNotebookが作成されます。後はこのNotebookを編集していきます。使用するサービスの宣言まずはこのNotebook内で使用するサービス(注1)を以下のように宣言します。今回はBigqueryのみ使用するのでこのように記述します。このように宣言すると、Datalab側で用意されているBigQueryのAPIをbq.Query()のように利用できるようになります。BigQueryにデフォルトで用意されているdataset(bigquery-public-data:samples)に対してクエリを実行してみたいと思います。(注1)DatalabではデフォルトでGoogleCloudStorageや数値計算で有名なPythonのライブラリ「numpy」、データ解析に用いられる「pandas」といった外部のライブラリが利用できます。デフォルトで使用出来ないものでも以下のようにaptやpip(pythonのパッケージ管理システム)を利用してライブラリをインストールすることも可能です。クエリの定義と実行dataset内のwikipediaテーブルに対してtitleに「Japan」が含まれるレコードを10件取得し、その結果を表示しています。12GBのデータに対する検索結果が0.9秒で返ってきていることが分かります。APIを利用して検索結果をグラフとして表示することも出来ます。検索結果からレコード数とクエリの取得また、検索結果からレコード数と検索に使用したクエリを取得することも出来ます。プロジェクト内データセット・テーブル情報の参照データセットの一覧やテーブル一覧、スキーマ情報等も参照可能です。データセット・テーブルの新規作成notebookから直接同プロジェクトのBigQueryにデータセットやテーブルを作成することも出来ます。flag」をスキーマに持ったテーブル「sample_table」が作成出来ました。データのインポート次に、CloudStorageに置いてあるCSVファイルのデータをインポートしてみます。Storage上にインポート用のcsvファイルを用意しました。内容は以下の通りです。?このcsvファイルのデータを先程作成したテーブルにインポートします。IDが表示されていればとりあえずはOKです。テーブルの中身を確認してみましょう。先ほど確認した3つのレコードが正しくインポートされていることが分かりますね。データのエクスポート次にテーブル内のデータをCloudStorageにエクスポートしてみます。export_test.csvというファイル名でCloudStorageにエクスポートすることが出来ました。まとめ今回はDatalabの起動から簡単なクエリの実行、CloudStorage→BigQueryのデータインポート、BigQuery→CloudStorageのデータエクスポートを試してみました。SQLの知識は多少必要になりますが、エンジニア以外の方でもそれほど抵抗なくDatalabを通してデータ分析を行えそうだという印象をお持ちになられた方も多いのではないでしょうか?今回はあまり触れられていませんがテキストも含めて分析の過程を保存、バージョン管理ができる点もデータ分析においては強みの1つになるでしょう。