タグ

ブックマーク / nagix.hatenablog.com (5)

  • CSV ファイルのヘッダ行をカラム名に使う - nagix

    この記事は Apache Drill Advent Calendar 2015 の2日目の記事です。 11月の Tokyo Apache Drill Meetup で出た質問の中に、「CSV ファイルのヘッダ行をカラム名に使いたいが可能か?」というものがありましたが、Drill 1.2 では先頭行をスキップするオプションはあったものの、行の内容をカラム名として使う機能は未実装でした。で、その後リリースされた Drill 1.3 の [DRILL-951] CSV header row should be parsed にて、その機能が追加されたので紹介します。 例えばこんなデータがあるとします。 $ head /tmp/personal_information.csv 連番,氏名,氏名(カタカナ),性別,電話番号,郵便番号,住所1,住所2,住所3,住所4,住所5,生年月日 1,佐川邦男,サ

    yass
    yass 2015/12/25
    " バージョン1.3以降では、ファイルの拡張子をcsvhにしておくと・・・ $ mv /tmp/personal_information.csv /tmp/personal_information.csvh これだけで先頭行がカラム名としてセットされ、クエリの中で利用できるようになります。"
  • マナーの悪い JSON データを jq で整形する - nagix

    JSONデータの問題 色々なJSONデータを扱っていると、たまにマナーの悪いデータを目にします。例えば、政府統計情報e-Statでダウンロードできる次のようなJSONデータ(一部を切り出しています)。 {"CLASS_OBJ":[ {"@id":"tab","@name":"表章項目","CLASS":[{...},{...},...]}, ←このオブジェクト内の"CLASS"の値は配列 {"@id":"cat01","@name":"全域・人口集中地区2010","CLASS":[{...},{...},...]}, ←同じく配列 {"@id":"area","@name":"地域(2010)","CLASS":[{...},{...},...]}, ←同じく配列 {"@id":"time","@name":"時間軸(年次)","CLASS":{...}} ←このオブジェクト内の"CLA

    マナーの悪い JSON データを jq で整形する - nagix
    yass
    yass 2015/06/21
  • Apache Drill で日本語を扱うときの注意 - nagix

    言語の設定がUTF-8になっている環境であれば、データに日語が含まれていても基的に問題はありません。 $ echo $LANG ja_JP.UTF-8 次のようなCSVファイルを $ cat /tmp/test.csv 1,くまモン,熊 2,ふなっしー,船橋 3,せんとくん,奈良 次のSQLで取得すると、カラム名、データともきちんと表示されます。まあ、マルチバイト文字が入っていると水平の表示位置がずれるのですが。 $ apache-drill-1.0.0/bin/drill-embedded 0: jdbc:drill:zk=local> SELECT . . . . . . . . . . . > COLUMNS[0] 番号, . . . . . . . . . . . > COLUMNS[1] 名前, . . . . . . . . . . . > COLUMNS[2] 住所 .

    yass
    yass 2015/06/21
  • インサイド MapR (1) (Hadoop アドベントカレンダー 2011 16日目) - nagix

    この記事は Hadoop アドベントカレンダー 2011 の16日目の記事です。 今年の5月にMapR Technologies社から発表された、独自実装のHadoopディストリビューション(以降、単純にMapRと呼びます)ですが、そのユニークな特徴やオープンソース実装のはるか先をいく先進性から、いろいろなところで注目を集めています。ただ、非常に多彩な機能を持ちながら、これどうやって実現しているの、という風に思っている方も多いと思います。私はお仕事MapRの実装を若干詳しく知る立場におりますので、MapRの中身を少し掘り下げてみたいと思います。 MapRはHadoopのどこを改良しているのか MapR TechnologiesはもともとGoogleでGFS、BigTable、MapReduceなどの検索基盤技術を担当していたエンジニア M.C. Srivas 氏などが中心となって3年ほど

    インサイド MapR (1) (Hadoop アドベントカレンダー 2011 16日目) - nagix
    yass
    yass 2014/05/24
    " ネームコンテナはボリュームごとに異なるサーバノードに作成されるため、メタ情報に対するアクセスは(少なくともノード数以上のボリュームがあれば)全ノードに対して分散されます。"
  • Apache Drill ではクエリ処理はこんな風に行われる(Hadoop アドベントカレンダー 2013 16日目) - nagix

    この記事は Hadoop アドベントカレンダー 2013の16日目の記事です。 Apache Drill 概要 Apache Drill は Google Dremel に触発されて開発されたオープンソースプロジェクトで、2012年8月に Apache Incubator として提案されました。大規模データに対し、バッチ処理ではなく、インタラクティブなクエリの実行を可能にするという意味では、ImpalaやStinger、Presto といったプロジェクトと同様の大きな目的を持っていますが、SQL 2003 完全準拠、パーサや処理実行部分を Pluggable にして幅広いクエリ言語やデータソースに対応、JSON/Avro のようなネストデータに対応、スキーマはオプショナルでスキーマレスなデータに対応、といったところなど、より柔軟で拡張性の高いフレームワークを目指しているのが他のプロジェクト

  • 1