クエリの作成が楽になるUDF

Similar documents
関数サンプル1

PowerPoint プレゼンテーション

メール全文検索アプリケーション Sylph-Searcher のご紹介 SRA OSS, Inc. 日本支社技術部チーフエンジニア Sylpheed 開発者 山本博之 Copyright 2007 SRA OSS, Inc. Japan All right

関数サンプル1

防災マップ作成システムの開発業務基本設計書

Yahoo!ビッグデータインサイト めちゃ楽ガイド

データセンターの効率的な資源活用のためのデータ収集・照会システムの設計

サイボウズ Office8 API マニュアル API 概要 第 1 版 サイボウズ株式会社

Microsoft Word - Android_SQLite講座_画面800×1280

Dolteng Scaffoldに対する機能追加とマスタ-ディテールScaffoldの紹介

Microsoft PowerPoint pptx

ユーティリティ 管理番号 内容 対象バージョン 157 管理情報バッチ登録コマンド (utliupdt) のメッセージ出力に対し リダイレクトまたはパイプを使用すると メッセージが途中までしか出 力されないことがある 267 転送集計コマンド (utllogcnt) でファイル ID とホスト名の組

目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst, MoveNext, MovePrevious, MoveLast)...

Windows Powershell 入門

TALON Tips < カレンダー ( 月別 ) の画面を表示する > 株式会社 HOIPOI 第 1.1 版 p. 1

はじめに コースの概要と目的条件分岐の方法や複雑な集計の手法など SQL のコーディングの幅を広げるためのテクニックについて説明します また パフォーマンスを考慮した記述方法や正しい結果を取得するための記述方法などについても あわせて説明します 本コースでは 実践的な SQL の記述手法を広く浅く紹

Android 用.apk 形式編 改版履歴 版数 日付 内容 担当 V /4/1 初版 NII V /2/28 JKSコマンドの修正 署名確認作業の補足追加 V /2/26 動作環境を以下に変更 Windows10 NII NII V

Cisco CallManager で SQL クエリーを使用したコール詳細レコードの検索

8. Windows の補足情報 コマンドの使用についての説明です Windows からのファイル直接印刷 Windows でコマンドを使用したファイル直接印刷の方法についての説明です この機能はネットワーク接続をしているときに使用できます この方法で印刷できるファイルは 本機が搭載しているエミュレ

データベース暗号化ツール「D’Amo」性能検証

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

Sequel のすすめ 私が SQL を嫌いな理由 とみたまさひろ RubyHiroba Sequel のすすめ - 私が SQL を嫌いな理由 Powered by Rabbit 2.0.7

第 2 章 問合せの基本操作 この章では データベースから情報を検索する際に使用する SELECT コマンド および SELECT コマンドと 同時に使用する句について説明します 1. 問合せとは 2. 基本的な問合せ 3. 列の別名 4. 重複行を一意にする 5. 検索行の絞込み 6. 文字パター

スライド 1

プレポスト【解説】

