野球のグローブみたいにガバっととるイメージか。文字コードだとか、濁音などの合成文字だとか、長音だとか、いろいろあって、グロビングが大変そう。参照が消えるだけで実体は消えないのではないだろうか。「(ディレクトリが空でなかった場合は、IOExceptionが投げられます)」は、recursiveがfalseの時の事だろう。パスの階層に制限はあるのだろうか。クライアントノードだろう。遠くにある時にプロキシなどはどうなるのだろう。パスを上がって1、降りて1と数えている。Oracleでもマルチマスターもある。一台にHDではシークタイムなどに限界があり、大量データでは処理が追いつかないからHDFSを使うという前提もある。そもそも、対象にするデータの性質が違うのではないか。脚注†の最後、「まだデータがディスクキャッシュの中に残っている可能性はあります。」の「キャッシュ」は、ハードディスクドライブ上のキャッシュのことだよね。FSDataOutputStream#flush()は何をしているのだろう。クラウディア社が出しているらしい。p.76中ほどの、ファイルサイズ1GBとか1,000GBとかは、一ファイルのことではなくファイル群のことではないか。原書ではFilesになってないか。memoryで入力map出力mapで、外部に対する副作用はないのが普通だと思っていたのだが。mapでコピーがどのように実装されているのかが気になる。harはそれほど凝ったことはしていない。複数ファイルを一箇所で持っているだけ。zlibを使って圧縮しただけだとDEFLATEフォーマットのファイルができる。コーデックの推測は、拡張子で判断しないと駄目なのか。数バイトにマジックナンバーみたいなものはないのか。gzipなどはヘッダを付けているからわかるだろうが、DEFLATEでは単に圧縮されたデータだけなのでわからない。実行時間は少なくともJavaのほうが速くなることはない。呼び出しオーバーヘッドも大したことはないはずで、それより圧縮の処理のほうが時間がかかり影響が大きいはず。Windows用のネイティブライブラリはないのだろう。開発環境がOSSになじまないからか。CodecPoolの効果はネイティブライブラリの実装によりそう。毎回イニシャライズ処理があるとかなら効果あり。p.91コラム内、Avroの読み方は?(ウィキペディアによると、語源のイギリスの航空機会社Avroの読みは「アブロまたはアヴロ」とありました。compareTo()だと、そうならない場合がある。l.5「write()やreadFields()メソッドの中でオブジェクトをアロケートしないよう、注意しなければ」ならないのは、再利用されるのでアロケートするようになっていると、何度もシリアライズ、デシリアライズが発生してコストがかかるから。