×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787115609830
  • 装帧:平装-胶订
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:237
  • 出版时间:2023-06-01
  • 条形码:9787115609830 ; 978-7-115-60983-0

本书特色

1.智慧城市专业开发人员所写,4年之久的Geomesa经验,汇成一份通俗易懂的使用指南。

2.随着智慧城市建设的不断推进,Geomesa作为时空数据的基础组件越来越受到关注,本书可以帮助读者更好地学习、掌握和应用Geomesa。

3.内容丰富,涵盖多个方面:如何管理时空数据、如何分析时空数据等,并且将技术与商业场景相结合,以案例方式讲解Geomesa在实际中的应用。

4.除了Geomesa的内部原理和使用方法外,还列举了数个行业领域的实际应用,包括阿里、、蔚来汽车、吉利汽车等,并且在商业应用中取得了良好的效果。

内容简介

这是一本专门为智慧城市开发和管理人员打造的GeoMesa学习图书。本书的重点不仅包括宏观的行业环境,还包括对GeoMesa内部原理的剖析,力图帮助读者搭建GeoMesa以及时空数据高效管理的完整知识体系和技能树。 本书首先从GeoMesa的历史及上手教程入手。然后,为了加强读者对入门代码中内容的理解,本书对GeoTools的基本概念进行介绍。接着,为了进一步引导读者对时空数据管理建立认知,本书详细阐述GeoMesa核心的时空索引。除了理论方面的介绍,本书还介绍GeoMesa数据写入、数据查询、数据统计、数据分析、数据工作流以及数据存储方案的使用方法和原理,以及GeoMesa对分布式计算的扩展。*后,作者针对实际操作时遇到的典型问题,给出详细的解决方案。

目录

第 1章 GeoMesa的前世今生 1

1.1 时空数据背景 1

1.1.1 时空数据简介 1

1.1.2 时空数据处理过程 2

1.1.3 时空数据库的产生 3

1.2 传统时空数据库的瓶颈 4

1.2.1 无法支持海量数据 4

1.2.2 无法进行弹性扩展 5

1.2.3 流式数据的支持受限 5

1.2.4 改造成本较高 5

1.3 GeoMesa概述 5

1.3.1 GeoMesa横空出世 5

1.3.2 GeoMesa设计思想 6

1.3.3 GeoMesa核心特性 8

1.4 GeoMesa生态圈 9

1.4.1 GeoMesa支持的第三方组件 9

1.4.2 使用GeoMesa的产品 10

1.5 本章小结 10

第 2章 GeoMesa上手教程 11

2.1 下载、安装以及配置 12

2.1.1 下载和安装 12

2.1.2 GeoMesa-HBase的配置 13

2.2 通过命令行使用GeoMesa-HBase 16

2.2.1 环境和状态命令 16

2.2.2 数据模式相关命令 17

2.2.3 数据编辑命令 20

2.2.4 查询导出命令 21

2.2.5 分析命令 23

2.2.6 定义SimpleFeatureType 25

2.2.7 日志异常处理 25

2.2.8 GeoMesa Scala控制台 26

2.2.9 GeoTools 命令行工具 28

2.3 快速入门 30

2.4 通过Java API使用GeoMesa-HBase 33

2.4.1 Maven的配置与使用 33

2.4.2 Java API的使用示例 33

2.5 本章小结 35

第3章 GeoTools基本概念 36

3.1 空间矢量数据概述 36

3.1.1 矢量数据简介 36

3.1.2 OpenGIS规范 37

3.1.3 GeoTools概述 38

3.2 DataStore 40

3.2.1 DataStore简介 40

3.2.2 DataStore使用 40

3.3 SimpleFeatureType 41

3.3.1 SimpleFeatureType概念 42

3.3.2 SimpleFeatureType使用 43

3.4 SimpleFeature 44

3.4.1 SimpleFeature概念 44

3.4.2 SimpleFeature使用 45

3.5 GeoTools的内部逻辑 45

3.5.1 获取DataStore实例 46

3.5.2 创建Schema 46

3.5.3 数据写入 47

3.5.4 数据读取 50

3.6 本章小结 51

第4章 GeoMesa的时空索引 52

4.1 时空索引概述 52

4.1.1 索引的基础知识 53

4.1.2 传统的空间索引 54

4.1.3 空间填充曲线 56

4.1.4 Google S2索引与Uber H3索引 64

4.2 GeoMesa的索引实现 66

4.2.1 GeoMesa中索引的类型 66

4.2.2 GeoMesa索引具体的使用方法 67

4.3 GeoMesa的索引查询 69

4.3.1 条件分解 69

4.3.2 索引选择 70

4.4 GeoMesa的索引配置 72

4.4.1 配置FeatureID编码方式 72

4.4.2 配置Geometry序列化 72

4.4.3 配置列族 73

4.4.4 自定义创建索引 74

4.4.5 配置“Z”索引分片个数 74

4.4.6 配置“Z”索引时间间隔 74

4.4.7 配置“XZ”索引精度 75

4.4.8 配置ATTR索引分片个数 75

4.4.9 配置ATTR字段基数 75

4.4.10 配置索引分区 76

4.4.11 配置索引拆分策略 76

4.4.12 配置查询拦截器 76

4.4.13 配置统计缓存 77

4.4.14 配置时间优先级 77

4.4.15 配置混合几何类型 78

4.5 本章小结 78

第5章 数据写入 79

5.1 数据写入概述 79

5.1.1 数据写入流程 79

5.1.2 使用示例 80

5.2 生成ID信息 82

5.2.1 用户指定 82

5.2.2 随机生成 82

5.3 获取写入对象 84

5.3.1 写入表的对象 84

5.3.2 写入分区表的对象 85

5.4 写入存储引擎 87

5.4.1 获取转换器 88

