LoginSignup
10
18

More than 5 years have passed since last update.

Treasure Data を使う時にとりあえず読んでおくと良いドキュメント

Posted at

データインポート

  1. Streaming Import
  2. App Mobile SDK
  3. Bulk Import

の3種類ある。

Webアプリだと1,3の2つでログ的なものは1, DBにストアしているものは3の方法で入れれば、大抵の場合は良さそう。

スキーマ定義

TDは基本的にはログをJSON形式で送るだけなので、予めテーブルを作ったり、スキーマを決めておく必要はない。

ただ、データを送信した後に、解析する際、各フィールドをv['user_id']と言った形でアクセスせずに、user_idでアクセスできるようにするために、以下のようにスキーマを定義すると良い。このスキーマを作ることで、デフォルトの型が指定される。また、定義は後で変更することが出来る。

事例集

Hive Query の例が色々載っていて参考になる。
ただし、たまに間違いがあるので注意w

TreasureData UDF

UDFを使うとセッションでの最初のアクセス元を求める等、普通のSQLでは書くことが難しいクエリが簡単にかけたりする。

パフォーマンスチューニング

  • TD_TIME_RANGE と TD_TIME_FORMAT は一緒に使ってはいけない
  • v['hoge']を使わずにカスタムスキーマを使う
  • SELECT COUNT(DISTINCT(field)) を使ってはいけない
    • SELECT COUNT(1) FROM ( SELECT DISTINCT field FROM tbl ) t と書く
  • ORDER BY より SORT BY を使う (違いについて)
  • GROUP BY はより分散できるものを先に置く
    • good: SELECT GROUP BY uid, gender
    • bad: SELECT GROUP BY gender, uid
10
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
18