SlideShare a Scribd company logo
1 of 19
Google Cloud Dataprep
2017/11/11
Wasaburo Miyata
2
Dataprepで出来る事(例)
※11/11時点で公開ベータ版のサービスです。GAの際には変更と
なっている可能性があります。
3
データソースプロファイル
ファイル全体の情報
各データのヒストグラムや基本統計量、最頻値等を表示
データ概要把握(基本統計量、分布)
4
★概要
ミスマッチ件数等
★基本統計量
最大、平均、中央値等
TOPN件のデータ ミスマッチデータ
外れ値
日付のヒストグラム
月のヒストグラム
曜日のヒストグラム
日のヒストグラム
頻出する値
ミスマッチデータ比率
※日付型データの場合
5
縦持ち⇔横持ち
店舗 年代 人数
博多店 20代 10
博多店 30代 20
博多店 40代 30
天神店 20代 5
天神店 30代 6
天神店 40代 7
店舗 20代 30代 40代
博多店 10 20 30
天神店 5 6 7
Pivot
Unpivot
6
複数列をまとめて置換
Col1 Col2 Col3 Col4
001 002 003 004
011 012 013 014
■全カラム指定(replace col: * with: 'X' on: `0` global: true)
Col1 Col2 Col3 Col4
XX1 XX2 XX3 XX4
X11 X12 X13 X14
■複数カラム指定(replace col: Col1,Col3 with: 'X' on: `0` global: true)
■複数カラム範囲指定(replace col: Col1~Col3 with: 'X' on: `0` global: true)
Col1 Col2 Col3 Col4
001 002 003 004
011 012 013 014
Col1 Col2 Col3 Col4
001 002 003 004
011 012 013 014
Col1 Col2 Col3 Col4
XX1 002 XX3 004
X11 012 X13 014
Col1 Col2 Col3 Col4
XX1 XX2 XX3 004
X11 X12 X13 014
7
集計
コード 名称 日付 金額
001 店舗A 17/01/00 1,000
001 店舗A 17/02/00 1,100
002 店舗B 17/01/00 2,000
002 店舗B 17/02/00 2,100
003 店舗C 17/01/00 3,000
003 店舗C 17/02/00 3,100
名称 金額
店舗A 2,100
店舗B 4,100
店舗C 6,100
8
書式を統一
氏名 誕生日
A太郎 1984年1月23日
B太郎 1976/08/21
C太郎 1979年9月10日
D太郎 1967-09-01
E太郎 西暦1990年02月15日
F太郎 19750209
氏名 誕生日
A太郎 1984/01/23
B太郎 1976/08/21
C太郎 1979/09/10
D太郎 1967/09/01
E太郎 1990/02/15
F太郎 1975/02/09
9
固定長ファイルを分割
split col: column1 positions: 3,16,26
column1 column2 column3 column4
010 NAMEAAAAAA 1979/09/01 FUKUOKA
020 NAMEBBBBBB 1970/02/03 SAGA
030 NAMECCCCCC 1992/12/31 KAGOSHIM
10
複数ファイルを簡単に統合
コード 名称 日付 金額
001 店舗A 17/01/00 1,000
001 店舗A 17/02/00 1,100
002 店舗B 17/01/00 2,000
002 店舗B 17/02/00 2,100
003 店舗C 17/01/00 3,000
003 店舗C 17/02/00 3,100
コード,名称,日付,金額
001,店舗A,17/01/01,1000
001,店舗A,17/02/01,1100
コード,名称,日付,金額
002,店舗B,17/01/01,2000
002,店舗B,17/02/01,2100
コード,名称,日付,金額
003,店舗C,17/01/01,3000
003,店舗C,17/02/01,3100
売上データ001.csv
売上データ002.csv
売上データ003.csv
ファイル取込時、GCS上のフォルダを指定するとフォルダ内に存
在する全てのファイルが対象となる。
スケジュール実行
11
cron形式で設定も可能
12
異なるファイルフォーマットの統合/結合
ExcelファイルとCSVとBigQueryのデータを結合してJSONに
出力するなども可能
13
JSON⇔表形式
{"id": "100","name": "くぎ","price": 90}
{"id": "200","name": "ねじ","price": 50}
ID name price
100 くぎ 90
200 ねじ 50
14
ダミー変数
氏名 年代
Aさん 20代
Bさん 30代
Cさん 40代
Dさん 20代
Eさん 30代
Fさん 40代
氏名 20代 30代 40代
Aさん 1 0 0
Bさん 0 1 0
Cさん 0 0 1
Dさん 1 0 0
Eさん 0 1 0
Fさん 0 0 1
valuestocols
15
(SQL脳向け)
TransformをSQLで強引に理解する
16
■Transform一覧
# Transform 概要 SQL
1 Aggregate 集計 GROUP BY+集約関数
2 Countpattern 指定パターンの件数 LENGTH関数+計算式
3 Deduplicate 重複の削除 GROUP BY又はDISTINCT
4 Delete 行の削除 DELETE
5 Derive 数式より新規列追加 SELECTで数式指定
6 Drop 列の削除 SELECTで列指定
7 Extract 指定パターンの抽出 REGEXP_EXTRACT_ALL
8 Extractkv Key-Valueのペア作成 ARRAY_AGG,STRUCT
9 Extractlist 指定パターンで配列作成 REGEXP_EXTRACT_ALL
10 Flatten 配列を縦持ち UNNEST
SQLはBigQueryのStandard SQLを想定
17
# Transform 概要 SQL
11 Header 指定行を列ヘッダに設定 なし
12 Join 別のデータセットと結合 JOIN
13 Keep 条件で行の絞り込み WHERE
14 Merge 列を結合後、新規列作成 CONCAT関数
15 Move 列の移動 SELECTで列場所指定
16 Nest 列リストよりKV/配列作成 ARRAY_AGG,STRUCT
17 Pivot 縦持ち→横持ち GROUP BYとCASE式
18 Rename 列名変更 ASで別名指定
19 Replace 指定パターンを置換 REPLACE関数
20 Set 値を数式の結果で上書き SELECT
SQLはBigQueryのStandard SQLを想定
■Transform一覧
18
# Transform 概要 SQL
21 Settype 列のデータ型指定 CAST関数
22 Sort 並び替え ORDER BY
23 Split 列の分割 SPLIT関数
24 Union データセットの追加 UNION,UNION ALL
25 Unnest KV,JSONより列作成 JSON_EXTRACT_SCALAR関数等
26 Unpivot 横持ち→縦持ち UNION ALL,CROSS JOIN
27 Valuestocols 値よりバイナリ列作成
(ダミー変数)
CASE式
28 Window 関連データセット内の
行セットに関して計算
OVER句+PARTITION+FRAME
※11/11時点でSort未対応か?SQLはBigQueryのStandard SQLを想定
■Transform一覧
19

