2013-01-01から1年間の記事一覧
最近仕事関連でChrome Extensionを作ったので、ポイントとかを簡単にまとめてみる。 前提 環境とか 古いChromeには対応しない(ChromeのバージョンによってAPIが変わってたりする) manifestのバージョンはv2 作るもの Extensionにはいくつかのタイプがあるが…
以前、レンサバで自分のblog持ってたんだけど、しばらく放置してたらスパムコメントが大量についてデータファイルが肥大化して動かなくなってしまった(懐かしのMovableType)。何かこのまま捨てちゃうのも勿体無いので、復活させることにした。でも自分でや…
Squerylでsum, avgとか以外の集計関数を使いたい 集計関数とはavgとかsumみたいに、複数の値を受け取って1つの値を返す関数のこと。Squerylではここに載っているものがサポートされてる。でも、今回は、medianを使いたい。中央値。中央値と平均値の違いがわ…
退職エントリー書ける人が羨ましい(皮肉とかでなくて) 年度末、期末とかになると退職エントリー花盛りじゃない。正直羨ましいなー。何か名の知れた会社でバリバリ活躍してたエンジニアが、同じく名の知れた違う会社に転職して、前の会社で勉強になったこと…
やりたいこと あー、タイトル分かりにくくてすみません。今作ってるサイトで、要はこういうことをやりたいんです。 GET /$areaId<[0-9]+> controllers.Foo.bar(areaId: Int, subAreaId: Option[Int] = None) GET /$areaId<[0-9]+>/$subAreaId<[0-9]+> contro…
Amazon RDSとは、Amazonが提供するマネージドのMySQLサービス(OracleとMicrosoft SQL Serverもあるけど)。最近、いくつかのプロジェクトでEC2上のMySQLからRDSに移行したので、その際に気をつけるポイントとかを書いてみる。
昔はbi-gramの場合、CJKTokenizerFactory ってのを使っていて、自分が持っているSolr本にもそう書いてあるが、最近は、StandardTokenizerFactory + CJKBigramFilterFactory を使うらしい。詳しくはggrks。bi-gramの場合、検索クエリーが1文字の場合に対応出…
PECLのSolrエクステンションはSolr 4では動かない PECLのSolrエクステンションがあるんだけど、Solr 4ではcommitが上手く動かない(モジュールの最新バージョン1.0.2でもNG)。原因は`waitFlush`というパラメータが廃止になった?ため。詳しくはこの辺を参照。
Squryl で複雑なSQLを実行させたい ORMって、ちょっと複雑なSQLを実行させようとすると面倒な事が多くて、みんな仕方なしに使ってること多くない?という主観はさておき、Squrylの場合もドキュメントやサンプルプログラムに載っている例以外の事をやろうとす…
やりたい事 他のORMと比べて便利かどうかは特に検討せずに、とりあえずSquerylを使ってる。PostgreSQLにはgeometry関連の型があって、更に詳しく言うとPostGISとそうじゃないやつがあるんだけど、その辺の詳細は省略。今回扱うのは通常のpoint型の話。x, yの…
AWS版のmemcachedがElastiCache。一度セットアップしちゃえば、使い方は普通のmemcachedとほぼ同じなんだけど、そこはさすが(というか何というか)AWS。AutoDiscoveryという独自の機能もある。詳しくはこの辺を参照。
前回、Dremelの論文を読んで、分かる範囲で説明した。さて、前回の記事を書いた後、BigQueryのホワイトペーパー (miyakawa_taku さんありがとうございます)を紹介されたので読んでみた。論文の要約+BigQueryの紹介と言った内容。今回は、まずはそのホワイ…
夢の(悪夢の)TV露出、それに備えて負荷テスト Webサイト・サービスを立ち上げて順調に成長していくと、ニュースサイトや雑誌に載ったり、運が良ければTVに取り上げられたりする。プロモーション視点で言うと夢の様なTVデビューも、インフラ担当に取っては…
時代はPlay 2.1だよね(棒 Play 2.0から2.1にアップデートした。丸1日位かかったので、これからやる人に向けてちょっとメモ。 旧環境: Play 2.0.4 新環境: Play 2.1.1 なぜアップデートしようと思ったか ちなみに、元々Play 2.1にアップデートするつもりじゃ…
rpscala 第100回でやった事。 やりたい事 sbtで出来たプロジェクトがあって、以下のものをリモート環境にデプロイしたい。 自分で書いたコード 依存ライブラリ プロジェクト構成はこんな感じ。multi project構成になっている。モデル等共通部分のcommon、フ…
祝第100回! 自分がちょくちょくに参加している「Scala勉強会 in 東京」、あるいはTwitterのハッシュタグである「rpscala」と言った方が通りがいいかもしれないけど、それがついに開催が100回に!おめでとうございます! >今までrpscalaに関わって来られた全…
はじめに 最近話題の(?)Chefの環境をCentOS 6.3上に構築し、レシピの書き方の基本的な事を説明する。Chef Solo環境構築に関する公式ドキュメントはこちらそこにOS別のインストールドキュメントがあるが、CentOSなどのRed Hat系はこちら。基本はこれに沿っ…
目的はCloudera Managerで楽にHadoopのクラスタ構築をする クラスターの実験用に自宅サーバーを購入したので、ぼちぼちセットアップしていく。以前VPSで2台構成のクラスタ(しょぼい)を構築した時は、CDHを手動でインストールしたが(過去記事)、今回はメ…
第1回に続き、第2回も無事終了。今回は体調不良や急用でキャンセルした方が数名、遅れて来られた方も数名いたため、懇親会でのピザは無し。 発表内容 LTSVをPigで処理する話(みやかわさん) 資料はこちら。数週間前、突如Twitterで大流行した人気ワードLTSV…
CentOS 6.3でBINDを起動しようとすると、以下のメッセージを出して固まる。 Generating /etc/rndc.key:解決策はここにあるように、rndc-confgenコマンドで /etc/rndc.key ファイルを作成する。 # 通常時 rndc-confgen -a -r /dev/urandom # chroot環境の時 r…
最近、趣味で検索エンジンみたいなの作ってるし、仕事でも大規模データを扱う話が増えてきた。初心者向け分散処理勉強会なんてのも有志で立ち上げて色々勉強中。さて、ちょっと前にClouderaがImpalaなるものを出した。Googleが2010年に発表したDremelという…
今まで基本的には個人で仕事してたんだけど、法人にすることにした。3月いっぱいは仕事とかで色々忙しいので、4月か5月に登記する予定。最初は知り合いの休眠会社を引き取る予定だったんだけど、色々検討した結果、新規で作ることに。本店は千葉県茂原市(実…
自宅サーバーに外からアクセスできるようにしたい カフェとかで仕事したいしー。考えた選択肢は以下の2つ。 固定IPを取得 IPv6で接続 以前OCNのIPv6サービスを使っていたけど、安定感とかその他で何となく使いづらかった記憶があったので、今回は固定IPを取…
誘われたいきさつ 見覚えのあるアイコン 仕事上で仲良くさせてもらっている人から「知り合いで面白い会社があるんですけど、今度遊びに行きません?」みたいに誘われた。こういう話は基本的に断らないので二つ返事でOKした。ちなみに会社名を聞いてみると「…
メモリが欲しい 過去何回か、「検索エンジンを作る(予定)」ってエントリーを書いている。詳しくはそっちを見て欲しいけど、Apache NutchとHBaseをベースとした検索エンジンみたいなのを作っている。直近の回でHBaseをスタンドアローンモードから分散モード…
give and take 最近、ココナラとかWishScopeみたいに自分の出来ることを登録して、安価に(あるいは無料で)簡単な仕事を受ける、みたいサービスがちょこちょこあって、自分もたまに使ってるんだけど、こっちのブログにも同じようなことを書いておこうと思っ…
過去の記事 第1回: Nutch + HBaseを動かすまで 第2回: Nutchの動作を解説 第3回: HBaseをスタンドアローンから分散モードに移行 NutchがHBaseのクラスターを使うようにする 前回、HBaseを分散モードに移行したので、NutchがそのHBaseのクラスターを使うよう…
過去の記事 第1回: Nutch + HBaseを動かすまで 第2回: Nutchの動作を解説 背景・前提 HBaseじゃなくてMySQLを使えば? Nutch + HBaseのクローラーが動作するようになったが、正直1台で動かすならMySQLを使ったほうが色々楽だし、データの抽出も楽。HBaseを使…
第1回初心者向け分散処理勉強会は無事終わりました 11人が集まりました。飲み物無料の懇親会も! 2/4(月)に分散処理勉強会を開催しました。当初は内輪2名で話をしていて、その後Twitterで声をかけたところ何人からか返信を頂いたので、まぁ4〜5人でやろう…
久しぶりにプログラミングネタ。 背景 List[Int]もList[String]もバイトコードでは同じ type erasureについて知ってる人は飛ばしてOK。知らない人向けに簡単に説明すると、Scalaでは(Javaでも同じだけど)以下の様なメソッドのオーバーロードは定義出来ない…