コンテンツにスキップ

Jaql

出典: フリー百科事典『ウィキペディア(Wikipedia)』

Jaql (JAQL) JSON

Google[1]2010712. IBM[2]BigInsightsHadoopJaql

JSON  CSVTSVXML

A[3] PIG Latin and Hive QL 

JAQL[4] 

[]


JAQL
source -> operator(parameter) -> sink ;

ここでsinkは演算元ともなり得る。 したがって、通常、JAQLプログラムは、データ処理グラフを表現して、次の構造をとる必要がある。

source -> operator1(parameter) -> operator2(parameter) -> operator2(parameter) -> operator3(parameter) -> operator4(parameter) -> sink ;

一般的には以下のように、矢印の後にJAQLプログラムを改行させて読みやすくする。これはTwitter SCALDINGの共通のイディオムでもあります。

source -> operator1(parameter)
-> operator2(parameter)
-> operator2(parameter)
-> operator3(parameter)
-> operator4(parameter)
-> sink ;

基本的な演算[5][編集]

EXPAND[編集]

EXPAND式を使用して、ネストされた配列をフラット化します。 この式は、ネストされた配列Tの配列を入力として受け取り、各ネストされた配列の要素を最上位の出力配列に昇格させることによって出力配列[T]を生成します。

FILTER[編集]

FILTER演算子を使用して、指定された入力配列から要素を除外します。 この演算子は、型Tの要素の配列を入力として受け取り、同じ型の配列を出力し、述語が真と評価される要素を保持します。 これは、SQL言語のWHERE句に相当します。 例:

data = [
 {name: "Jon Doe", income: 20000, mgr: false},
 {name: "Vince Wayne", income: 32500, mgr: false},
 {name: "Jane Dean", income: 72000, mgr: true},
 {name: "Alex Smith", income: 25000, mgr: false}
];

data -> filter $.mgr;

[
  {
    "income": 72000,
    "mgr": true,
    "name": "Jane Dean"
  }
]

data -> filter $.income < 30000;

[
  {
    "income": 20000,
    "mgr": false,
    "name": "Jon Doe"
  },
  {
    "income": 25000,
    "mgr": false,
    "name": "Alex Smith"
  }
]

GROUP[編集]


GROUP使1

JOIN[]


JOIN使2 naturalleft-outerright-outerouter joins

SORT[]


1SORT使

TOP[]


TOP 

TRANSFORM[]


TRANSFORM使

参照[編集]

外部リンク[編集]