目 次 1. 本文書の目的と対象 EXTENSION 機能一覧 HELLO.JSP( ( 標準 ) BREADCRUMBS.JSP ( 標準 ) CALCULATE.JSP( ( 標準 ) CALEN

マニュアル訂正連絡票

Basic descriptive statistics

MCDRS_tutorial_advanced_v1.pptx

3/7 マイグレーション開発方針 顧客名 0 作成者 根岸正 < プログラム移行方針 > システム名称 A-VX システムマイグレーション作成日 2015/09/01 < COBOL 資産のプログラム移行 > COBOLソース ( メインとCOPYLIB) を入力としてSCC 言語変換ツールにてVB

JAVA.jar 形式編 改版履歴 版数日付内容担当 V /4/1 初版 NII V /2/28 JKSコマンドの修正 署名確認作業の補足追加 NII V /2/26 キーストアファイルの形式を JKS から PKCS12 に変更 動作環境の変更に伴う

HULFT-DataMagic for Windows Ver レベルアップ詳細情報 < 製品一覧 > 製品名 バージョン HULFT-DataMagic for Windows HULFT-DataMagic コード変換 オプション for Windows HU

目次 1. ログイン 報告 ユーザ 病院 使用場所 通知先 材料データベース... 7 ご注意ください...12 JAN コードから材料データを返します マネージャーの情報変更 報告 CS

Java Scriptプログラミング入門 3.6~ 茨城大学工学部情報工学科 08T4018Y 小幡智裕

目次 1 章はじめに 本書の利用について Web ブラウザーについて 章 kintone でタイムスタンプに対応したアプリを作成する kintone にログインする kintone でアプリを作成する

Microsoft Word - Training10_プリプロセッサ.docx

ことばを覚える

Upload path ファイル送信先ディレクトリのパスを指定します ホームディレクトリに画像を送信する場合は空白のまま サブディレクトリに画像を送信する場合はディレクトリ名を指定します さらに下位のディレクトリを指定する場合は \ マークを利用します 例 ) ホームディレクトリ以下の camera

PowerPoint Presentation

目次 1. Azure Storage をインストールする Azure Storage のインストール Azure Storage のアンインストール Azure Storage を使う ストレージアカウントの登録... 7

Chapter Two

職業訓練実践マニュアル 重度視覚障害者編Ⅰ

Section1_入力用テンプレートの作成

WLM-L11G導入ガイド

KDDI Smart Mobile Safety Manager Mac OS キッティングマニュアル 最終更新日 2019 年 4 月 25 日 Document ver1.1 (Web サイト ver.9.6.0)

. 目次 概要 リストア環境の設定... 3 ステップ 1-1 Recovery Environment メディアからの起動... 3 ステップ 1-2 タイムゾーンの選択... 4 ステップ 1-3 必要なドライバの読み込み... 5 ステップ 1-4 ネットワークドライブの割り当

PowerPoint プレゼンテーション

Microsoft PowerPoint - 第5章補足-DB2組み込みSQL.ppt

Microsoft認定資格問題集(70-483_demo)

レポートのデータへのフィルタの適用

9

整理番号変換ツール 操作説明書 平成 20 年 11 月 厚生労働省保険局調査課

WEBシステムのセキュリティ技術

NEC iStorage NSシリーズ NF NS500Ba ユーザーズガイド

クイックマニュアル(利用者編)

Microsoft PowerPoint - OSS運用管理勉強会資料_ a.pptx

データベースアクセス

開発・運用時のガイド JDK8への移行に伴う留意点 [UNIX]

目次 成果連携マニュアル 広告を仕入れるパターンの繋ぎ込み 3 広告を卸すパターンの繋ぎ込み 10 STEP1-1 新規広告登録 4 STEP1-1 新規アフィリエイター登録 11 STEP1-2 新規広告登録 5 STEP1-2 新規メディア登録 12 STEP2-1 広告素材の登録 6 STEP

第 1 章 条件分岐 この章では 条件に応じて処理を分岐する方法について説明します 1. CASE 式で複雑な条件分岐を実現 2. 関数を使用した条件分岐 3. MERGE 文による条件に応じた DML の実行

F コマンド

RTC_STM32F4 の説明 2013/10/20 STM32F4 内蔵 RTC の日付 時刻の設定および読み込みを行うプログラムです UART2( 非同期シリアル通信ポート 2) を使用して RTC の設定および読み込みを行います 無料の開発ツール Atollic TrueSTUDIO for

Microsoft Word - Outlook_manual doc

问题集 ITEXAMPASS 1 年で無料進級することに提供する

Microsoft Word - no103.docx

Case 0 sqlcmdi.parameters("?tencode").value = Iidata(0) sqlcmdi.parameters("?tenname").value = Iidata(1) 内容を追加します sqlcmdi.executenonquery() Case Else

IBM API Connect 開発者ポータル構成ガイド 1章

OFISTAR S3100取扱説明書

関数サンプル2

TALON Tips < 親子関係のある構成データを TALON で表示する > 株式会社 HOIPOI 第 1.1 版 p. 1

目次 1 はじめに 商標 略称について 抽出マクロツールの概要 確認事項 / 事前準備 確認事項 事前準備 デバイス情報ファイルの準備 初期設定ファイルの準備 操作手順..

Caché SQL に関するよくある質問

eラーニング資料 e ラーニングの制作目標 データベース編 41 ページデータベースの基本となる概要を以下に示す この内容のコースで eラーニングコンテンツを作成予定 データベース管理 コンピュータで行われる基本的なデータに対する処理は 次の 4 種類です 新しいデータを追加する 既存のデータを探索

SmallTown 日付オブジェクト 日付オブジェクトを使ってページ内にいろいろな仕掛けをつくってみよう 1. 日付オブジェクトとは JavaScriptではいろいろなオブジェクトを扱えますが 日付オブジェクトもその一つです 手順としては 1 日付オブジェクトを作成する2そのオブジェクトから日にちや

SHOBI_Portal_Manual

ベストプラクティスガイド ShadowProtect 回復パーティションを含む UEFI マシンのリストア 2015 年 4 月 20 日 更新日 : 2017 年 10 月 25 日

mySQLの利用

<4D F736F F D20B6BCB5D7B2CCDED7D8CFC6ADB1D9315F43532E444F43>

PowerPoint プレゼンテーション

日本オラクル株式会社

サイボウズ ガルーン バージョン 3.7 管理者マニュアル

GlobalFlow5 Ver.1.00R04 リリースノート

改訂履歴 日付バージョン記載ページ改訂内容 V2.1 - 初版を発行しました V3.1 P5 ドキュメントラベルが新規追加された事を追記 P7 P8 新しくなったラベルのツリー表示説明を追記 新しくなったラベルの作成 削除操作を追記 P9 ラベルのグループ

: ORDER BY

Microsoft PowerPoint - SPEDAS_lecture_04_CUI_abe_ pptx

Microsoft Word - 座談会「小泉政治」.doc

PowerPoint プレゼンテーション

シスログ@クラウド ログレイアウト_

正規表現応用

任意の間隔での FTP 画像送信イベントの設定方法 はじめに 本ドキュメントでは AXIS ネットワークカメラ / ビデオエンコーダにおいて任意の間隔で画像を FTP サー バーへ送信するイベントの設定手順を説明します 設定手順手順 1:AXIS ネットワークカメラ / ビデオエンコーダの設定ページ

1,.,,,., RDBM, SQL. OSS,, SQL,,.

ServerView with Data ONTAP-v™ PowerChute® Network Shutdown 設定について

Exam : J Title : Querying Microsoft SQL Server 2012 Version : DEMO 1 / 10

このドキュメントに記載されている情報 (URL 等のインターネット Web サイトに関する情報を含む ) は 将来予告なしに変更することがあります このドキュメントに記載された内容は情報提供のみを目的としており 明示または黙示に関わらず これらの情報についてマイクロソフトはいかなる責任も負わないもの

立ち読みページ


eo 光ベーシックルータ (BAR1G01) 取扱説明書 (Ver1.0) 1 目次 1. 設定画面を開く ステータス画面で接続状態を確認する 基本設定 インターネット接続設定 DHCPサーバー機能設定 IPアドレ


2

endo.PDF

Transcription:

トレジャーデータサービス by IDCF 活用マニュアル 目次 (1) UDF の概要 概要 特長 P1 [ 日付を選択 ] (2) UDF の紹介 TIME 関連 UDF 1 TD_TIME_FORMAT P2 2 TD_TIME_RANGE 3 TD_SCHEDULED_TIME 4 TD_TIME_ADD 5 TD_TIME_PARSE 6 TD_DATE_TRUNC その他 UDF 7 TD_SESSIONIZE 8 TD_PARSE_AGENT 最終更新日 :2016/10/1

目次 UDF とは 特長 UDF とは UDF とは User Defined Functions の略で ユーザーが自分自身で定義する独自関数のことです トレジャーデータサービス by IDCF( 以降 TD) では クエリを作成するのに便利な UDF を多数用意しております これらを使用して Hive や Presto で使用できる標準 SQL コマンドでは表現することが難しいクエリを作成することができます 特長 クエリのパフォーマンスを向上できる :TD では 1 時間単位で区切られてデータが時系列で格納されています 時間の範囲を指定するクエリに対しては 必要なデータだけを読み込むことで クエリのパフォーマンスを向上できます 例えば 時間の範囲を指定する際に 時刻を指定する際に Time 関連の UDF が活用されます 取得することが難しいデータの取得 : 特定の UDF を使うことで 普通の SQL では取得することが難しいクエリの結果が取得できるようになります 例えば UDF を使って IP アドレスを元に 国のコードやセッション ID などのデータを取得できます 1

目次 TIME 関連 UDF 1 TD_TIME_FORMAT 2 TD_TIME_RANGE 3 TD_SCHEDULED_TIME 4 TD_TIME_ADD 5 TD_TIME_PARSE 6 TD_DATE_TRUNC その他 UDF 7 TD_SESSIONIZE 8 TD_PARSE_AGENT TIME 関連の UDF 1 TD_TIME_FORMAT UNIX タイムスタンプを string 型の日付フォーマットに変換します TD_TIME_FORMAT(Unix タイムスタンプ, ' 日付フォーマット ', ' タイムゾーン ') 第 1 引数には int と long 型の Unix タイムスタンプ を入力します 第 2 引数には string 型の 日付フォーマット を入力します 第 3 引数には タイムゾーン を入力します 未記入の場合 UTC になります # 利用可能な日付フォーマットに関してはこちらでご確認ください # 利用可能なタイムゾーンに関してはこちらでご確認ください Hive と Presto での例文 SELECT TD_TIME_FORMAT(time, 'yyyy-mm-dd HH:mm:ss', 'JST') FROM Unix タイムスタンプを持っている time というカラムを指定して 日本時間の yyyy-mm-dd HH:mm:ss 形式へ変換します 2

2 TD_TIME_RANGE 一定期間に該当するデータのみを抽出する際に使用します Hive での使い方 TD_TIME_RANGE(Unix タイムスタンプ, " 開始時刻 ", " 終了時刻 ", " タイムゾーン ") Presto での使い方 TD_TIME_RANGE(Unix タイムスタンプ, ' 開始時刻 ', ' 終了時刻 ', ' タイムゾーン ') 第 1 引数には int long 型の Unix タイムスタンプ を入力します 第 2 引数と第 3 引数の 開始時刻 と 終了時刻 は int long string 型に対応します 開始時刻 が省略あるいは Null の場合 UDF は 開始時刻 を 0 と解釈します 終了時刻 が省略あるいは Null の場合 終了時刻を設定せず 開始時刻以降を全ての期間として指定します 開始時刻 と 終了時刻 の形式が間違っている場合 UDF は Null として解釈します 第 4 引数に タイムゾーン を記入します 未記入の場合 UTC になります 開始時刻 と 終了時刻 内にタイムゾーンを表記する際には( 例 ) 2016-03-18 +0700 ) 第 4 引数 タイムゾーン を記入する必要はありません Hive の例文 SELECT WHERE TD_TIME_RANGE(time, "2016-03-18", "2016-03-19", "JST") Presto の例文 SELECT WHERE TD_TIME_RANGE(time, '2016-03-18', '2016-03-19', 'JST') Unix タイムスタンプを持っている time というカラムを指定して 日本時間で 2016 年 3 月 18 日 0 時 0 分 0 秒から 2016 年 3 月 19 日 0 時 0 分 0 秒に該当するデータを抽出します #HH:mm:ss の形式が省略された場合 0 時 0 分 0 秒として認識されます 3

