めもめも

このブログに記載の内容は個人の見解であり、必ずしも所属組織の立場、戦略、意見を代表するものではありません。

2010-11-01から1ヶ月間の記事一覧

Jaql入門(番外編) - バスケット解析

何をするかと言うと。。。 ASCII.technologies 2011年1月号で、リッテルの清田さんが、バスケット解析処理を Hive で記述した例を掲載しています。同じ事を Jaql でやって、Hive との違いを味わってみます。 前準備 使用するデータは、Pig に付属の Web 検索…

Jaql入門(4) - さまざまなサンプル

wordcount jaql> splitArr = builtin("com.acme.extensions.expr.SplitIterExpr$Descriptor"); // 組み込みの split 関数 jaql> read(lines("Karamazov.txt")) -> expand splitArr( $, "[^\\w]+" ) -> group by $word = $ into { $word, num: count($) } -> …

Jaql入門(3) - ユーザ定義関数

median 関数を定義して使用する例です。足し算(add)と配列をソートしたときの真ん中の値(median)を定義して使用しています。 $ nl function.jql 1 $add = fn($a, $b) ( 2 $a + $b 3 ); 4 // $add( 1, 1 ); => 2 5 $median = fn($items) ( 6 $sorted = $i…

Jaql入門(2) - 基本操作と変数の使用

7人兄弟の英語と理科の試験結果を処理します。 Filter $ nl filter.jql 1 [ 2 { id: 1, math: 10, science: 100 }, 3 { id: 2, math: 90, science: 30 }, 4 { id: 3, math: 20, science: 80 }, 5 { id: 4, math: 40, science: 60 }, 6 { id: 5, math: 80, sc…

Jaql入門(1) - データフローと I/O

Hello, World! $ nl hello.jql 1 [{text: 'Hello, World!'}] -> write(file('hoge.json')); 2 read(file('hoge.json')); 3 quit; $ jaqlshell -cb hello.jql { "location": "hoge.json", "type": "local" } [ { "text": "Hello, World!" } ]Jaqlが扱うデータ…

JAQL実行環境のセットアップ手順 (obsolete)

注意 最新バージョン 0.5.1 が pre-build バイナリで提供されるようになりました。pre-build バイナリを利用した手順はこちらです。以下の手順は、0.4 が最新の時代の手順ですので、古い内容になりますが、参考のために残しておきます。 -------------------…