エクスポート/インポート

何回やってもわすれちゃうので。メモ。エクスポート。 hbase org.apache.hadoop.hbase.mapreduce.Driver export (テーブル名) (ファイル名)インポート hbase org.apache.hadoop.hbase.mapreduce.Driver import (テーブル名) (ファイル名)基本的にMapRed…

sbt でmainメソッドを実行する方法

sbt でクラスパスにあるクラスのmainメソッドを実行する方法 sbt "run-main com.example.Main arg1 arg2" たぶんrun-mainに限らずなのですが、sbt 以下の引数をごっそり"で囲むのがポイント

case文で型パラメータをつかうとき

Scala でこんなプログラムを書いたとします。 tuple match{ case t:(Int,String) => println("(Int,String) tuple") case _ => println("Not a (Int,String) tuple!") } これ、コンパイル通ります。ただし、例えば、(String,String)のtuple を渡した場合、2…

遅延評価させるには

Query.listじゃなくて、Query.elements で CloseableIteratorを取得しましょう、と。

ローカルリポジトリのパスは変わってなかった。

maven3 だとローカルリポジトリのパスが変わっていますね。 - ayakobabaの日記 って昨日書いたけど、嘘でした!!会社のCIサーバの設定は、権限もろもろがないのでみれないのですが、ローカルPCにインストールされているmaven3の設定をみたけど、ローカルリ…

maven3 だとローカルリポジトリのパスが変わっていますね。

jenkins(hudson)サーバとmaven の社内リポジトリを一緒にするといいことがある、きっと。 - ayakobabaの日記 で書いたように、会社ではCIサーバのユーザのローカルリポジトリを、社内のリポジトリとして公開しています。 で、今日みたらmaven3がJenkinsさん…

foldLeftとmutableMap

最近Scalaにちょーーっとだけ慣れてきたので、なんとなくvarやmutableな何かをつかったら負けた気分になってしまいます。何かを集計してMapを作る、みたいな処理も嬉々としてfoldLeftつかってやってたら、社内のコードレビューで「インスタンス生成爆発で遅…

関ジャバカンファレンスにいってきた

ここ7−8年はJavaしか書いていなかったのに、めずらしくこの1−2ヶ月Java書いてません!が、行ってきました。関西Javaカンファレンス。Javaの動向が知りたい、というより、いつもこっそりフォローしてすごいすごいと思っているスピーカの顔を拝みにいくの…

IntelliJに乗り換えた

最近はIntelliJ に乗り換えましたが、EclipseでできていたことがIntelliJでできなくて、もやもやしてました。 でも、それも昨日までの話。調べてみたら普通にIntelliJでもできました。そりゃそうですね。まず、そもそもScalaの設定ができてなかった。Facetで…

sbtでつくったjarを公開して、Play!のウェブアプリケーションに依存関係を設定する

毎日まいにち、地味なビルド回りとかに異様に時間とられてますが楽しいです。さて、題名通り、共通ユーティリティ的なjarをつくって、あっちこっちのPlay!アプリケーションで使い回したい、というときに。 まず最初の(はまり)ポイントは、「Playのdependen…

Postgresql のTimezone

PostgresqlのTimezoneについての調査メモ with Timezone型のものは、内部的にはUTCで保管されている 表示時に、timezone設定パラメータの値を参照し、そのTimezoneの日時に変換する insert 時にTimezoneを指定可能。これはUTCで入る insert into test_timest…

QCon Tokyo に行ってきた。