3 TD_SCHEDULED_TIME スケジュールクエリによって ジョブが実行されたときの正確な時刻を返します TD_SCHEDULED_TIME() クエリがスケジュール設定されて ジョブがスケジュールより遅延された際の返す値は ジョブが実際走った時間とは異なる可能性があります クエリがスケジュール設定されていないときには ジョブが実行されたときの時刻を返します 4 TD_TIME_ADD 指定したい時間から 分 時間 日 単位で差分を追加します Hive での使い方 TD_TIME_ADD( 指定したい時刻, 時間差分, タイムゾーン ) Presto での使い方 TD_TIME_ADD(' 指定したい時刻 ', ' 時間差分 ', ' タイムゾーン ') 第 1 引数の 指定したい時間 は int long string 型に対応します 指定したい時刻の形式 が間違っている場合 Null を返します 第 2 引数の 時間差分 は下記のような形式に対応します 'Nd' N 日後 例 : '1d' '2d' '30d' '-Nd' N 日前 例 : '-1d' '-2d' '-30d' 'Nh' N 時間後 例 : '1h' '2h' '30h' '-Nh' N 時間前 例 : '-1h' '-2h' '-30h' 'Nm' N 分後 例 : '1m' '2m' '30m' '-Nm' N 分前 例 : '-1m' '-2m' '-30m' 'Ns' N 秒後 例 : '1s' '2s' '30s' '-Ns' N 秒前 例 : '-1s' '-2s' '-30s' 年 と 月 単位の差分はサポートされておりません 4

