GeoMesa时空数据管理

GeoMesa时空数据管理
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: , ,
2023-06
版次: 1
ISBN: 9787115609830
定价: 79.90
装帧: 其他
开本: 其他
纸张: 胶版纸
页数: 237页
字数: 321千字
2人买过
  • 这是一本专门为智慧城市开发和管理人员打造的GeoMesa学习图书。本书的重点不仅包括宏观的行业环境,还包括对GeoMesa内部原理的剖析,力图帮助读者搭建GeoMesa以及时空数据高效管理的完整知识体系和技能树。
      本书首先从GeoMesa的历史及上手教程入手。然后,为了加强读者对入门代码中内容的理解,本书对GeoTools的基本概念进行介绍。接着,为了进一步引导读者对时空数据管理建立认知,本书详细阐述GeoMesa核心的时空索引。除了理论方面的介绍,本书还介绍GeoMesa数据写入、数据查询、数据统计、数据分析、数据工作流以及数据存储方案的使用方法和原理,以及GeoMesa对分布式计算的扩展。后,作者针对实际操作时遇到的典型问题,给出详细的解决方案。 刘钧文 哈尔滨工业大学建筑学硕士,科技算法研究员,中国计算机学会(CCF)会员。负责时空数据引擎的开发和时空数据产品的研发工作。研究兴趣包括:时空数据的管理、时空数据库、数据库优化器的原理及其实现、分布式计算以及城市计算。 梁超 人文地理与城乡规划专业,广东国地资源与环境研究院研究员,中国计算机学会(CCF会员)。擅长机器学习与GIS空间分析。研究兴趣包括:城市大数据与机器学习、时空数据挖掘以及城市计算。 俞自生 西安电子科技大学计算机本硕,中国计算机学会(CCF)会员,城市算法研究员,主要参与时空数据引擎的设计与开发,以及时空算法落地与实现等工作,研究兴趣包括:城市计算、时空数据管理与分析、分布式数据库以及复杂网络等。 第 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
  • 内容简介:
    这是一本专门为智慧城市开发和管理人员打造的GeoMesa学习图书。本书的重点不仅包括宏观的行业环境,还包括对GeoMesa内部原理的剖析,力图帮助读者搭建GeoMesa以及时空数据高效管理的完整知识体系和技能树。
      本书首先从GeoMesa的历史及上手教程入手。然后,为了加强读者对入门代码中内容的理解,本书对GeoTools的基本概念进行介绍。接着,为了进一步引导读者对时空数据管理建立认知,本书详细阐述GeoMesa核心的时空索引。除了理论方面的介绍,本书还介绍GeoMesa数据写入、数据查询、数据统计、数据分析、数据工作流以及数据存储方案的使用方法和原理,以及GeoMesa对分布式计算的扩展。后,作者针对实际操作时遇到的典型问题,给出详细的解决方案。
  • 作者简介:
    刘钧文 哈尔滨工业大学建筑学硕士,科技算法研究员,中国计算机学会(CCF)会员。负责时空数据引擎的开发和时空数据产品的研发工作。研究兴趣包括:时空数据的管理、时空数据库、数据库优化器的原理及其实现、分布式计算以及城市计算。 梁超 人文地理与城乡规划专业,广东国地资源与环境研究院研究员,中国计算机学会(CCF会员)。擅长机器学习与GIS空间分析。研究兴趣包括:城市大数据与机器学习、时空数据挖掘以及城市计算。 俞自生 西安电子科技大学计算机本硕,中国计算机学会(CCF)会员,城市算法研究员,主要参与时空数据引擎的设计与开发,以及时空算法落地与实现等工作,研究兴趣包括:城市计算、时空数据管理与分析、分布式数据库以及复杂网络等。
  • 目录:
    第 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
查看详情
相关图书 / 更多
GeoMesa时空数据管理
General Chemistry(王欣)()
耿旺昌 编;王欣
GeoMesa时空数据管理
Get It Right——Practical Oral English 初级英语口语
闫晓玲 向华 著
GeoMesa时空数据管理
Get ready!数学小初衔接练与考
傅琳 主编
GeoMesa时空数据管理
GeoTools 地理信息系统开发
王顼 刘钧文 王新宇 孙运娟
GeoMesa时空数据管理
Geotechnical Reliability Analysis:Theories,Methods,and Algorithms( 岩土工程可靠性分析:理论、方法与算法 )
张洁;肖特;姬建;曾鹏;曹子君
GeoMesa时空数据管理
GeoGebra软件和高中物理的深度融合
乔永海
GeoMesa时空数据管理
Getready!数学初高衔接讲与练
文卫星 著
GeoMesa时空数据管理
Getready!数学初高衔接练与考
文卫星 著
GeoMesa时空数据管理
Geology Applied to Civil Engineering 土木工程地质
赵晓彦 主编;罗刚 梁翼
GeoMesa时空数据管理
GeoScene地理信息平台:架构·技术·应用
易智瑞信息技术有限公司
GeoMesa时空数据管理
Geodatabase设计与应用分析
王育红
GeoMesa时空数据管理
Geomagic Control X 三维检测技术
成思源;杨雪荣
您可能感兴趣 / 更多
GeoMesa时空数据管理
Calcite数据管理实战
刘钧文;悟初境;孙潇俊