憧れのデータマイナー
データマイナーへのキャリアチェンジを最近考えている。
2006年の転職にて渋谷の某企業に務めた際の中途同期のM君が、
「百戦錬磨のデータマイナーの話って心底面白い。
いわゆる『紙おむつとビール』なんて序の口で、様々な
人間の行動心理とマーケティング&データベースの法則が
出るわ出るわ!!本当に面白い」
と言っていたのを思い出す。
自分は様々な現場で数十億を超える膨大データを格納するデータベースエンジニアとして、
設計、開発、保守・運用と色々仕事をしてきた自信はあるし、
また、膨大データを高速に処理するSQLチューニングや設計には自信があるほうだ。
しかし、この歳からデータマイナーへのキャリアチェンジを図るとしたならば、
まだまだ勉強しなければならないことが多いだろう。
データマイナーには普通以下の2つのスキルが必要だという。
- 膨大データのデータベースを支えるスキル
- 統計学などデータを読むスキル
前者に関しては(かなり)自信があるが、後者は体型だった教育を受けてないし、
また職務上の実績もない。
マイニングは企業の”次のビジネス”や”将来の方向”を決める仕事だと思う。
それゆえにそこに憧れている。
データベースエンジニアからデータマイナーに転身を図るためには、
(1)のスキルを継続しつつそこで実際にデータマイニング企業に対して、
決して夢や絵空事ではない、直近のビジネス的な負荷要素を保証して、
(例:7億件データの格納と参照で困っている企業Xがあるならばそこで確実に実績を出す、
RDBMSでの限界であるならば、HadoopなどKVSでの分散データストアを安価提案して高速構築するなど)
その後の展望を切り開けるような身の振り方が求められるのだろうな…。
エンジニアとして将来面白い仕事をするために。面白くないとエンジニア仕事も続けられない。
「君はアナリストなどと共同して企業のデータ分析を行う部署にデータベースエンジニアとして進むべきだ」
と、部署異動を望んでいる当時の部下Fに進言したことがある。
彼女には、SQLを組み立てる才能が明らかにあった。
データベースエンジニアとして進むべき道がデータマイナーであるべきことは輝かしいキャリアパスだと、
自信を持って思う。
しかし、今自らがその進路の選択を目前にして、
何をすべきか、何が出来るのか、非常に迷っている…。
音楽DB論理設計:物理図
最近残業が多く、エンジニアとしての自分の夢を見失いそうになっている。
5年前、2006年ごろ自分の手帳をみると
5年後、私は音楽ファンとして
音楽DBを運営している
という目標が記されていた。
あれから5年既に経ってしまっている。
自分は、技術者として本当に精進してきたのか???
技術者として堕落していたのでは???
という問いが頭の中をめぐっている。
僕の人生のなかの2つの重要要素、
音楽とITを
結婚させたい……
和声進行も正規化してデータベースに登録したい。
バッハもモーツァルトも
ボブ・ディランもロバート・ワイアットもミンガスも。
そのとき我、解放されるだろう!!
一体なにをやってるんだ!
1999年11月7日に書いたノート。
アレクシス・コーナーの”Blues Incorporated”のようなミュージック・スクールを
インターネットで作りたい。
それは
・図書館
・イベント広場
・スタジオ
・喫茶室
・校舎
から構成される。
「図書館」には過去の音楽データベースがある。
音楽データベースは音楽販売と提携する。中古レコード店も含めて。
検索がタイトル、コード進行、リズムなど様々な形式で可能。
試聴室で関心方向でレコメンドもされる。「イベント広場」はライブハウスでオンライン配信。
企画を自由に立てることができる。「スタジオ」ではオンラインセッションが楽しめ、
レコーディングやミキシングも可能。
「喫茶室」では音楽仲間でのチャットができ仲間を見つけられる。
「校舎」では、リスペクトするミュージシャンからのオンライン・コーチを受けられる。
まあ、それから10年以上経って、既にヒトが作りしもの、まだ技術的に難しいもの
混在しているが。。
ゆっくり考えて実現してから死にたいねぇ。
論理削除など、何らかのテーブルのデータを変更した場合、
その変更がトリガーとなって他のデータ更新を行わないか
確認したいときの備忘。
SQL> select DESCRIPTION,TRIGGER_BODY from user_triggers where trigger_name = '当該テーブルに近いトリガ名' /
Teradataなどと並ぶOracleのDWH製品ということで、
windows マシンにインストールしてみる。
OUIが立ち上がる。
ホーム詳細の指定で
インストール名 OWB
パス d:\OWB
の入力が必要である。
それだけですぐにインストールが開始される。
rman, oem, oracleNetなど普通のRDBMS並にインストールが行われる。
インストールログは
c:\Program Files\Oracle\Inventory\logs\InstallActions.2011_...に記され問題なくインストールされた。
WarehouseBuilder リポジトリアシスタントを使用してリポジトリを作成する。
これに接続先のDB情報を与えると、リポジトリが作成される。
ユーザdukkiedukkieを指定したところ、
XEのdukkiedukkieスキーマ内にOWB_*というテーブルが大量に作られた。
OWBソフトから192.168.1.1のXEにアクセスするには、
XE_192.168.1.1
を用いる
# asianlinuxへのインストールは、.mkファイルで失敗した。
明日からちょっとずついじってみよう。
まあ基本的はオラクルデータベースサーバだなあ。
武蔵村山 獅子舞の曲「岡田くずし」!
「岡田くずし」は、東京都武蔵村山に伝わる、獅子舞の楽曲。横中馬獅子舞保存会(よこなかばししまいほぞんかい)により伝承されている。 武蔵村山の獅子舞は、二匹の雄獅子が一匹の女獅子をめぐって争う物語のようで、その闘いのシーンで、繰り返し演奏されるのが、この「岡田くずし」である。 非常にキャッチーで耳に残る旋律、力強いリズムをもつ。 実は、自分は4月に横中馬獅子舞保存会に笛吹き(獅子笛)として参加し4月29日のお祭でデビューしたのであるが、 この「岡田くずし」が頭をグルグル回って離れず、ついつい、参加しているバンド”こころば”でも演奏しようとアレンジしてみた。
■関連リンク: |
可用性、パフォーマンス対策のため自宅サーバにMySQLProxyを導入してみた。
http://dev.mysql.com/downloads/mysql-proxy/
# tar vxzpf mysql-proxy-0.8.2-linux-rhel5-x86-32bit.tar.gz # cd /home # ln -s /home/hpsuser/mysql-proxy-0.8.2-linux-rhel5-x86-32bit mysql-proxy # cd /home/mysql-proxy/ # vi mysql-proxy.cnf ------------------------------------------ [mysql-proxy] daemon = true pid-file = /home/mysql-proxy/mysql-proxy.pid log-file = /home/mysql-proxy/mysql-proxy.log log-level = debug proxy-address = 127.0.0.1:10502 proxy-backend-addresses=hoge proxy-lua-script = /home/mysql-proxy/share/doc/mysql-proxy/histogram.lua ------------------------------------------ # chmod 0660 /home/mysql-proxy/mysql-proxy.cnf # /home/mysql-proxy/bin/mysql-proxy --defaults-file=/home/mysql-proxy/mysql-proxy.cnf
・mysqlクライアントポート変更
# vi /etc/my.cnf ----------------------------- [client] port=10502 ----------------------------
↑ポートを変更
# mysql -u root -pXXXXXX -P 10502
↑接続を確認。
# cd /etc/rc.d/init.d/ # vi mysql-proxy ---------------------------------------------------------------------- #!/bin/sh # chkconfig: 345 99 01 # description: MySQL Proxy Daemon # processname: mysql-proxy progname=mysql-proxy pidfile=/home/mysql-proxy/${progname}.pid lockfile=/var/lock/subsys/${progname} prog=/home/mysql-proxy/bin/mysql-proxy prm='--defaults-file=/home/mysql-proxy/mysql-proxy.cnf' . /etc/init.d/functions RETVAL=0 start() { echo -n $"Starting $progname: " daemon "${prog} ${prm}" RETVAL=$? echo [ $RETVAL = 0 ] && touch $lockfile return $RETVAL } stop() { echo -n $"Stopping $progname: " killproc ${prog} RETVAL=$? echo [ $RETVAL = 0 ] && rm -f $lockfile return $RETVAL } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; *) echo $"Usage: $0 {start|stop|restart}" exit 1 esac exit $RETVAL ---------------------------------------------------------------------- # chkconfig --add mysql-proxy # chkconfig --list | grep mysql-proxy mysql-proxy 0:off 1:off 2:off 3:on 4:on 5:on 6:off
スタンドアロンなマシンなので負荷分散テストなど出来ないから
効果はよくわからない。