第 3 引数には タイムゾーン を記入します 未記入の場合 UTC になります 第 1 引数にタイムゾーンを表記する際には ( 例 )'2016-03-18 +0700') 第 3 引数 タイムゾーン を記入する必要はありません Hive での例文 SELECT WHERE TD_TIME_RANGE(time, "2016-03-18", TD_TIME_ADD("2016-03-18", "1d")) Presto での例文 SELECT WHERE TD_TIME_RANGE(time, '2016-03-18', TD_TIME_ADD('2016-03-18', '1d')) UTC 時間で 2016 年 03 月 18 日 0 時 0 分 0 秒から 2016 年 3 月 19 日 0 時 0 分 0 秒 (1 日後 ) までのデータを抽出します 5 TD_TIME_PARSE string 型の時間を UNIX タイムスタンプに変換します Hive での使い方 TD_TIME_PARSE(" 日付フォーマット ", " タイムゾーン ") Presto での使い方 TD_TIME_PARSE(' 日付フォーマット ', ' タイムゾーン ') 第 1 引数には string 型の 日付フォーマット を記入します 日付フォーマット の形式が間違っている場合 Null を返します 第 2 引数には タイムゾーン を記入します 未記入の場合 UTC になります 第 1 引数にタイムゾーンを表記する際には ( 例 ) 2016-03-18+0700 ) 第 2 引数 タイムゾーン を記入する必要はありません 5

