スポンサーサイト

一定期間更新がないため広告を表示しています

スポンサードリンク | - | | - | - | - | - |

JIRAのデータをS3へバックアップ

だいぶ、ブログを書くペースが落ちてきてて、危機感を感じている今日このごろです。。。
今回は、個人的に利用しているJIRAのバックアップについて、ブログに残しておこうかと。

さくらVPSのサーバを借りてJIRAを運用しています。
運用といっても、自分の備忘録のためというのが大半の理由です。
タスクを忘れないように管理するのと合わせて、その作業を行ったときのメモも残したいなと。

バックアップといっても、同じサーバ内に保存しても意味がない+AWSを触ると言いつつ1年以上経ってしまったので、 このへんで本腰を入れるという意味も込めてAWSのS3(ゆくゆくはGlacier)にバックアップを取る仕組みを作りました。
「作りました」というと凄そうですが、Cronとシェルだけで終わりました、なんて便利な世の中。
ということで、以下は作業の備忘録です。

1.AWSのアカウント作成
アカウントを作ってください。ここは特に説明しなくてもいいかと。。。クレジットカードの登録が必要なのが注意点でしょうか。
アカウント作成後の1年間は無料枠と呼ばれる仕組みが用意されており、いろんなことが無料で行えます。
(まだ、S3しか使ってないので、他にももっと使わないと。。。)

2.S3のバケット作成
AWSのアカウントが作成できたら、Amazon S3(Simple Storage Service)のバケットと呼ばれる、データの保存先を作成します。
作成手順はこちらの公式入門ドキュメント(英語)をそのまま行いました。
簡単な手順はこちら
  1. AWS Management Consoleと呼ばれるところから、S3のコンソールにアクセス
  2. 「Create Bucket」ボタンをクリック
  3. 「Bucket Name」を入力し、リージョンを選択したら「Create」ボタンをクリック
以上でバケットが作成されました。これだけです。WebのConsoleからファイルをアップロードすることも可能です。
ただ、今回はさくらVPSから定期的にバックアップしたいのでシェルでアクセスできるようにします。

3.AWSのアクセスキーとシークレットアクセスキーの取得
次に紹介するs3cmdというツールを利用するのに、AWSのアクセスキーとシークレットキーが必要になります。
取得方法はこちらを参考にしましたが、今は日本語のページが用意されています。
セキュリティ証明書(Security Credentials)のページで、「アクセス証明書」というタブで、「新しいアクセスキーを作成する」リンクをクリックしてください。
アクセスキーIDが新しく表示されます。このアクセスキーIDとシークレットアクセスキー(表示リンククリック後に表示される)をメモしておきます。

4.s3cmdのインストール
世の中には便利なものを作ってくれる方がいるもので。
s3cmdと呼ばれるS3へアクセスできるコマンドラインツールが存在します。
ということで、こちらをインストール。これまた、便利なものでインストール手順を書いてくれれてるブログもありました。(あれ、なんか、見たことある名前がURLにはいってるなぁ)
インストールはこちら。
# yum -y --enablerepo epel install s3cmd
インストール後に、先ほど取得したアクセスキーIDを設定します。
$ s3cmd --configure
Access Key: xxxx
Secret Key: xxxx
以上で、s3cmdが使えるようになりました。

5.バックアップスクリプトの作成
つぎは、本題のJIRAのバックアップです。
バックアップ方法はこちらを参考にしました。ちょっと古いみたいですが。
おもなデータは「JIRAのXMLバックアップユーティリティ」にてバックアップするか、「データベースのバックアップツール」を利用する方法があります。
推奨は「データベースのバックアップツール」のようなので、私の場合は「pg_dump」にてJIRAのデータベースをまるごとバックアップすることにしています。
また、データベースには添付ファイルが保存されていないようなので、別途「/var/atlassian/application-data/jira/data」というディレクトリをtarコマンドで圧縮して保存すようにしました。
あとは、pg_dumpの結果と添付ファイルの保存先の圧縮したデータをまとめてディレクトリに保存して圧縮します。
さいごは、S3にアップロードすればおしまいです。
一応、ファイルが連綿と残り続けるのは嫌だなぁということで、ファイル数で世代管理することにもしました。
これまた、ググって見つけてきたサイトを参考にしただけですが。。。
ということで、こんなかんじのスクリプトを日時でcronに設定して動かしてます。

#!/bin/sh
TODAY=`date +%Y%m%d`
BACKUP_HOME="/var/atlassian/backups"
S3SYNC_DIR="/var/atlassian/backups/s3sync"
AGE=7

mkdir -p ${BACKUP_HOME}/${TODAY}/
/usr/bin/pg_dump -U postgres -Fc jiradb > ${BACKUP_HOME}/${TODAY}/jiradb_backup.dump
tar zcvf ${BACKUP_HOME}/${TODAY}/attachment.tgz /var/atlassian/application-data/jira/data
tar zcvf ${S3SYNC_DIR}/jira_backup_${TODAY}.tgz ${BACKUP_HOME}/${TODAY}
rm -rf ${BACKUP_HOME}/${TODAY}
NUM=`ls ${S3SYNC_DIR} | wc -l`
while [ ${NUM} -ge ${AGE} ]
do
  DEL_FILE=`ls -lt ${S3SYNC_DIR} | tail -1 | awk '{print $9}'`
  rm -r ${S3SYNC_DIR}/${DEL_FILE}
  NUM=`ls ${S3SYNC_DIR} | wc -l`
done

