« 技術:Hadoop | トップページ | 技術:Hive »

Hive

HadoopのサブプロジェクトのHiveについて記載します。

概要

HiveはApacheのトッププロジェクトであるHadoopのサブプロジェクトとなります。
HiveはHiveQLというSQLライクな言語でHadoop処理を実行することができます。

http://hive.apache.org/

実行方法は他のRDBと似通っており、大まかに以下のような形になります。

  1. 入力用・出力用のテーブルをクリエイト
  2. SelectInsert文で処理を実行

ユーザーが利用する時に行うことは、この入力用・出力用のテーブル文作成、SelectInsert文の作成といったところです。 また通常のSelectInsert文だけでは対応できない場合に、UDF(UserDefinedFunction)というユーザー定義関数の作成が可能ですので、そちらを作成して対応することになります。
UDFはjavaで記載することになります。

SelectInsert以外でデータを投入する場合は、LOAD DATAが利用できる(MySQLの"LOAD DATA LOCAL INFILE ~"とほぼ同様)ので、こちらでデータ投入することも可能です。

注意点

  • HiveQLはSQLライクなだけで完全にSQLと同様の関数や記載方法ができるわけではありません。
  • 作成したテーブルからSelectでデータ参照が可能ですが、レコード単位での削除や更新はできないので、再度SelectInsertでデータの入れ替えとなります。
  • カウントを取得する時は"select count(1) from mytable;"のようにします。アスタリスクは指定できません。

ご支援、宜しくお願いします!←ポチッ!とブログランキング!

    |

    « 技術:Hadoop | トップページ | 技術:Hive »

    コメント

    コメントを書く



    (ウェブ上には掲載しません)




    トラックバック


    この記事へのトラックバック一覧です: Hive:

    « 技術:Hadoop | トップページ | 技術:Hive »