# 利用可能な日付フォーマットに関してはこちらでご確認ください # 利用可能なタイムゾーンに関してはこちらでご確認ください Hive での例文 TD_TIME_PARSE("2016-03-18", "JST") Presto での例文 TD_TIME_PARSE('2016-03-18', 'JST') 日本時間の 2016 年 3 月 18 日 0 時 0 分 0 秒の時刻を Unix タイムスタンプの 1426604400 に変換します 6 TD_DATE_TRUNC Hour minute などのユニット単位で区切って UNIX タイムスタンプ値を返し ます TD_DATE_TRUNC(' ユニット ', time, ' タイムゾーン ') 第 1 引数には string 型のユニットである minute hour day week month quarter year のいずれかを記入します 第 2 引数には long 型の 時刻 を記入します 第 3 引数には タイムゾーン を記入します 未記入の場合 UTC になります Hive と Presto での例文 TD_DATE_TRUNC(' ユニット ', time, ' タイムゾーン ') 1416787667(='2014-11-24 00:07:47 UTC') の場合 1416787200(='2014-11-24 00:00:00 UTC') の値を返します 6

その他の UDF 7 TD_SESSIONIZE 同一アクセスと解釈したいレコードに同一 UUID を付与します TD_SESSIONIZE(Unix タイムスタンプ, タイムアウト時間, セッション見分け値 ) 第 1 引数には int long 型の UNIX タイムスタンプを入力します 第 2 引数には int 型のタイムアウト時間を入力します 第 3 引数には string 型の セッション見分け値 を入力します 同一な セッション見分け値 に対して 同一 UUID を付与します Hive と Presto での例文 SELECT TD_SESSIONIZE(time, 3600, ip_address) as session_id, time, ip_address, path FROM ( SELECT time, ip_address, path FROM web_logs ORDER BY ip_address, time ) 1 時間の間 (3600 秒 ) でアクセスした同一 ip_address に対して同一の UUID を振っています 注意する点は sub クエリの中に 第 3 引数である セッション見分け値 を ORDER BY する必要があります 8 TD_PARSE_AGENT string 型の user_agent のデータを分解して Map 型でキーと値を取得し ます TD_PARSE_AGENT(user_agent)[' キー '] 7

第 1 引数には varchar 型の user_agent の情報を持っているカラムを指定します ' キー ' という箇所には 分解される Map 型のキーを入力することで 特定のキーに該当する値を取得できます 特定の ' キー ' を未記入の場合は user_agent の全ての情報 Map 型のキーと値を取得します Hive と Presto での例文 TD_PARSE_AGENT(user_agent)['OS'] user_agent 情報内での OS という キー を特定して windows 7 Mac OS といった情報を取得します 8