Postgesql 空间点聚合查询实验

Postgesql 空间点聚合查询实验聚合效果:根据范围四至获取区域内的聚合点数据。 aggregate_build_data /***创建测试空间点数据库***/ create table tpoint( gid serial pri…

Postgesql 空间点聚合查询实验

aggregate_build_data

/***创建测试空间点数据库***/
create table tpoint(  
  gid serial primary key,  
  geom geometry(Point,4326)  
);
/***创建索引***/
create index tpoint_geom_idx on tpoint using gist(geom);  
/***插入50万条范围内随机位置数据***/
insert into tpoint(geom) SELECT st_setsrid((ST_Dump(p_geom)).geom,4326)  
from (select ST_GeneratePoints(ST_GeomFromText("Polygon((117.357442 30.231278,119.235188 30.231278,119.235188 32.614617,117.357442 32.614617,117.357442 30.231278))"), 300000) as p_geom) as b  
/***聚合查询效率测试,查询最大量***/
SELECT width_bucket(st_x(geom), 117.057442 ,119.235188 ,20) grid_x,  width_bucket(st_y(geom), 30.431278 , 32.614617, 20) grid_y,  
  count(*),  st_centroid(st_collect(geom)) geom,  array_agg(gid) gids  
  from tpoint where st_x(geom) between 117.057442 and 119.235188 and st_y(geom) between 30.431278  and 32.614617 GROUP BY grid_x,grid_y 
/***耗时0.5秒,去掉gid字段的查询耗时0.3秒***/
/***模拟数据在50万时,耗时0.9秒,去掉gid字段的查询耗时0.7秒***/

代码100分

aggregate_search

代码100分/***聚合查询效率测试,查询最大量***/
SELECT width_bucket(st_x(geom), 117.057442 ,119.235188 ,20) grid_x,  width_bucket(st_y(geom), 30.431278 , 32.614617, 20) grid_y,  
  count(*),  st_centroid(st_collect(geom)) geom,  array_agg(gid) gids  
  from tpoint where st_x(geom) between 117.057442 and 119.235188 and st_y(geom) between 30.431278  and 32.614617 GROUP BY grid_x,grid_y 
/***耗时0.5秒,去掉gid字段的查询耗时0.3秒***/
/***模拟数据在50万时,耗时0.9秒,去掉gid字段的查询耗时0.7秒***/

width_bucket说明:

Postgesql 空间点聚合查询实验

aggregate effects

Postgesql 空间点聚合查询实验

Postgesql 空间点聚合查询实验

参考阅读

PostgreSQL 9.6.0 手册 http://www.postgres.cn/docs/9.6/functions-math.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/10004.html

(0)
上一篇 2023-01-27 17:30
下一篇 2023-01-27

相关推荐

  • Python中的sys.exit函数:优雅地退出程序

    Python中的sys.exit函数:优雅地退出程序在Python编程中,程序在运行过程中可能会遇到需要停止程序的情况,如果不加处理,程序运行到中途就被强制停止的话,可能会导致数据丢失,甚至可能会让程序异常崩溃。因此,对于Python程序退出的处理,我们可以使用Python的内置函数sys.exit(),进行优雅地退出程序。

    2024-03-21
    28
  • 在python中更新访问令牌(更新python的指令)

    在python中更新访问令牌(更新python的指令)Python操作Access数据库步骤之1、建立数据库连接

    2023-10-27
    76
  • MySQL优化索引_mysql 索引优化

    MySQL优化索引_mysql 索引优化MySQL优化中,最重要的优化手段就是索引,也是最常用的优化手段 索引简介: 索引:关键字与数据位置之间的映射关系 关键字:从数据中提取,用于标识,检索数据的特定内容 目的:加快检索 索引检索为什么快

    2023-02-04
    108
  • 华为和荣耀的区别哪个好_华为荣耀20 发布

    华为和荣耀的区别哪个好_华为荣耀20 发布  华为和荣耀是2019年中国市场唯二保持增长的品牌。两品牌依托华为集团,其产品在市场上都有很强的竞争力,那么华为和荣耀选择哪个好?   要回答这个问题,我们首先要弄清楚华为和荣耀的关系。荣耀和华为…

    2023-03-12
    91
  • 自然语言处理:让Python更智能的能力

    自然语言处理:让Python更智能的能力自然语言处理(Natural Language Processing,简称NLP)是计算机科学、人工智能和语言学等学科交叉的一门技术。它致力于使计算机能够理解、分析、处理人类语言。在这一过程中,Python已经成为了一种不可或缺的编程语言。Python的简洁性和功能强大的库,如nltk、spaCy和gensim等,使其成为了处理自然语言的首选语言。以下从选取语料、分词、词性标注、命名实体识别、情感分析等方面阐述NLP在Python中实现的方法和技巧。

    2024-02-24
    57
  • Python计算π/4的正切值

    Python计算π/4的正切值在计算机科学中,计算圆周率是一个经典的问题。本文将介绍使用Python计算π/4的正切值的方法。

    2024-02-13
    48
  • XtraBackup 搭建从库的一般步骤及 XtraBackup 8.0 的注意事项[亲测有效]

    XtraBackup 搭建从库的一般步骤及 XtraBackup 8.0 的注意事项[亲测有效]搭建从库,本质上需要的只是一个一致性备份集及这个备份集对应的位置点信息。之前介绍的几个备份工具( MySQL中如何选择合适的备份策略和备份工具 )均可满足。 这里,我们重点看看如何

    2023-05-20
    81
  • mysql穿件序列的方式「建议收藏」

    mysql穿件序列的方式「建议收藏」–创建自增表 CREATE TABLE biz_tb_sequence ( NAME VARCHAR ( 50 ) NOT NULL, current_value INT NOT NULL, _in…

    2023-03-31
    107

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注