More Related Content

Viewers also liked

GCPUG-FUKUOKA データ加工&可視化ハンズオン
GCPUG-FUKUOKA データ加工&可視化ハンズオンGCPUG-FUKUOKA データ加工&可視化ハンズオン
GCPUG-FUKUOKA データ加工&可視化ハンズオンWasaburo Miyata
 
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座Samir Hammoudi
 
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version - ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version - Tetsutaro Watanabe
 
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
[Cloud OnAir] #01 徹底解剖 GCP のここがすごいGoogle Cloud Platform - Japan
 
[Cloud on air] #02 GCP のアプリランタイムについて学ぼう
[Cloud on air] #02  GCP のアプリランタイムについて学ぼう[Cloud on air] #02  GCP のアプリランタイムについて学ぼう
[Cloud on air] #02 GCP のアプリランタイムについて学ぼうGoogle Cloud Platform - Japan
 
[Cloud OnAir ] #03 No-ops で大量データ処理基盤を簡単に構築する
[Cloud OnAir ] #03 No-ops で大量データ処理基盤を簡単に構築する[Cloud OnAir ] #03 No-ops で大量データ処理基盤を簡単に構築する
[Cloud OnAir ] #03 No-ops で大量データ処理基盤を簡単に構築するGoogle Cloud Platform - Japan
 
Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか?
Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか? Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか?
Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか? Google Cloud Platform - Japan
 

Viewers also liked (7)

GCPUG-FUKUOKA データ加工&可視化ハンズオン
GCPUG-FUKUOKA データ加工&可視化ハンズオンGCPUG-FUKUOKA データ加工&可視化ハンズオン
GCPUG-FUKUOKA データ加工&可視化ハンズオン
 
超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座超実践 Cloud Spanner 設計講座
超実践 Cloud Spanner 設計講座
 
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version - ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
 
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
 
[Cloud on air] #02 GCP のアプリランタイムについて学ぼう
[Cloud on air] #02  GCP のアプリランタイムについて学ぼう[Cloud on air] #02  GCP のアプリランタイムについて学ぼう
[Cloud on air] #02 GCP のアプリランタイムについて学ぼう
 
[Cloud OnAir ] #03 No-ops で大量データ処理基盤を簡単に構築する
[Cloud OnAir ] #03 No-ops で大量データ処理基盤を簡単に構築する[Cloud OnAir ] #03 No-ops で大量データ処理基盤を簡単に構築する
[Cloud OnAir ] #03 No-ops で大量データ処理基盤を簡単に構築する
 
Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか?
Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか? Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか?
Cloud OnAir #04 今話題の機械学習・GCP で何ができるのか?
 

Similar to GCPUG-FUKUOKA Dataprep補足資料

Apuri she ji_gaido_d_bmentenansushe_ji__v1.0
Apuri she ji_gaido_d_bmentenansushe_ji__v1.0Apuri she ji_gaido_d_bmentenansushe_ji__v1.0
Apuri she ji_gaido_d_bmentenansushe_ji__v1.0Kaito Tonooka
 