インプットが多すぎて消化するのに時間がかかってしまいましたが、印象に残ったことを記録します。内容を知りたい人は、リンク先などを参照してください。(そもそもいちびって同時通訳使わずに英語で聞いていたので、誤解もいっぱいしている気がしますが。…

PUT/DELETEをいっぱいするときの注意

昨日もいったようにHTableは、マルチスレッド非対応です。じゃあ、とスレッドごとにHTableインスタンスを生成すると、それごとにHBaseのコネクションが作成さられてしまうので、そりゃもう遅くなるわ、メモリも不足するわ、たいへんな騒ぎになります。そうい…

Maven 3.0 ではsiteの設定方法が変わっている。

カバレッジを取得、表示するためのcoberturaの設定。2.0 まではreportingに設定していましたが、3.0からはmaven-site-pluginのconfigurationで設定します。ローカルはmaven3、だけどJenkinsはmaven2を使っているので、両方で動くようにmaven3用のプロファイ…

そんなことより

この年齢になってはじめて、HashMapがマルチスレッドでうまく動かないことを知りました。この方が恥ずかしい。。

HTable はマルチスレッド非対応!

それだけです。なんか、いままでおかしかった原因がわかったよ。

チェックボックする

Controllerの@RequestParamアノテーションで、チェックボックスのチェック結果を受け取るとき、こんな風に書くとエラーになります。 public String post(@RequestParam("isTrue") boolean isTrue){ //... } チェックしなかった場合「パラメータがない!」と…

Junitテスト実行時のHeap sizeを増やす方法

すぐ忘れてしまうのでメモ。 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <forkMode>pertest</forkMode> <argLine>-Xms512m -Xmx512m</argLine> <testFailureIgnore>false</testFailureIgnore> <skip>false</skip> </configuration> </plugin> mahoutのJobのUn…

関西Java エンジニアの会にいってきた

前回(かな)のUstを結構楽しんだので、今回やりくりして参加してきました。つらつらと感想を。 スーツの人が多くてびっくりした。Java = エンタープライズ系 = スーツということらしい Javaは「JSR ..」で語るとかっこいい あいかわらず自分がクライアント…

コンテナの設定のテスト

アノテーションベースでDIの設定をした場合、設定が各ソースファイルに分散されるので、@Autowired設定にしたものの肝心の注入するBeanにアノテートし忘れていたり、ということがあるのです。このように、applicationContext.xmlでのコンテナの設定が一貫し…

HBaseのデータ構造について考える

http://www.slideshare.net/hmisty/20090713-hbase-schema-design-case-studiesキーが長くなりがちなのですが、マルチテナントの場合分けたテーブルを分けた方がいいのか、キーを長くして保持した方がいいのか、どうなんでしょう。

Factory経由でBeanを生成する場合アノテーションはどうしたらいいのだろう。

正解は。 Factoryメソッドの方にこう書く。 @Component public class FooFactory{ @Bean @Qualifier("foo") public Foo createFoo(){ } これでOKのはずですが、そっか、これ結局試してなかったな。明日試す。

Spring でUnitTest

単体テスト実行時と本番で構成を変えたい、ということはよくあることだと思います。今はHBaseを絶賛お試し中なので、CIでテストを実行する場合は、リモートのHbaseのCI専用のテーブルに接続する設定にしました。設定は4カ所 src/main/resources/META-INF/spr…

HBase のクライアント機能向けにmavenの依存関係を設定する。

この記事の方法でhbase.jarをローカルリポジトリに登録して、Webアプリケーションにhbase.jarへの依存関係を設定したところ、ビルドを壊してしまいました。わーい。WEB-INF/lib にservlet-api.jar や jsp などを断りもなく突っ込んでしまうから、もうなんか…

IPアドレスが変わるとはまる

HbaseをノートPCにインストールして、開発環境として使っていたのですが、すっかりはまりました。 現象はここに書いてあるのと同じです。http://mail-archives.apache.org/mod_mbox/hbase-user/201102.mbox/%3C30816966.post@talk.nabble.com%3E要は 1. 会社…

jenkins(hudson)サーバとmaven の社内リポジトリを一緒にするといいことがある、きっと。

いや、結構普通の構成なのかもしれないのですが、昨日いいなこれ、と思ったので。 HBaseのjarを社内レポジトリに登録しようとしたのですがmaven久しぶりすぎてレポジトリの場所がわからなくて、聞いてみたら、こんな答えが。 CIサーバhudson のhudson ユーザ…

HBase にリモートマシンからアクセスする

HBaseを利用するJavaプログラムの単体テストを記述するにはどうしたらいいのか、と昨日からもんもんとしている訳です。 HTableをmockする CIサーバのローカルにHBaseをインストールする CIサーバからHBaseにリモートアクセスする という方法が考えられるので…

HBase をmavenのローカルリポジトリに登録する。

Hbaseをダウンロードするとディレクトリ直下にjarとpom.xmlがあるので、 $mvn install:install-file -Dfile=/path/to/hbase-0.90.0.jar -DpomFile=/path/to/pom.xml で、プロジェクトのpom.xmlには以下の依存関係を追加します。 <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase</artifactId> <version>0.9</version></dependency>…

Hadoop/Hbaseをmacにインストールする。

やってみました。Hadoopはver 0.20.2です。まずはここの通りにHadoopインストールhttp://happy-camper.st/lang/java/hadoop/hadoop-on-macosx.html私も300番台があいていたので、300にしました。 ちなみに多用しているdsclコマンドはDictionary Service Comm…

AspectJ : String.splitをすこーしだけ便利にする。

この前、String.split("\\s")を実行したら、\sが全角スペースを含んでいなくて、このあたりやっぱりjavaは気が利いていないと思った次第です。で、試しにAspectJで無理くり実装してみた package test; public aspect Pattern { pointcut stringSplit(String …