要件定義の不安をなくす。要件定義の不安をなくす。ユニファのバックエンド分割に学ぶイノベーションメタバース開発に必要な技術の基本知識をおさらい。Boost」など、さまざまなカンファレンスを企画・運営しています。BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。14:00DBGoogleツイート今回は、HBaseをSQLで操作しRDBのように扱えるようにする、Salesforceが開発したライブラリ「Phoenix」を紹介します。2コマンドラインで使ってみるJavaから使ってみるまとめ参考資料はじめに本連載では、ここまでにいくつかのHBaseのユースケースを紹介してきました。RDBとは設計のやり方が違うので、戸惑われた方もいらっしゃると思います。今回は、HBaseをSQLで操作できるライブラリ「Phoenix」を紹介したいと思います。NoSQLのHBaseをSQLで操作するというと変に聞こえるかもしれませんが、HBaseをRDBのように扱えるのはメリットだと思います。Phoenixを使ったからといって、HBaseをまったく意識しなくて良いということではありません。今回のテーマでは、HBase上でどう実現されているかについて着目していきたいと思います。前編ということで、実際にPhoenixを動かしてみましょう。対象読者HBaseを使ってみたいけど、どう使ったらよいか分からない方MySQLなどのRDB以外のデータベースを使ってみたい方PhoenixとはPhoenixは、Salesforceが開発した「HBaseをSQLで扱えるようにしたライブラリ」です。BSDライクなライセンスで公開されており、HBaseへの低レイテンシーなクエリを実行するために開発されました。SELECT、DELETEなど)がサポートされています。ビルトイン関数がサポートされており、独自に作ることも可能です。JDBCをサポートしているので簡単にJavaから使うことができます。Phoenixは、RDBライクな表形式のデータモデル(行×列)を提供しますが、HBase上では各列をRowKeyの一部かColumn/Valueとしてマッピングします。これについては、この後に説明します。それ以外にも、限定されたものですがトランザクションやセカンダリインデックス、ジョイン(マスタブランチのみ)もサポートされています。詳細は、以下を参考にしていただければと思います。PhoenixのブログPhoenixのWikiPhoenixの最近実装された機能PhoenixのロードマップPhoenixを使ってみるそれでは、実際にPhoenixを使ってみましょう。執筆時点のPhoenixの最新バージョンは2.2.2なので、そちらを使っていきます。インストールPhoenixをインストールしましょう。HBaseはすでにインストールされているものとします。以下のページを参考にインストールしてください。『HBaseを使って簡易ブログサービスを作ってみよう』Phoenixで推奨されているHBaseのバージョンは0.94.12なので、それ以上のバージョンのHBaseをインストールすると良いでしょう。Phoenixは以下の手順でインストールします。(1)以下のダウンロードページから、執筆時点の最新版であるphoenix-2.2.2-install.tarをダウンロードします。https://github.com/forcedotcom/phoenix/wiki/Download(2)ダウンロードしたファイルを解凍します。phoenix-2.2.2-install.tar(3)phoenix-2.2.2.jarを、HBaseのインストールディレクトリのlibディレクトリ以下にコピーします。<HBaseのインストールディレクトリ>/lib/(4)HBaseを起動します。2008年4月に株式会社サイバーエージェントに新卒で入社。基盤システムの開発・運用に従事する。2010年4月にHadoop/Hiveを用いたログ解析基盤の開発・運用を担当する。Laboratoryの立ち上げメンバーとなる。3.12」の最初のベータ版がリリース新着記事一覧を見るイベント今後の予定を見るCodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。イラストの無断転載を禁じます。記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。