Upgrade Hue from 2.5 to 3.7 on upgrade CDH to 5

Cloudera Manager4から5へアップデートし,CDH4.7からCDH5.3.2へCMでアップデート。CMでアップロードするとアップデートプロセスをほぼすべてCMが面倒を見てくれるので,とても簡単に移行できる。

rdbms

Hueが2.5から3.7になり,UIも刷新され使いやすくなっている。また,Hueから任意のRDBMSへ接続してテーブル情報や任意のクエリを実行できるようになっていた!(Hue3.5?くらいから入った機能らしい)これは,かなり便利。phpmyadminのような管理ツールほど多機能ではないけれど,サクッといつものHueインターフェースからデータを確認するには十分。 

CM経由でこの設定を追加するには,safety_valveを使う。例えば,SQLiteを使っている場合は,以下のようになる。詳細は,以下のリンクで確認できる。

http://gethue.com/dbquery-app-mysql-postgresql-oracle-and-sqlite-query/

[librdbms]
databases
[sqlite]
nice_name=SQLite
name=/var/lib/hue/desktop.db
engine=sqlite

DatabaseError: relation “desktop_documenttag” does not exist

CDH4.7からCDH5.3へアップグレードして,Hueの3.7にアップグレードされたのだが,どうにも移行時に上手くテーブルが作成されていなかったのか,ホーム画面やHiveやImpalaのマイクエリ画面が見えず,以下のようなエラーが出てしまった。

DatabaseError: relation "desktop_documenttag" does not exist

以下のグループでも似たようなエラーに関する投稿がされていた。

https://groups.google.com/a/cloudera.org/forum/#!msg/hue-user/4zuuQXcmdj0/nVKbc10oB9UJ

この投稿を見る限りでは,どうも解決されていない?ようだったので,差し当たって新規に別の仮想マシン上でHueをセットアップして,同じデータベース環境(今回の場合は,MySQL)の欠損しているテーブルのダンプを取得しインポートすることにした。ただし,この方法は無理やりなので要注意。その他,oozie関連のテーブルでカラムがないと怒られたので,それも地道に対応。oozieを使っていなかったので,データについては気にしないでよかった。

$ mysqldump -uroot -p --skip-add-drop-table --no-create-db --quick hue > hue3.sql
$ sed -i 's/CREATE TABLE/CREATE TABLE IF NOT EXISTS/g' hue3.sql
$ mysql -uroot -p hue < hue3.sql

参考

byebyehaikikyou

日記やIT系関連のネタ、WordPressに関することなど様々な事柄を書き付けた雑記です。ITエンジニア経験があるのでプログラミングに関することなどが多いです。

シェアする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントする

Translate »