Treasure Data - Support Engineering Team blog

トレジャーデータのサポートエンジニアリングチームのブログです。

Treasure DataにおけるIDの種類とその取得方法 - その1

こんにちは、Treasure Dataサポートの伊藤です。 今回は、Treasure Dataにおける各種IDについて説明していきます。 なぜIDについて説明するのか? UserのID JobのID(Hive/Presto/Partial Delete/Result Export/Bulk Load/Bulk Import/Bulk Export) Jobとは J…

インポート時に意図していないカラムができてしまう現象の原因・回避方法

なぜこのような事象が発生するのか どのように対応すれば良いのか 未然にこの事象を防ぐには 既にカラム名_1が発生してしまった場合の対応 補足:GUI上のSourceからカラム名を変更する こんにちは。Treasure Dataサポートの佐藤です。 日頃Treasure Dataを使…

Profile APIの実装サンプル

Treasure Dataでの準備 Profile API Tokenの作成 項目解説 Workflowの確認 Profile APIの実装 td-js-sdkのインストール 初期化処理 segmentの取得処理の実装 サンプルページと実装コード 今回はProfile APIのサンプルについて解説をしていきたいと思います。…

Columnを削除したい

こんにちは、Treasure Data(以後TD)サポートの伊藤です。 TDのテーブルからColumn(列)を削除したいというリクエストを度々頂戴します。本記事では関連したナレッジなどを整理しつつ、どのように対応すれば良いのか紹介していきます。 結論 Columnを削除して…

Digdag で円周率を計算してみる

Treasure Data サポートの笠井です。 この記事は、 Treasure Data の Workflow でベースになっている Digdag を使って遊んでみたという記事です。実際に Treasure Data で Workflow を扱う上ではほぼ役に立ちません。 今回はタイトルにもある通り、モンテカ…

pytdでの意図しないデータ変換について

こんにちは、サポートの橘です。 今回はpytdを使っている際に遭遇する意図しないデータ変換の事象について解説いたします。 目次 pytdとは 事象 原因 対策 TL;DR load_table_from_dataframeを実行してDataFrameをTreasure DataにUploadすると意図しないデー…

Workflowの複雑なスケジュール設定を紹介します

こんにちは、Treasure Data サポートの伊藤です。 今回は、複雑なスケジュール設定をWorkflowで実現する方法について説明します。 サンプルも記載しますが、参考にされる場合は動作確認の上お使いください。 Workflowのスケジュール設定概要 複雑なスケジュ…

TDコンソールにログインできないときに

こんにちは。Treasure Data(以後TD)サポートの伊藤です。 今回はTDコンソールにログインできない場合の対処方法について取り上げます。 TDコンソールへログインする際の認証方法について The username/password combination is incorrect. が表示される ユー…

Something went wrong on our end エラーが発生したときに

こんにちは、Treasure Data(TD) サポートの伊藤です。 今回は、TDコンソール(ブラウザで操作するWeb UI)で稀に発生する、奇妙なエラーについて触れてみます。 Something went wrong on our end 対処方法 リロードする 他のブラウザを使う ブラウザのキャッシ…

誰も心当たりのないPrestoクエリについて

こんにちは、Treasure Data サポートの伊藤です。 今回は 見覚えがないPrestoクエリが実行されている という謎について迫っていきます。 心当たりのないクエリ 謎のクエリの目的 どこから実行しされたの? なぜエラーになるの? 必要なアクション 終わりに …

TDのデータ型について

こんにちは、Treasure Data(TD) サポートの伊藤です。 今回はクエリを扱う上で重要な要素であるデータ型について説明していきます。 データ型とは TDを利用する際のデータ型の種類 TDのデータ型 Hiveのデータ型 Prestoのデータ型 各データ型の関係 データ型…

条件に合致するレコード数を求めるには

はじめに こんにちは、Treasure Data サポートの伊藤です。 今回は、SQLで特定の条件に合致するレコード数をカウントする方法と、その方法のロジックについて説明します。 はじめに 色々なケースでレコード数をカウントする 条件に合致するレコードのみカウ…

文字コードについて

こんにちは、Treasure Data(TD) サポートの伊藤です。 今回はTDを利用する上で気にすることがあるであろう、文字コードについて取り上げたいと思います。 文字コードとは ASCII(シングルバイト文字) UTF-8 や S-JIS(マルチバイト文字) TDを取り扱う上での文…

Incremental Loading とは

