本書は、Hadoopの概要を理解した読者を対象に、Hadoopを実際に使いこなすためのテクニックとTipsをまとめた書籍です。システム構築/運用、アプリケーション開発など、Hadoopならではの特徴を使いこなすための方法から、HBase、Hive、Pig、Mahout、ZooKeeperなどサブプロジェクトについてのHackまで、幅広い内容をカバーしています。Hadoopの力を引き出すのに必要なツールとその使い方、また内部の動きを知るための方法、さらに先進的なテクニックなど、開発の現場で必要とされる74のテクニックを掲載しています。早くからHadoopに注目し、実際に活用してきた技術者によって執筆された本書は、Hadoopを自在に使いたいエンジニア必携の一冊です。
Hadoop Hacks
―プロフェッショナルが使う実践テクニック
中野 猛、山下 真一、猿田 浩輔、上新 卓也、小林 隆 著
目次
目次
クレジット
はじめに
1章 システム構築/運用Hacks
1. Hadoop動作に必要なパラメータ
2. Hadoop用ノードのLinux OS設定
3. マスターノードのHA化
4. Hadoopに関する統計情報
5. HDFSのアップグレード
6. Sqoopの構造と動作
7. PostgreSQLでの動作
8. Azkaban入門
9. Azkabanの利用
2章 アプリケーション開発Hacks
10. クラスタ外部からHadoopの操作
11. InMapperCombiner
12. カスタムWritable型の作り方
13. カスタムPartitionerの作り方
14. DistributedCacheの使い方
15. CombineFileInputFormat
16. MapReduceジョブをテストする
17. セカンダリソート
18. Mapサイドジョイン
19. Reduceサイドジョイン
20. 多段MapReduce
21. InputFormat/OutputFormatの使用方法
22. Cassandraとの連携
23. APIでのHDFS操作
24. MapReduceタスクの分析
25. Hadoopで圧縮ファイルを扱う
3章 HBase Hacks
26. Bulkロードツール
27. MySQLからのインポート
28. HFileへ直接アクセスをするMapReduce
29. pre-splitテーブルの作成
30. Coprocessorの作り方
31. カスタムFilterの作り方
32. export/importツール
33. クラスタレプリケーション
4章 Hive Hacks
34. SQLとHiveQLの違い
35. Hiveの実運用でケアすべきこと
36. クエリの高速化(入門編)
37. クエリの高速化(応用編)
38. ユーザ定義関数
39. 他システムと連携する
40. 独自処理を組み込む
41. マルチユーザでの利用
42. インデックスを使う
43. Hiveのログ
44. Sqoopでのデータロード
45. 差分データでのやり取り
5章 Pig Hacks
46. custom storageの作り方
47. PigLatinとSQLの違い
48. ユーザ定義関数
49. Embedded Pig
50. MapReduceへの変換の見方
51. Pigですぐ利用できる関数
6章 Mahout Hacks
52. Mahout入門
53. インストールと実行方法
54. 基礎用語を学ぶ
55. レコメンドを行う
56. アソシエーション分析
57. 予測モデルを作る
58. 機械学習とMapReduce
59. 独自ドライバを作る
60. Mahoutを利用したクラスタリング
7章 ZooKeeper Hacks
61. ZooKeeperのAPI
62. ZooKeeperのアクセス制御
63. Eclipseを使った開発
64. ZooInspectorを使う
65. RESTでZooKeeperを使う
66. FUSEからZooKeeperを使う
67. tickTimeの仕組みを理解する
68. ZABの仕組みを理解する
69. リーダー選択の仕組みを理解する
70. ステータスと役割を理解する
71. グループ・重み付けを利用する
72. 分散アプリケーションの構築
73. ZooKeeperを核としたシステム(BookKeeper)
74. BookKeeperを使ったシステム
コラム
Cloudera's Distribution including Apache Hadoop(CDH)について
MapRについて
索引