5.4.2 构建索引 89

5.4.3 数据写入 92

5.5 更新统计信息 94

5.5.1 构造统计查询条件 94

5.5.2 执行统计操作 97

5.6 数据组织方式 98

5.6.1 元数据管理 98

5.6.2 实体数据管理 99

5.7 本章小结 100

第6章 数据查询 101

6.1 数据查询概述 101

6.2 查询准备 102

6.2.1 获取对应的DataStore对象 102

6.2.2 获取SimpleFeatureType信息 104

6.2.3 查询校验 105

6.3 查询计划生成 106

6.3.1 准备查询计划 106

6.3.2 结合索引生成查询范围 110

6.3.3 获取底层表信息 114

6.3.4 构造存储引擎查询信息 115

6.4 执行并获取数据 119

6.4.1 执行查询 120

6.4.2 获取数据 120

6.5 本章小结 122

第7章 数据统计 123

7.1 数据统计概述 123

7.2 统计功能 124

7.3 统计信息获取方法 125

7.3.1 通过Hints来获取统计信息 125

7.3.2 通过接口来获取统计信息 126

7.4 执行流程 127

7.4.1 流程概述 127

7.4.2 命令解析 128

7.4.3 执行统计 129

7.4.4 统计信息的序列化和反序列化过程 130

7.5 本章小结 136

第8章 数据分析 137

8.1 空间数据分析 137

8.1.1 空间数据分析概述 137

8.1.2 GeoMesa中对空间数据分析操作 139

8.2 热力图分析操作 140

8.2.1 热力图分析概述 140

8.2.2 GeoMesa中热力图分析功能的使用方法 141

8.3 KNN查询操作 143

8.3.1 KNN概述 143

8.3.2 GeoMesa中KNN查询功能的使用方法 145

8.4 近似查询操作 146

8.4.1 近似查询概述 147

8.4.2 GeoMesa中近似查询功能的使用方法 148

8.5 本章小结 149

第9章 数据工作流 150

9.1 数据工作流概述 150

9.2 NiFi概述 151

9.2.1 NiFi简介 151

9.2.2 NiFi的特性 153

9.2.3 Processor机制 153

9.3 GeoMesa与NiFi整合 154

9.3.1 NiFi自定义数据处理器 155

9.3.2 GeoMesa扩展结构 160

9.4 GeoMesa NiFi数据处理算子 160

9.4.1 转换器处理器 160

9.4.2 记录处理器 161

9.4.3 Avro 处理器 162

9.4.4 记录更新处理器 162

9.4.5 数据源处理器 163

9.4.6 转换处理器 164

9.5 本章小结 164

第 10章 GeoMesa的数据存储方案 165

10.1 使用HBase存储数据 165

10.1.1 HBase概述 165

10.1.2 GeoMesaHBase DataStore简介 166

10.2 使用Kafka存储数据 168

10.2.1 Kafka概述 168

10.2.2 GeoMesa Kafka DataStore简介 169

10.3 使用Redis存储数据 172

10.3.1 Redis概述 172

10.3.2 GeoMesa Redis DataStore简介 172

10.4 使用CQEngine存储数据 174

10.4.1 CQEngine概述 174

10.4.2 GeoMesa CQEngine DataStore简介 174

10.5 使用FileSystem存储数据 176

10.5.1 FileSystem概述 176

10.5.2 GeoMesa FSDS简介 176

10.6 使用Lambda存储数据 181

10.6.1 Lambda概述 181

10.6.2 GeoMesa Lambda DataStore简介 182

10.7 本章小结 184

第 11章 分布式计算 185

11.1 Spark和Spark SQL 185

11.1.1 Spark概述 185

11.1.2 Spark SQL概述 186

11.2 GeoMesa接入Spark的方式 188

11.2.1 GeoMesa Spark整体架构 188

11.2.2 GeoMesa对RDD的扩展 189

11.2.3 GeoMesa对JTS的扩展 192

11.2.4 GeoMesa对Spark SQL空间能力的扩展 196

11.3 空间数据计算函数 207

11.3.1 空间数据构建函数 207

11.3.2 空间数据信息抽取函数 208

11.3.3 空间数据转换函数 208

11.3.4 空间数据输出函数 209

11.3.5 空间数据关系函数 209

11.3.6 空间数据处理函数 210

11.4 本章小结 210

第 12章 操作时遇到的若干问题 211

12.1 GeoMesa写入数据时出现的问题 211

12.1.1 Region繁忙的问题 211

12.1.2 数据记录过大的问题 216

12.2 GeoMesa查询数据时出现的问题 218

12.2.1 数据采样的问题 219

12.2.2 数据分页的问题 221

12.2.3 利用Spark查询GeoMesa时,无法设置返回数据量上限的问题 225

12.2.4 查询时数据不一致的问题 230

12.3 GeoMesa分析统计时出现的问题 233

12.4 本章小结 237

参考文献 238

展开全部

作者简介

刘钧文 哈尔滨工业大学建筑学硕士,科技算法研究员,中国计算机学会(CCF)会员。负责时空数据引擎的开发和时空数据产品的研发工作。研究兴趣包括:时空数据的管理、时空数据库、数据库优化器的原理及其实现、分布式计算以及城市计算。 梁超 人文地理与城乡规划专业,广东国地资源与环境研究院研究员,中国计算机学会(CCF会员)。擅长机器学习与GIS空间分析。研究兴趣包括:城市大数据与机器学习、时空数据挖掘以及城市计算。 俞自生 西安电子科技大学计算机本硕,中国计算机学会(CCF)会员,城市算法研究员,主要参与时空数据引擎的设计与开发,以及时空算法落地与实现等工作,研究兴趣包括:城市计算、时空数据管理与分析、分布式数据库以及复杂网络等。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航