10.1.3 日志审计 .375 10.1.4工具 375 10.2 监控.444444。 380 10.2.1 日志 381 10.2.2 度量 .382 10.2.3 Java管理扩展(JMX) 385 10.3维护… .387 10.3.1 日常管理过程… 387 10.3.2委任和解除节点 389 10.3.3升级… 392 第11章关于Pig 397 11.1安装与运行Pig… 398 11.1.1执行类型 399 11,1.2运行Pig程序 400 11.1.3 Grunt… 401 1l.l.4 Pig Latin编辑器 401 11.2示例. 402 11.3与数据库进行比较… 405 11.4 Pig Latin ....... 406 11.4.1结构 407 11.4.2语句.… 408 11.4.3 表达式… 413 11.4.4 类型… 414 11.4.5 模式 415 11.4.6 函数… 420 11.4.7 宏… 422 11.5用户自定义函数 423 11.5.1过滤UDF… 423 11.5.2计算UDF… 427 11.5.3加载UDF 429 11.6数据处理操作… 432 11.6.1数据的加载和存储 432 11.6.2数据的过滤 433 11.6.3数据的分组与连接 436 目录 xxiii
11.6.4数据的排序 4441 11.6.5数据的组合和切分… 442 11.7Pig实战… .443 11.7.1并行处理.… 443 11.7.2参数代换… …444 第12章关于Hive. 447 12.1安装Hive .448 12.2示例 450 12.3运行Hive.. 451 12.3.1配置Hive. 452 12.3.2Hive服务… .454 12.3.3 Metastore..... .456 12.4Hive与传统数据库相比 .458 12.4.1读时模式vs.写时模式 .458 12.4.2更新、事务和索引.… 459 12.5 HiveQL ............. .460 12.5.1数据类型 461 12.5.2操作与函数.… .463 12.6表… ..464 12.6.1托管表和外部表… .465 12.6.2分区和桶… …466 12.6.3 存储格式 .471 12.6.4导人数据 .477 12.6.5表的修改 .479 12.6.6表的丢弃… 480 12.7查询数据 480 12.7.1排序和聚集 480 12.7.2 MapReduce脚本 481 12.7.3连接.… 482 12.7.4子查询… .486 12.7.5视图… 486 12.8用户定义函数… +44 488 12.8.1写UDF. 489 12.8.2写UDAF.… .491 xxiv 目录
第13章 关于HBase… 497 13.1 HBase基础 497 13.2 既念444 498 13.3.1 数据模型的“旋风之旅” 498 13.3.2 实现… 500 13.3安装… .503 13.4客户端 506 13.4.1 Java.......… 4.506 13.4.2 Avro、REST和Thrift... 510 13.5示例 511 13.5.1模式… 511 13.5.2加载数据… 512 13.5.3 Wcb查询… 516 13.6 HBase和RDBMS的比较… 519 13.6.1成功的服务… 520 13.6.2 HBase… …521 13.6.3实例:HBase在Streamy.com的使用 ,522 13.7 praxis. 524 13.7.1版本 524 13.7.2HDFS… 525 13.7.3用户界面… 526 13.7.4度量.… 526 13.7.5模式的设计 .526 13.7.6计数器… 527 13.7.7批量加载… 528 第14章 关于ZooKeeper 529 14.1安装和运行ZooKeeper 530 14.2示例… 532 14.2.1 ZooKeeper中的组成员关系 533 14.2.2 创建组… 534 14.2.3 加入组 536 14.2.4列出组成员 537 14.2.5 刚除组 .539 14.3Z0 oKeeper服务. …540 目录 XXV
14.3.1 数据模型 …540 14.3.2 操作 4543 14.3.3 实现… .548 14.3.4 一致性… 549 14.3.5会话… .552 14.3.6 状态… .554 14.4使用ZooKeeper来构建应用 .555 14.4.1配置服务 …555 14.4.2可复原的ZooKeeper应用 .559 14.4.3锁服务.… .563 14.4.4更多分布式数据结构和协议… .565 14.5生产环境中的ZooKeeper. …567 14.5.1可恢复性和性能 .567 14.5.2配置..… .568 第15章关于Sq00p.… .571 15.1获取Sq00p… …571 15.2 Sq00p连接器 .573 153一个导人的例子… .573 15.4生成代码 .577 15.5深入了解数据库导入… 578 15.5.1导入控制… .580 15.5.2导入和一致性 581 15.5.3直接模式导入… 581 15.6使用导入的数据 .581 15.7导人大对象. 585 15.8执行导出… 587 15.9深入了解导出功能.… .589 15.9.1导出与事务… .590 15.9.2导出和SequenceFile .591 第16章实例学习… .593 16.1 Hadoop在Last.fm的应用 .593 16.1.1Last.fm:社会音乐史上的革命 .593 16.1.2 Hadoop在Last.fm中的应用 593 16.1.3用Hadoop制作图表 594 xxvi 目录
l6.1.4 Track Statistics程序 595 16.1.5总结… 602 16.2 Hadoop和Hive在Facebook的应用. .603 16.2.1 Hadoop在Facebook的使用. 603 16.2.2虚构的使用样例 ..606 16.2.3HiVe… .609 16.2.4存在的问题与未来工作计划… …613 16.3 Nutch搜索引擎. 615 16.3.1背景介绍… 615 16.3.2 数据结构… …616 16.3.3 Nutch系统利用Hadoop进行数据处理的精选实例 619 16.34总结44… 630 16.4 Rackspace的日志处理....... …631 16.4.1要求/问题.… 631 16.4.2简史 632 16.4.3选择Hado0p. …632 16.4.4 收集和存储… 632 16.4.5对日志的MapReduce处理. 634 16.5关于Cascading… 640 16.5.1字段、元组和管道… 641 16.5.2操作.… .644 16.5.3 Tap、Scheme和Flow.… …645 16.5.4 Cascading实战… 646 16.5.5灵活性.… 650 16.5.6 Hadoop和Cascading在ShareThis的应用650 16.5.7总结.655 16.6 Apache Hadoop上万亿数量级排序 655 16.7用Pg和ukog探素10亿数量级边的网络图… 659 16.7.1社区判断… 661 16.7.2每个人都在和我说话:Twitter回复关系图…661 16.7.3对称链接… .664 16.7.4社区提取… 666 附录A安装Apache Hadoop 669 附录B关于CDH… 675 附录C准备NCDC气象数据 .677 目录 xxvii