簿記の記帳と財務諸表作成へのXML技術の応用
簿記の記帳と財務諸表作成へのXML技術の応用簿記の記帳と財務諸表作成へのXML技術の応用
簿記の記帳と財務諸表作成へのXML技術の応用seastar orion
 
2023-10-24TECHTALデータ変換処理スクリプト
2023-10-24TECHTALデータ変換処理スクリプト2023-10-24TECHTALデータ変換処理スクリプト
2023-10-24TECHTALデータ変換処理スクリプトQlikPresalesJapan
 
[db tech showcase Tokyo 2014] C25: Facebookが採用した世界最大級の分析基盤とは? by 日本ヒューレット・パッ...
[db tech showcase Tokyo 2014] C25: Facebookが採用した世界最大級の分析基盤とは?  by 日本ヒューレット・パッ...[db tech showcase Tokyo 2014] C25: Facebookが採用した世界最大級の分析基盤とは?  by 日本ヒューレット・パッ...
[db tech showcase Tokyo 2014] C25: Facebookが採用した世界最大級の分析基盤とは? by 日本ヒューレット・パッ...Insight Technology, Inc.
 
A21 列指向DB HP Vertica ~その圧倒的な高速検索の謎を解き明かす~ byKeizo Aizawa
A21 列指向DB HP Vertica ~その圧倒的な高速検索の謎を解き明かす~ byKeizo AizawaA21 列指向DB HP Vertica ~その圧倒的な高速検索の謎を解き明かす~ byKeizo Aizawa
A21 列指向DB HP Vertica ~その圧倒的な高速検索の謎を解き明かす~ byKeizo AizawaInsight Technology, Inc.
 
[D36] Michael Stonebrakerが生み出した列指向データベースは何が凄いのか? ~Verticaを例に列指向データベースのアーキテクチャ...
[D36] Michael Stonebrakerが生み出した列指向データベースは何が凄いのか? ~Verticaを例に列指向データベースのアーキテクチャ...[D36] Michael Stonebrakerが生み出した列指向データベースは何が凄いのか? ~Verticaを例に列指向データベースのアーキテクチャ...
[D36] Michael Stonebrakerが生み出した列指向データベースは何が凄いのか? ~Verticaを例に列指向データベースのアーキテクチャ...Insight Technology, Inc.
 

Similar to GCPUG-FUKUOKA Dataprep補足資料 (6)

Apuri she ji_gaido_d_bmentenansushe_ji__v1.0
Apuri she ji_gaido_d_bmentenansushe_ji__v1.0Apuri she ji_gaido_d_bmentenansushe_ji__v1.0
Apuri she ji_gaido_d_bmentenansushe_ji__v1.0
 
簿記の記帳と財務諸表作成へのXML技術の応用
簿記の記帳と財務諸表作成へのXML技術の応用簿記の記帳と財務諸表作成へのXML技術の応用
簿記の記帳と財務諸表作成へのXML技術の応用
 
2023-10-24TECHTALデータ変換処理スクリプト
2023-10-24TECHTALデータ変換処理スクリプト2023-10-24TECHTALデータ変換処理スクリプト
2023-10-24TECHTALデータ変換処理スクリプト
 
[db tech showcase Tokyo 2014] C25: Facebookが採用した世界最大級の分析基盤とは? by 日本ヒューレット・パッ...
[db tech showcase Tokyo 2014] C25: Facebookが採用した世界最大級の分析基盤とは?  by 日本ヒューレット・パッ...[db tech showcase Tokyo 2014] C25: Facebookが採用した世界最大級の分析基盤とは?  by 日本ヒューレット・パッ...
[db tech showcase Tokyo 2014] C25: Facebookが採用した世界最大級の分析基盤とは? by 日本ヒューレット・パッ...
 
A21 列指向DB HP Vertica ~その圧倒的な高速検索の謎を解き明かす~ byKeizo Aizawa
A21 列指向DB HP Vertica ~その圧倒的な高速検索の謎を解き明かす~ byKeizo AizawaA21 列指向DB HP Vertica ~その圧倒的な高速検索の謎を解き明かす~ byKeizo Aizawa
A21 列指向DB HP Vertica ~その圧倒的な高速検索の謎を解き明かす~ byKeizo Aizawa
 
[D36] Michael Stonebrakerが生み出した列指向データベースは何が凄いのか? ~Verticaを例に列指向データベースのアーキテクチャ...
[D36] Michael Stonebrakerが生み出した列指向データベースは何が凄いのか? ~Verticaを例に列指向データベースのアーキテクチャ...[D36] Michael Stonebrakerが生み出した列指向データベースは何が凄いのか? ~Verticaを例に列指向データベースのアーキテクチャ...
[D36] Michael Stonebrakerが生み出した列指向データベースは何が凄いのか? ~Verticaを例に列指向データベースのアーキテクチャ...
 

GCPUG-FUKUOKA Dataprep補足資料