s3cmd sync --delete-removed ${S3SYNC_DIR}/* s3://my_jira_backup/s3sync/
そこへんだよとかあれば、ツッコミを。
今のところ、S3へのsyncだけなので、このあとは、月1くらいでGlacierに落とすとかの仕組みも考えるかなぁ。これまた何かあるんだろうけど。
あとは、この応用で家のNASに溜まっている写真をS3経由もしくは直接Glacierにバックアップする仕組みを考える予定です。

johtani | 備忘録 | 23:07 | comments(0) | trackbacks(0) | - | - |

Xperia Z買いました

技術ブログから離れていってますが。。。
Xperia Zを購入しました。

前に使っていたのはXperia arcになります。
もうすぐ2年だったのですが、容量不足に悩まされていたため+芸の肥やし(仕事の足し)という名目で Xperia Zの購入に踏み切りました。
予約しての購入です。

いくつか戸惑いなどを感じているので備忘録としてブログに残しておきます。
サイズが大きい
まぁ、わかっていたことですが、5インチと大きいです。
ステータスバーを表示するのがちょっときついくらいです。
私は手が大きい方なのですがそれでもキツイので、普通の人は両手じゃないと厳しいんじゃないかと。。。
一応、ステータスバーを表示するためのアプリなんかもあるようなので、その辺を検討するのもいいかなぁと(まだインストールもしてませんが。)
また、Angry Birdを演ってびっくりしたのですが、解像度が大きいため、startボタンなどが小さくて押しづらいですw

移行がめんどくさい
iPadも持っていて、ソレと比較するとひどくめんどくさかったです。
実は方法を知らないだけかもしれないんですが。。。
iPadだと、初期化したりしてもiTunesにインストールしたアプリなども覚えていてくれます。
ですので、すぐに同じ環境が出来上がります。
Xperiaに関しては、arcでインストールしてたアプリをインストール履歴を元に一つずつインストールして、 それぞれのアプリやアカウントを設定して行きました。
これが結構面倒で、まだ完全にはアプリがインストールできてないかも(他にも新しいものを入れたいなぁと思いつつ、探す手間を惜しんでます。。。おすすめアプリお待ちしてます。)

Zite、Angry Bird star warsがインストールできない
Ziteは英語の勉強も兼ねて入れていたのですが、対応していないバージョンですと言われます。
AngryBirdもいっしょですね。
starwarsじゃない奴はインストールできたのですが、肝心のやってみたいstar warsがインストールできなくて。。。

ドコモアプリがいっぱい
ドコモのアプリやプリインストールアプリがいっぱいあったので、どうしようか悩んでいます。
いくつかはアンインストールしました。HotpepperBeautyとか間違いなく使わないし
SFA-QRというよくわからないアプリも入っていたのでこれまたアンインストールしました。

通知に出さないアプリとか選択できない?
容量不足だったのも有り、TwitterクライアントにはTwiccaのみをインストールしていたのですが、今回はTwitter純正のクライアントもインストールしました。
お気に入り登録されたりといった状況も見れるので重宝するのですが、基本的にはtwiccaを使うつもりです。
ですが、通知バー(ステータスバー)に@ツイートが届いたなどといった通知は見なくてもいいと思っているんですが、なにか方法あるんでしょうか。

dビデオが危険
いわゆる携帯ショップで機種変更したため、いくつかのサービスに登録しないといけませんでした。
で、dビデオ(月額525円で映画とか見放題)に登録したので、せっかくだからと映画をダウンロードしてみたのですが、危険です。。。
ただでさえ、本読むのが遅かったり、コーディングしてないのにビデオ見ると更に時間ががが。。。
けど、面白くて。。。危険です。(スターシップ・トゥルーパーズ見ちゃいました。。)

クレードルがもう一つほしい
防水なので、あまりキャップを開けたくないんです。
そして、dビデオとか見てるとやっぱり電池の減りがはやいんです。(ディスプレイが大きいのもあるのかなぁ。要らないサービス切るとかしないと)
結局、出先でも充電をしないといけなくて。
ただ、純正のクレードルが2100円と結構な値段でして。。。
あと、イヤホンを指すところもキャップがあるので、Bluetoothレシーバーも気になってたりします。
こちらも結構な値段でして。。。

とまぁ、新しいものを手に入れて、色々悩んでますが、楽しいですね。購入したての色々と悩む時間がw
おすすめアプリとかあったらコメントください
johtani | 備忘録 | 01:53 | comments(0) | trackbacks(0) | - | - |

今年の振り返りと来年の抱負(2012)

書こうと思いながら、気づいたら大晦日。
よくないですね、思いついた時に書かないと。

昨年も書いたので、昨年書いた抱負から振り返りをと。
  • MongoDB触ってみる
  • Scala触ってみる
  • なんかWebサービス作ってみる(Amazonとかで)
  • elasticsearch、IndexTankを調べてみる
  • NewSolrCloudDesignを読み込んで自分なりにまとめる
  • Junsaiに参加する
  • 「7つの言語7つの世界」の続き
えーと。。。できてないことばかりですねw
MongoDBはインストールすらしてないですし、Webサービスも作ってないです。(さくらVPSは借りたんですが)
Junsaiは参加したけど何もできてないし。7つの言語もそのままですね。。。
SolrCloudDesignはまとめられてないですしね。
Scalaは少しだけ触りました。結局Javaみたいな記述をしてしまうという良くないくせが出てしまうので、 見送ってしまいましたが。。。
elasticsearchは少しだけやりました。#pyfesで話をさせて貰える機会があったので。

興味がコロコロ変わってしまうのが問題点かもしれないです。少しは地に足をつけてなんかやったほうがいいのになぁ

今年の振り返り

今年はこんなかんじでしょうか。
  • いろんな勉強会に出没
  • #pyfesでelasticsearchのさわりを紹介
  • 個人的にJIRA導入
  • MIR輪読会開始
  • Solr勉強会の主催を引き継ぐ
  • Kindle paperwhite当たった

相変わらずいろんな勉強会に出てました。最近は勉強しに行くのもありますが、人に会いに行ってるような気がします。
勉強会から帰ってきて復習したりしないとすぐ忘れちゃうんですよね。。。

#pyfesではelasticsearchの入門中という話をしてきました。
人の多さに緊張しまくりでよくわかりにくい発表になってしまったのが反省点かと。。。
もっと話をする機会を増やすとなれるのでしょうか。

JIRAの導入はパラで仕事をしているとタスク管理がおろそかになってくるので導入しました。
フリーのredmineを考えていたのですが、インストールが簡単なJIRAを導入しました。
有料ですが、1-10人までなら、ダウンロード版が$10ですし。いろんな時間を買ったと考えると安いかと

検索に関してもまだまだ初心者に近いということでModern Information Retrievalという英語の本の輪読を主催しました。
Twitterでの呼びかけに答えてくれた方々に感謝です。
まだ、半分も行ってないですが、何周かしたいと思っています。

Solr勉強会の主催者も引き継ぎました。Atnd立てるの手伝おうか?って言ったら主催者になってましたw
来年も開催するので、喋りたい方、こんな話を聞きたいなどTwitterやブログでコンタクトいただければと。

あと、会社の忘年会で思いがけずKindle paperwhiteが当たりました!(やったー!)
iPadを持っていることもあり、完全に購入する気も無かったのですが。。。
使ってみると結構いいです。画面のギラツキがないのと、他のソフトがないのがいいです。
読書に没頭できます。通常はKindleを持ち歩くことになるかと。(没頭できるけど、読むスピードが遅い+すぐ忘れるのが難点。。。)

来年の抱負

来年の抱負も書いておきます。
昨年の前科があるのでどこまでできるかわかりませんが。
すぐに興味が変わってしまうのもありますし
  • IntelliJ IDEAをメインに使う
  • JIRAを継続して活用
  • ブログの継続
  • elasticsearch
  • Luceneのソースコードリーディング
  • 何かOSSのソースを読む
  • Macでもっと開発
  • 読書と英語を継続
IDEA(アイデア)は11をインストールしてたのですが、使えていませんでした。
イメケンが主催したJetBrainsユーザー会で洗脳されて+タイミング良い75%オフセールにやられて購入しました。
普段はEclipseを使っているのですが、これを機にチャレンジしようかと。
少し変化をしてかないとすぐ取り残されちゃうので。。。

JIRAはまだタスクを登録してクローズするという初歩段階の使い方しかできてないので、少しずつ研究してフィールド追加したり、ワークフローを変更してみたりと研究したいです。

ブログは、今年後半が勉強会参加ブログしかないのを反省して来年は、もう少しSolrやLucene、lucene-gosenについて書いて行きたいです。
(すくなくとも、4.0で動かす話を書かないと。。。)

elasticsearchはまぁ触れる環境を維持しようという話です。
どこかで導入できればいいんでしょうが、なかなか。
(勉強会開いてみるのも面白いかな?)

Luceneソースコードリーディングは誘われてるのに、ちゃんと返事をしていなかったので。
来年2月のどこかの土日を候補日にする予定です。

何かOSSのソースも読もうと思ってます。
「何か」はまだ決めてないですが、人のソースを実はあまり読んでないなぁと。
Vさんと話をした時に人のソースを読むのがいいですよという話になったので。
真似をするためにもなんか読みたいなぁと。Javaになるのかなぁ。

とある事情で週4はWindowsで開発してます。
Macはちょっとしか触ってないのでMacの環境が成長していないのが難点です。
できれば、Macで開発を継続できる環境を作りたいなぁと。Kobitoとか入れてるけど触ってないし。。。
IntelliJも入れたのでMacで開発したいものです。

最後は毎年のことですが、本を読むスピードが買うスピードに追いついてないと。。。
英語の本もかってるんですが、これまた読むスピードが。。。
ということで、ざっくり目を通す読書をもっとやりたいなぁと。
買うのはいいのですが、必要にならないと呼んだ内容を忘れてしまうので、読んだあとに実践する機会も設けたいと思ってます(思ってるだけかもしれないですが)

あと、来年もいろんな人に会うためにいろんな勉強会に出没すると思いますので、声をかけていただければと
また、不抜けているのを見かけたらカツを入れてください。(技術内容のブログ書けとか、本読んだ感想をブログにかけとか)
来年もTwitterなどで絡みまくると思いますが、よろしくです。
johtani | 備忘録 | 08:01 | comments(0) | trackbacks(0) | - | - |

メインMBAをMountain Lionにアップデート(いろいろ確認中)

友人にお値打価格で購入したMac miniはMountain Lionにアップデートしてたのですが、手元のAirはまだアップデートしていませんでした。

夏休み中にバックアップ+アップデートをしてしまおうと思いMountain Lionにアップデートはしていたのですが、 本格的に触り始めると色々と動かないものがあったので、備忘録としてブログを書いておきます。
(まだ途中ですが。)

1.Eclipseが起動しない

Java6が未インストール状態になったみたいで、Eclipseを起動すると、Java6をインストールしなさいと言われました。
で、私の記憶が確かなら、前はJavaコマンドを実行するとインストールされたんですが、ターミナルでjavaコマンドを実行するとjavaはすでにインストールされてる模様。。。
あれ?と思い、-versionを実行すると、JDK7u4と出るじゃないですか。
どうやら、Java7u4は別途入れてたものが残ってる模様。
さて、どーする?ということで、ツイートしたりぐぐってみて、「Java Preferences」なる設定用のアプリ?が有ることに気づき、とりあえず開いてみたらJava6ないからインストールしたら?と言われました。
結果オーライということで、インストール開始。
無事、インストールも終了。Eclipseも起動しました。(ただし、今度はMercurialのプラグインがPythonのライブラリが無いとエラーを出すことに)

2.Xcodeが起動しない。

使ってはいないんですが、Javaの件を調べるのに、起動したらLionじゃないと駄目だよと。
ということで、Xcodeもインストールしなおし。

3. homebrewが動かない

1.で書いた方法で、Eclipse自体は起動したんですが、Mercurialのプラグインがエラーを吐き始めました。
で、見てみると、hgコマンドを実行しようとしてなんか、壊れていると。
で、hgコマンドってどうやってインストールしたか思い出さないまま、とりあえず、homebrewだっけ?と勘違いしたまま、「brew update」を実行したらエラーがでて、「brew install git」でしょ?って言われてしまいました。
コメントにもいただいていたように、Xcodeをインストールしたのだが、コマンドラインツールが入ってないというのが影響しているみたいです。。。
で、ググってみると、こんな情報が。http://labs.torques.jp/2012/07/04/2830/
ただ、そこに有るようにPreferenceのダウンロードを開いてもなーんにも表示されません。
で、更にググってこちらの情報に。http://qiita.com/items/9dd797f42e7bea674705(なんだか、TLで見かける人のお名前が!)
AppleのDeveloperサイトからダウンロードかぁと思いつつダウンロード用のリンクを踏んだら、アカウント登録しろとのページが。。。
なかなか遠い道のりですね。。。
Appleのアカウント自体は持ってるので、Developerへの追加登録なんですが、日本語が文字化けしまくりの確認ページが出る始末。
もう、めんどくさいので、そのまま登録しちゃいました。
で、ダウンロードする前にもう一回XcodeのPreference見てみたらなんか、ダウンロードする候補が出てきてるじゃないですか!
結局、XcodeのPereference画面からダウンロードすることにしました。
AppleのDeveloperに登録したからなのか、Xcodeのプロジェクトを作ろうとしてXcodeをきちんと起動したからなのかは結局わかっていません。。。
良くないよなぁ。(ご存知の方いたらコメントもらえると嬉しいです。)
で、やっと「homebrew」を入れようかなぁと。
一応その前に「sudo brew update」ってやってみたらどうなる?と挑戦したら今度は動きました。
homebrewが何を判断してinstallでしょ?って言ってたのかもわかっていませんが、updateで良かったみたいです。
ついでに、upgradeもしときました。(こっちは後からインストールしたもののバージョンが上がってるものがあったら更新してくれるコマンドかなぁ?)

4. pipの更新

ただ、brewをupdateしても相変わらず、EclipseのMercurialのPluginはエラーを出してました。
で、ターミナルからhgコマンドを実行してみたら同じエラーが。まぁ、そうですよね。
エラーメッセージを頼りにこれまたググってみたら、同じ状況のひとがいました。https://groups.google.com/forum/#!msg/mercurial-ja/MxY6lejLXxo/OgJA_knXV6cJ(ここにもTLでお世話になってる方のお名前が!!)
で、書いてあるように「とりあえず pip install mercurial で解決しました. 」ということで、コマンドを実行して見ることに。
これが、また失敗します。。。(日頃の行いが悪い??てか、日頃MBAをメンテできてないのが悪いのか。。。)
そういえば、過去のMBAセットアップのメモを残してたなぁと思い出して「johtani mercurial」でググってみるとちゃんと書いてあるじゃないですかー(偉いぞ、自分)
ということで、「sudo easy_install pip」でpipを更新してから「sudo pip install Mercurial」で無事、hgコマンドもインストールし直せました。
Eclipseを起動してもエラーが出ない。(まだbitbucketに接続確認まではできてないですが。。。眠さに勝てず寝てしまいました。)
johtani | 備忘録 | 14:34 | comments(6) | trackbacks(0) | - | - |

PlayFramework 2.0(Javaの方)を触ってみてる

PlayFramework2.0を触ってみてます。
ちょっとコーディングしたくなったのと、最近のアプリの作成の調査も兼ねて。
まぁ、せっかくなので、Solr検索のアプリでも作ってみようかと言うことで触ってます。
ただ、Solr検索アプリでしかなく、今のところDBを使わないので、実はPlay Frameworkじゃなくてもいいのではないかという疑問も。。。

まだ、触り始めたばかりなので、なんともですが。感想を。
たぶん、Ruby on Railsに似ているのかなと。
RoRは仕事で少し関わったので、なんとなく知っていますが、アプリの作成手順や、ディレクトリ構成などが似ている気がします。

コントローラーの生成のタイミングとか、内部でオブジェクトをSingletonで保持する方法とかのイメージがまだ良くつかめていない状態で、まずは、Solr検索部分(Palyにあんまり関係ないところ)を実装しているところです。

現状で一番の疑問点は、Eclipseプロジェクト化した時の参照ライブラリのパスに関するところでしょうか。
Play Frameworkは「play new ほげほげ」コマンドを実行するとアプリのディレクトリ構成が作成されます。
このあとに、eclipsfyというplayのコマンドを実行すると、Ecilpseのプロジェクトファイルが作成されます。
この時、PlayFrameworkが利用するjarファイルたちが参照ライブラリとしてクラスパスに設定されます。

このパスには、PlayFrameworkのインストールディレクトリが含まれた絶対パスが記述されるのですが、
複数人で開発するときにはどうしているのかなぁと。
あと、BitbucketやGitHubにアップするときもどうするのかなぁと。
以前、この疑問ツイートして、頂いた回答としては、環境変数として定義して、各自で設定してもらうというものでした。
私も同じ事を考えていたので、腑に落ちたのですが、他にもっといい方法があったりするんでしょうか?
クラスパスやEclipseプロジェクトのファイルをアップしないというのもあると思いますが、それもちょっとなぁと。
なにか、オススメとかあれば、教えていただけると嬉しいです。

最近、ブログ更新してなかったのもあったので、まずは、導入編でした。

johtani | 備忘録 | 15:55 | comments(0) | trackbacks(0) | - | - |

【メモ】Amazon CloudSearchが出てきましたよ

Twitterでこのブログ流れてきて、気になったので、流し読みして簡単にメモ。
Amazonのサービスでスケールする検索サービスみたい。

主に、機能面です。価格とかはみてないです。

  • データと検索トラフィックに対して自動でスケール(※automaticってのがどういう感じかは調べてないです)
  • CloudSearch APIsでアクセス可能。AWS管理コンソールからオペレーションできる。コマンドツールもある
  • データ登録にHTTPSも使えますよ。データ形式はJSON、XML、SDF(Search Document Format)と呼ばれるものに準拠したもの
  • near real-timeで検索可能になる。RAMにインデックスを保持して更新処理が早くなる(Lucene/Solrと一緒か?)
  • ステミングとかストップワードの設定変えたらre-index
  • ファセット、フィールド指定検索が可能。(ファセットはファセットクエリみたいなのもできるのかな?)
  • データ量が増えたら、サーチインスタンスを追加するか、インスタンスタイプを大きくしてスケールする?
  • トラフィックが増えたら新しいインスタンスにデータをレプリケートしてインスタンスを追加する
  • 簡単に実現できるよ。ファセット検索、全文検索、And/OR検索式、ランキングのカスタマイズ、フィールド指定ソート、フィールド指定検索、テキスト処理オプション(ストップワード、類義語、ステミングのような)

ここから詳細のドキュメントが見れるみたいなので、また、見てみます。

あと、WikipediaをCloudSearchで動かしてるデモそれに関する記事もあるみたいです。これも暇を見つけて眺めてみます。
johtani | 備忘録 | 23:31 | comments(0) | trackbacks(0) | - | - |

久々にMac Miniのことでも

子供の寝かしつけしてたら、寝かしつけされてしまって、2時に目が覚めてしまいました。
TSUTAYAでCD借りてきてウォークマンに入れようと思っていたのに。。。
ということで、今作業してます。

MBAを買う前から使っている、もう9年目のWindows自作デスクトップで基本的にはCDの取り込みをしています。
ファイルサーバ(BuffaloのTeraStation)がLionから接続できないというのと、 X-アプリで曲管理していたのでという理由です。
あと、ウォークマンなのでMac用のソフトがなかったりというのも理由です。

で、眠い目をこすりながらWindowsマシンを起動すると、ネットワークにつながらないじゃないですか。。。
再起動してもダメでした。

となってしまったので、せっかく、譲ってもらったMac miniも活用しないといけないなと思い、iTunesでアルバムを取り込んでみています。
ここ数年はWAV形式でデータを取り込んでいたので、WAVでの取り込みを設定して、iTunesで取り込みました。

とまぁ、ここまでやってから、件のWindows機を再度、再起動したらネットワークに繋がってしまいました。。。
なので、残りのCDはWindows機で取り込みしてます。
けど、そろそろこのPCも危なそうなので、データをサルベージして、Mac miniで作業できるようにしないとなぁ。
Macでウォークマンを運用している人はどうやってるんだろう?
ちなみに私が利用しているウォークマンはNW-A847です。
エンコードはWAV形式で取り込んで、X-アプリでウォークマンに入れています。
iTunes使ってる人は、アップルのロスレスエンコードをつかってるのかなぁ?
ということで、調査・検討したい項目はこんなところですか。
  • 調査:TeraStationにMacからつなぐ方法(Lionで利用できそうなソフトなにかないかな?)
  • 調査:iTunesでウォークマンに曲転送(やってみればすぐわかるだろう。。。)
  • 調査:iTunesの曲をCDに焼く方法(車で曲聞くのにCDだから)
  • 検討:ファイルサーバのリプレース対象となる機種(ファイルサーバは導入してまだ5年だから余裕がないと買い換えない)
  • 検討:iPodに鞍替え(Sony好きだし、ウォークマン好きだし、買ったばっかりだからまず無い選択肢)
  • 検討:Mac miniにVirtualBox入れて、WindowsからX-アプリ使うとか。(ファイルサーバが見えるようになるかな?)
  • 検討:Mac miniをWindowsとして運用(もったいなさすぎる気がする)


とまぁ、まだ悩んでるだけで、取り留めもない事を書いて、しかも結論が出ないままですが、ご容赦ください。
ご意見、提案を大募集してます!!
johtani | 備忘録 | 04:47 | comments(0) | trackbacks(0) | - | - |

今興味があること

昨年末に今年の抱負について書いたのですが、 他にも興味あるものが増えたので備忘録&公約?を兼ねてブログに書いておきます。
(興味あるものがあれば、シェアしたりできると楽しいので、ツイート、コメント待ってます。)

  • ZooKeeper
  • SolrCloud
  • SenseiDB
  • Lucene
  • 検索システムのアジャイル開発?
まずは、ZooKeeper。このなんとも言えないアイコンでお馴染みのヤツです。
こんな顔してますが(顔関係ない。。。)、いろんな所に出没します。
Katta、Lilly、SolrCloudにも出てくるんです。SenseiDBにも出てくるんです。分散処理にことごとく絡んできます。
で、これは、知っとかないとまずそうだと。

SolrCloud。まぁ、妥当です。一応、Solrな人なんで。
昨年、NewSolrDesignを訳してみてもいます。訳しただけでほったらかし。。。
elasticsearchとかSenseiDBとかSolrに似たLuceneを利用している検索サーバがチラホラ話題になってます。
できれば、このあたりの分散の仕組みを比較しながら調べたいなと思ってみたり。
すべてをカバーするのはキツイので、SolrCloudかSenseiDBあたりを調べていきたいなぁと。

で、SenseiDBです。先日、Publickeyで記事が出て飛びつきました。
Zookeeper使ってるし、分散だし、全文インデックスにLucene使ってるし。
なんだか興味あること、全部入りな感じです。

Luceneも興味津津です。
Solrがコアとして使ってますし、昨年、Solrと同時にリリースされるようになりました。
Luceneも奥が深く、時々、Solr調べててLuceneのソースも見るのですが、本格的に全体像を把握したりは残念ながらできていません。
そのくせ、Zookeeper同様、いろんな所に出没するんです、これが。
ということで、足元を固めるためにもLuceneに入門しないとなぁと。

で、最後に検索システムのアジャイル開発です。
lucene-gosenのコミッターをやらせてもらってたり、Solrに絡んだ仕事もしてますが、長期にわたってフィードバックをもらいながら検索システムを育てていくというのが最近興味が出てきてることです。
検索システムは作ったらおしまいとは行かないのが厄介なところです。
データは増加しますし、検索されるキーワードも変わってきます。
また、検索される方法も変わってきたりもします。
ユーザが検索したいものも変化があります。
思ったように検索にヒットしない場合とユーザが離れて行ってしまいますし、検索しにくい場合も同様です。
今日、クックパッドの方の話しを聞いて思い出した次第です。(前に、Solr勉強会でも同じ話しをされて、同じ思いに至ったのですが、いかんせん忘れやすくてw)
また、ログ解析の話などをTwitterで見てることもあり、検索という側面でのログ解析ってのも重要だよなぁと。
いくつか思いつくこともあるのですが、実践出来る場も限られてます。
色々と話しをする場を設けるのも面白いかもなぁと妄想してる次第です。

取り留めもなく、現時点で気になってることを書きだして見ました。
また、数ヶ月したら気が変わってるかもしれないですが、とりあえず書き残してみます。
興味がある方がいらっしゃったら声をかけてもらえるとうれしいですね。
johtani | 備忘録 | 01:50 | comments(0) | trackbacks(0) | - | - |

MBAセットアップ備忘録その5とMac Mini(2009late)セットアップとその他くだらない話

ひさびさに、MBAのお話です。
セットアップといっても、物理的な方ですね。
以前、ケース(カバー)について記載しました。
この記事にも書いてあったのですが、付属の滑り止めが簡易なシールで、カバンの中から出し入れすると剥がれるは、作業をしてるとずれるわで、悩んでいました。
今日、たまたま、東急ハンズに行くことがあったので、店員さんに相談してすべり止め対策のグッズを購入しました。
相談した所、カバーは傷がつきにくくなるような素材ですから、シールもつきにくいとのこと。(言われてみればそりゃそうか。)
対策としては紙ヤスリで傷つけたところに薄手のシールゴムをつければはがれにくくなりますよとのこと。
ということで、やってみました。まぁ、ゴムにホコリはつくかもしれませんが、今のところ滑らず快適!
いやぁ、ハンズの店員さんすごいですわ。
MBAについてはこんなとこです。最近また、出先に行っていてMBA使えないので、ブログを書くかメールにしか使ってないです。。。

で、もう一つはMac Mini(2009 late:Core2Duo 2.26GHz、メモリ4G、HDD250G)です。
前職の同期から安く譲ってもらいました。音声が出力されないという問題点があるとFacebookでつぶやいているのをみて、興味を持ったらゲット出来ましたw
で、セットアップをしたのです。
大変でした。まずつまずいたのが、キーボードとマウスでした。
これまで使っていたデスクトップのキーボードがあるのですが、これがPS/2ということで使えません。(軽いジャブ)
MBAのキー配列にも慣れてきていたので、ビックカメラで悩みながらもApple純正のワイヤレスキーボードとまじっくトラックパッドを購入。
で、まずは、付属のLeopardで初期化。
このときは、ワイヤレスキーボードは認識したのですが、マジックトラックパッドはこの時代に無かったらしく、反応せず(さらに軽いジャブ)
さすがに前のPCのマウスはUSBだったので、これを利用してセットアップ再開
次にSnow Leopard(これもつけてくれた)にアップグレードして最後にLionです。
Snow Leopardでソフトウェアアップデートしたところでようやくトラックパッドが認識できたと。
で、やっと使い始めたのですが、MBA(2011)に慣れていたので、思いの外もっさりした動きをしているMacMiniに 戸惑ってます。(トドメのストレート。現在ここ)
ということで、どうやれば快適に使えるかアイデア募集中です。
とりあえず、Lionの設定のウィンドウ復元機能やアニメーションをオフにするなど対策してます。
HDDのSSD化とかメモリ増設とか考えないとダメかなぁ。
あと、ついでにBootcampも興味があるので、せっかくだから実験する予定です。
Windowsが前のデスクトップより快適に使えるようになるなら、Windowsマシンとするのもありかなぁと。。。

セットアップ系はこのへんで。
あとは、最近興味が有ること2点です。(技術系ではありません)
1つ目は最近発売されたゼルダ。夜な夜なやってます。
もともとゲーム好きでゼルダも欠かさずやってきてますが、ゼルダらしさを残しつつ新しい要素やアクションも取り入れとなかなか楽しいです。
ただ、Wii全般に言えることですが難しい!まぁ、楽しんでますけどね
2つ目は前からつぶやいてるのですが、電子書籍を読むためのタブレットがすごく気になってます。
最初は財布に優しく、MBAを普段持ち歩いてるのもあるから、LenovoのA1(7インチ)で決まりだと思っていたのですが、技術書を読むのは少しキツイかもという印象。
どうしてもオライリー本などの大きめのサイズになるため、7インチの画面でPDFを表示したところ、字が小さくなってしまい拡大しないと見づらいのです。
ただ、拡大してしまうと今度はパッと見るという一覧性が下がってしまいます。。。
少々重くなってもいいので10インチにしたほうがいいのかな、けど、電車で立って読むの辛いかもなどなど考えているところで最終的な決断ができない次第です。。。
最初は毛嫌いしていたiPad2もいいかもと思う始末で困ってるとこです。
安い中華パッド(2万ちょっと)に手を出すか、7インチで我慢するか、Galaxy Tab 10.1のWifi版を輸入業者から購入するかと悩んでるところ。
ただ、長く使うのを考えると、OSのバージョンアップなどを保証してくれるiPad2が実はいいじゃないかなぁなど。
皆さんからしてみればくだらないなぁと思われるかもしれないけどずーっと悩んでつぶやいたりしております。
はぁ、こまった。(そもそもそんなにスペックいらないんじゃないかというのもあるからなぁ。メインはPDF読むことだから。)
評価:
---
任天堂
¥ 5,192
(2011-11-23)
コメント:難しい!けど面白いです。ゼルダらしい謎解きとこれまでにないアクションで新鮮な気持ちで夜な夜な楽しんでます。

johtani | 備忘録 | 01:00 | comments(0) | trackbacks(0) | - | - |

JJUG CCC 2011 Fallに参加してきました。

JJUG CCC 2011 Fallに参加してきました。
個人的にはかなり久々のJavaのカンファレンスです。(※あくまで「Javaの」という話で。SolrやHadoopとは別という意味です。)

概要やタイムテーブルはこちら
予定があったので、残念ながら最後の2つのセッション(Scala、Twitter)しか参加できませんでした。
Hadoopの話も聞きたかったのですが、しょうがないかと。
いつものごとく、メモを個人的に取ったので。

★楽々Scalaプログラミング
 浅海

 ◎OOPからOFPへの道しるべ
  ・関数型の使い所、プログラミングのコツ
  ・つながりの部分

 ◎最近の活動
  モデリングからモデル駆動によるソース生成などに利用。
  Scala、2008年から使い始めている

 ◎Scalaと他の機能との比較図
 ◎Scalaの用途
  ・高い生産性
   体感で3倍。コード量が少なくなる。
   IDEのサポートを考えるとまだ、Java+Eclipseのほうが高い!
  ・DSL
   ドメインモデルの記述
   フレームワークAPI
  ・並行プログラミング
   Many Core
    消費電力的に複数のコアで動かす=関数型のほうが並行性が上がる(スレッドさわるJavaだけだときつい)
   Parallel Everything

  Object指向+関数型が扱いやすい。

 ◎関数型言語とは
  ・公開関数をあつかえる
   関数を値として扱える、引数と返却地に関数を渡せる。(やさしめ)
    <=>
   数学(ラムダ計算、圏論など)的にプログラムを記述できる(きびしめ)
  ある程度使えるはず。厳しめの部分も
 ◎関数型言語の長所と短所
  長所
   ・高階関数を使った技が使える
     List(???)

  短所
   ・メモリ、関数実行オーバーヘッド、スタックの大きさが読めない(再帰的)

 ◎関数型言語の系譜
  純粋関数型言語
   pure Lisp
  伝統的関数型言語
   OCaml
  新世代関数型言語
   Haskell
   Scala
   型クラス
    代数データ型、モナド
    Parametric polymorphism
 ◎関数型でしたいこと
  DSL(Domain Specific Lanuguage)
  昨年の資料を参考に!
 ◎準備
  scalaの文法
 ◎並列コレクション
  スレッドを利用しないで並列に動作実行させるか?
  ※List().par.map(sitelen).sum
   これで並行実行させられる。
 ◎Future
  (これってJavaでもあるよね?=あるよ)
  処理を非同期で先行実行し、あとから結果を取得可能
  Scalaではアクターライブラリでサポート(cala.actors)
   関数合成するとFutureの実行結果を取り出す所でブロックされる!!
 ◎Promise
  Futureより強力
  関数合成すると、合成関数全体が非同期実行される!
  scalazを利用してた

 ◎5つのコツ
  コツ1: y=f(x)
   引数がひとつの関数が基本
   関数合成のビルディングブロックになるよ
   引数が複数ある関数は他の関数(map関数とか)で合成しにくい
    対処方法:カリー化(関数の戻りを関数とする)
     addc(a: Int)(b: Int) : Int = a + b
     とすることで、
  コツ2:分割統治
  コツ3:演算は転換
   flatMapとかfoldLeftとか
  ※永続データ構造
   前に作ったデータ
  コツ4:オブジェクトの世界と関数の世界を分ける
   更新指示書の形でObjectに渡す?
   関数型データ構造
  コツ5:新しいデザインパターン
   関数型プログラミングの用語
    ・Functor(関手)
    ・Subgroup(半群)
    ・Monoid(モノイド)
    ・Monad(モナド)
   OOPのデザインパターン的に考えれば、数学的なところまで理解しなくてもよさそう?
★Twitterとオープンソース @yusukey
 http://dev.twitter.com
 http://bit.ly/tdt-ja
 id:twj_dev

 ◎OSSとの関わり
  支援してます。
   Apache、Eclipse、Open Invention、JCP、OpenJDK
  パフォーマンス系のためにもOpenJDKに参画してる
 ◎Twitter API
  オープンなAPIで無償提供
  13言語でAPIライブラリがあるよ
 ◎Twitter4Jのこれまで
  ほぼ全てをカバー
  APIはだいぶ落ち着いてきていて、追加変更は少なくなってる。
 ◎立ち位置
  Twitterはコミュニティを活発にするためにもライブラリを出さないらしい。
 ◎Twitter4Jのこれから
  キャッシング
  ストリーミングAPI利用を簡単に
  モックテスト
   レートリミットの影響を受けると辛いから。。。
  ツイート/ユーザの永続化機能
  jClouds対応?
  ライブラリからフレームワークへ
  半公式ライブラリへ
   github/twitter/twitter4jへ
  JSR Social API
   Twitter4Jが参照実装に???
 スケーラビリティの話。
 Hadoopはユーザのデータ解析とかに使ってる。
 メッセージはキューイングしている。デモ。
  memcachedプロトコルなんだけど、値を取ると値が消えるよ。(memcachedとは動きが違うよねー。プロトコル的にはクライアントがいっぱいあっていいよねー)
  RubyのGCがきつかったのでJavaベースに変更
 Kestrel(Scalaで記述。)
  Kestrelのフォーカス外
   メッセージの順序保証(してないよ)
   トランザクション
  memcachedプロトコルの拡張1
   ブロックフェッチ
    コンシューマから取りに行くというのが特徴
  memcachedプロトコルの拡張2
   リライアブルフェッチ

ということで感想。

Scalaは前から気になっていて、本までかってるのになかなか手を付けられていない始末でした。
そんな時にこのJJUGの話があったので、ちょうどいいと聞きに。
関数型やScalaのぼんやりしたイメージのみを持って聴いていたのですが、思った以上にキーワードが多くてついていくのがやっとというイメージ。
で、いつものごとく、Twitterでつぶやいていた所、色々な反応が。(わからずにつぶやいたのもあり、波紋を呼んだ模様)
お陰で、Scala関連の方たちをフォローできたので結果オーライでした。
話の内容自体はサラっとながす感じだったので、再度資料を見る+Scalaをもっと勉強しないと理解出来ないなぁという印象でした。
ちなみに、資料はこちら
次は、最近Twitterの中の人になった山本さん(@yusukey)の話しを聞きました。
Twitter4Jの話と、TwitterのOSSへの関わりの話。あとは、実際にTwitterが作成しているOSSのひとつKestrelについて。
TwitterはRubyベースで色々と作ってきていたのだが、Java(JVM上で動く言語(Scalaなど))に徐々にシフトしているというのが一番の印象です。
あとは、Lucene、Hadoopなど私の興味のあるOSSも利用しているなど。
Kestrelについてはデモを交えながら、実際の動きを説明されていたのでとてもわかり易かったです。
プレゼン中もTweetを表示しながらという、さすがTwitterの中の人という印象でした。
Twitterでは少し前から知り合いだったのですが、実際にお会いできた(イケメンでしたよ!)のも収穫でした。
次はStormの話も聞きたいかなぁ

で、2セッション(山本さんの話のあとにLT大会にも参加)だけですが、全体の感想を。
「クロスコミュニティカンファレンス」というだけあり、Java以外の話題(CouchDBとか名前がありました)もちらほらあったようです。
ただ、最近の他の勉強会やカンファレンスに比べると人が少ない印象でした。
私が参加したセッションは比較的大きな部屋だったせいもあり、40〜50人くらい入っていたと思うのですが、ガラガラな印象でした。
良い意味で、Javaも安定してきているため、参加者が少なかったのかなぁと
あとは、年齢層がHadoopなどに比べると高めかなぁという印象(かく言う私も年齢層を上げている一人ですが。。。)。Javaも長いですからねぇ。
午前中から参加していると違った印象だったかもしれないですが。。。
あと、初めて行った会場で、しかも大きめの施設でした。午後の途中から行ったせいもあるかもしれないですが、 案内が出ていなくて若干迷子に。。。
ただ、セッションの部屋自体は各席に机があり、電源も比較的多めにあったので、PC持ち込みでメモを取るには最適でした。
johtani | 備忘録 | 16:20 | comments(0) | trackbacks(0) | - | - |
1/2PAGES | >> |

03
--
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
--
>>
<<
--
PR
RECOMMEND
[改訂新版] Apache Solr入門 ~オープンソース全文検索エンジン (Software Design plus)
[改訂新版] Apache Solr入門 ~オープンソース全文検索エンジン (Software Design plus) (JUGEMレビュー »)
大谷 純,阿部 慎一朗,大須賀 稔,北野 太郎,鈴木 教嗣,平賀 一昭
Solr 4系に対応した改訂版を出しました!興味ある方はぜひ。
RECOMMEND
Apache Solr入門 ―オープンソース全文検索エンジン
Apache Solr入門 ―オープンソース全文検索エンジン (JUGEMレビュー »)
関口 宏司,三部 靖夫,武田 光平,中野 猛,大谷 純
RECOMMEND
RECENT COMMENT
  • ポモドーロ回してます。(ポモドーロテクニック入門読みました)
    おーたに (05/07)
  • Lucene 4.3.0のChangesにあるChanges in backwards compatibility policyが気になったので訳してみた。
    おーたに (04/26)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    おーたに (09/04)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    m_nori (09/03)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    おーたに (09/03)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    ho4kawa (09/03)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    おーたに (09/03)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    まろか (09/03)
  • Lucene/Solr 3.6.0リリース / 「Apache Solr入門」のサンプルのKuromojiとlucene-gosen対応(1章)
    おーたに (08/07)
  • Lucene/Solr 3.6.0リリース / 「Apache Solr入門」のサンプルのKuromojiとlucene-gosen対応(1章)
    moco (08/07)
RECENT TRACKBACK
MOBILE
qrcode
OTHERS