《大数据架构商业之路 从业务需求到技术方案》

推荐序一

推荐序二

前言

第1章 抉择

第2章 数据收集

2.1 互联网数据收集 4 2.1.1 网络爬虫 5 2.1.2 Apache Nutch简介 11 2.1.3 Heritrix简介 14 2.2 内部数据收集 15 2.2.1 Apache Flume简介 17 2.2.2 Facebook Scribe和Logstash 21 2.3 本章心得 21 2.4 参考资料 22

第3章 数据存储

3.1 持久化存储 23 3.1.1 Hadoop和HDFS 25 3.1.2 HBase简介 28 3.1.3 MongoDB 35 3.2 非持久化存储 37 3.2.1 缓存和散列 37 3.2.2 Memcached和Berkeley DB简介 41 3.2.3 Redis简介 41 3.3 本章心得 44 3.4 参考资料 44

第4章 数据处理

4.1 离线批量处理 46 4.1.1 Hadoop的MapReduce 47 4.1.2 Spark简介 52 4.1.3 Hive简介 53 4.1.4 Pig、Impala和Spark SQL 56 4.2 提升及时性:消息机制 58 4.2.1 ActiveMQ简介 60 4.2.2 Kafka简介 61 4.3 在线实时处理 63 4.3.1 Storm简介 63 4.3.2 Spark Streaming简介 66 4.4 本章心得 66 4.5 参考资料 67

第5章 信息检索

5.1 基本理念 70 5.2 相关性 70 5.2.1 布尔模型 70 5.2.2 基于排序的布尔模型 71 5.2.3 向量空间模型 74 5.2.4 语言模型 75 5.3 及时性 77 5.4 与数据库查询的对比 81 5.5 搜索引擎 82 5.5.1 Web搜索中的链接分析 83 5.5.2 电子商务中的商品排序 86 5.5.3 多因素和基于学习的排序 88 5.5.4 系统框架 89 5.5.5 Lucene简介 93 5.5.6 Solr简介 98 5.5.7 Elasticsearch简介 104

5.6 推荐系统

5.6.1 推荐的核心要素

推荐系统与搜索系统的区别:

  • 传统的搜索利用的是集体行为,而推荐则是个人行为。
  • 搜索的输入是明确的关键字,而推荐往往没有明确的查询条件。

推荐系统是对搜索系统的补充,主要包括:

  • 增加物品被浏览、被销售的数量
  • 出售多样化的商品
  • 增加用户的满意度和忠诚度

核心要素

  1. 系统角色

    用户、物品、情景和匹配引擎

  2. 相似度

  3. 相似度传播框架

5.6.2 推荐系统的分类

按推荐依据划分:

  1. 基于物品
  2. 基于用户
  3. 基于情景

按相似度的定义来划分:

  1. 基于内容
  2. 基于知识
  3. 基于用户行为
  4. 基于社交和社区

按相似度传播的方式划分:

  1. 无传播
  2. 协同过滤
    1. 基于用户的过滤
    2. 基于物品的过滤

5.6.3 混合模型

分类:

  1. 微观混合
  2. 宏观混合

5.6.4 系统架构

数据采集

用户建模

物品建模

推荐算法

混合模块

结果存储

前端展示

查询引擎

5.6.5 Mahout 116 5.7 在线广告 119 5.8 本章心得 127 5.9 参考资料 128

第6章 数据挖掘

6.1 基本理念 131 6.2 数据的表示和预处理 133 6.3 机器学习算法 136 6.4 挖掘工具 157 6.5 本章心得 165 6.6 参考资料 165

第7章 效能评估

7.1 效果评估 168 7.2 性能评估 190 7.3 本章心得 202 7.4 参考资料 202

第8章 大数据技术全景

第9章 商品太多啦!需要搜索引擎

9.1 业务需求 207 9.2 产品设计和技术选型 208 9.3 实现方案 211

第10章 能否更主动?还需要推荐引擎

10.1 业务需求 223 10.2 产品设计和技术选型 225 10.3 实现方案 230

第11章 这样做的效果如何

11.1 业务需求 241 11.2 产品设计和技术选型 242 11.3 实现方案 243

第12章 这个搜索有点逊

12.1 业务需求:还要搜得更多 258 12.2 “还要搜得更多”:产品设计和技术选型 259 12.3 “还要搜得更多”的方案实现 261 12.4 业务需求:还要搜得更准 265 12.5 “还要搜得更准”:产品设计和技术选型 266 12.6 “还要搜得更准”的方案实现 271 12.7 业务需求:还要更快 273 12.8 还要“变”得更快:产品设计和技术选型 274 12.9 还要“搜”得更快:产品设计和技术选型 275 12.10 业务需求:给点提示吧 280 12.11 给点提示吧:产品设计和技术选型 282

第13章 支持更高效的运营

13.1 业务需求:互联网时代的CRM 287 13.2 互联网时代的CRM:产品设计和技术选型 288 13.3 业务需求:抓住捣蛋鬼 291 13.4 抓住捣蛋鬼:产品设计和技术选型 292 13.5 业务需求:销售之战 295 13.6 销售之战:产品设计和技术选型 296

后记 299