こんにちは、Treasure Data(TD) サポートの伊藤です。 今回は差分インポートするための機能である Incremental Loading 機能について触れようと思います。 差分インポートとは Incremental Loadingを使うには 差分判定ロジックについて 辞書式ソートによる判…

Treasure Data 概要 - Export編

こんにちは、Treasure Data(TD) サポートの伊藤です。 前回のインポート編に続き、エクスポート編として記事を書こうと思います。 インポートとは異なりエクスポートは機能数が少ないので、とっつきやすく読みやすいと思います。 エクスポートとは Result Ex…

Treasure Data 概要 - Import編

こんにちは、Treasure Data(以後TD) サポートの伊藤です。 TDは様々な機能を提供しており、利用者ができることが多岐に渡る反面、施策を実現しようとしたときにどういった選択肢があるのか把握しづらい面があるかと思います。 そこで、今さらではありますが…

Presto Conference Tokyo 2020 (Online) 登壇・参加レポート

Treasure Data サポート上加世田です。 Presto Conference Tokyo 2020 にて登壇しました。 そのレポートと合わせて紹介いたします! Presto Conference Tokyo 2020 (Online) TDにおいてもかなり中心的な機能であるPrestoのカンファレンスです。 昨年はTreasu…

td-toolbeltチュートリアル ちょっとした便利な使い方

こんにちは、Treasure Data サポートの大村です。 今回はすこし横道?にそれて、複数アカウントでのtd-toolbeltの便利な使い方についてご紹介していきたいと思います。 Treasure Dataの環境をずっと同じユーザで使用つづける場合はtd accountコマンドでユー…

td-toolbeltチュートリアル

こんにちは。Treasure Data サポートチームの大村です。今回はコマンドラインによるTDの操作方法についてチュートリアルをご紹介したいと思います。 TDには各種サービスを管理するためのWeb UI(TDコンソール)がありますが、このWeb UIと同等のコマンドライン…

Custom Script開発手順およびデバッグ

こんにちは。Treasure Data 大村です。今回はCustom Scriptの基本的な開発手順およびデバッグについてご紹介していきたいと思います。 Custom Script開発環境構築については前回の記事(Custom Script開発準備)を参照下さい。 プログラム作成 pythonプログ…

Treasure Academyのご紹介

Treasure Data サポートの上加世田です。 2020年4月より、Treasure Dataで初となるTDユーザ様向けの有償トレーニングとしてトレジャーアカデミーを提供開始致しました。 受講できるコースは2つあり、それぞれ修了試験に合格することで修了証を受け取ることが…

Customer Support Tech Meetup #2に登壇してきました。

こんにちは。Treasure Dataサポートエンジニアの佐藤です。 タイトル通りですが、mixiさん主催のCustomer Support Tech Meetupというイベントに参加してきました。 mixi.connpass.com このイベントは「CREがどのようにしてCS課題を解決しているのか?」とい…

Treasure Data で半角文字・全角文字を正規化する方法

Treasure Data の笠井です。 今回は Treasure Data(以下 TD) で半角文字と全角文字を正規化によってうまく扱う方法を紹介します。 結論 とりあえず結論を書きます。 Presto で正規化する場合は normalize 関数*1 を利用する。 Hive では Hivemall の関数と…

Custom Script開発準備

こんにちは。Arm Treasure Data サポートチームの大村です。今回は最近使用される方が増えてきたように感じるCustom Scriptの開発準備についてご紹介していきたいと思います。 Custom Scriptとは Treasure Workflowから呼びだすことのできるpythonスクリプト…

Treasure Workflowのsession timeとスケジューリングについて

こんにちは。Arm Treasure Dataでサポートエンジニアとして働いています、佐藤です。 今回は少しイメージとして掴みにくい、Treasure workflowのsession timeのコンセプトに関して少し説明して行こうかと思います。 そもそもTeasure Workflowとは? Treasure…

簡単にTreasure Dataのクエリ(Presto/Hive)の動作確認をするには

こんにちは、Arm Treasure Data サポートの伊藤です。 本記事は2回目のエントリーとなります。 前回はData Connectorと呼ばれる、外部サービス(AWS S3やSFTPサーバーなど)からデータをTreasure Data(TD)へインポートする際のナレッジについて説明しましたが…

Data ConnectorのJobでskipped lineがでる理由

トレジャーデータサポートの橘です。 最初のエントリーを書くことになりやや緊張しております。 このエントリーではよくお問い合わせを受ける想定よりも件数が少ない、または1件もデータがインポートされていないという事象についてお話をしたいと思います。…