データをシリアライズするには、独自のフォーマットを定めるよりも、基本的な定義済みの構造を組み合わせてフォーマットを作るほうが望ましい場合が多いです。 そのような仕組みとしてJSON, S式, XMLなどが存在しますが、これらは 「基本的な構造」として何を選ぶか、という観点からそれぞれに個性を持っています。 本記事では、具体的な構文のことは基本的に忘れて、各フォーマットが採用するデータモデルの違いに焦点を絞って比較します。 JSON data JSON = Value data Value = -- Compounds Array [Value] | Object (Map String Value) -- Scalars | Null | Boolean Boolean | String String -- UCS-2 | Number IntegerOrFloat -- no NaNs
$ jq -h jq - commandline JSON processor [version 1.5] Usage: jq [options] <jq filter> [file...] jq is a tool for processing JSON inputs, applying the given filter to its JSON text inputs and producing the filter's results as JSON on standard output. The simplest filter is ., which is the identity filter, copying jq's input to its output unmodified (except for formatting). For more advanced filters
この記事は Redash Advent Calendar 2017 の10日目の記事です。 Redashでは「Python Datasource」というものが使え、Redash上でPythonスクリプトを書くことができます。 これを使えば、Redash上でほぼなんでもできるようになります。 今回やるのは、「JSONのパース」です。 BigQueryでスキーマレスなデータを扱う Redashの用途として、BigQueryのデータを解析・グラフ化というものがあると思います。 BigQueryのデータ内にJSONを入れ、そのJSONを解析していい感じにグラフ化したいという要望がきたとして スキーマレスなJSONが入っていた場合、BigQueryでの解析は難しいです。 例えば以下のようなJSONがあるとします。 {"id": 1, "name": "Taro", "record": "[{\"Ma
{ "app": 1, "records": [ { "updateKey": { "field": "setupdatekey", "value": "1" }, "record": { "fieldName1": { "value": [ { "id": "hoge", "value": { "fieldName2": { "value": "foo" }, } } ] } } }, { "updateKey": { "field": "setupdatekey", "value": "2" }, "record": { "fieldName1": { "value": [ { "id": "fuga", "value": { "fieldName2": { "value": "bar" }, } } ] } } } ] }
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く