- 博客(365)
- 资源 (14)
- 收藏
- 关注
原创 ElasticSearch地理空间数据查询
之前已经介绍了在ElasticSearch中的地理空间数据结构,并且已经将示例数据写入了ES中,接下来我们一起详细看看在ElasticSearch中是如何查询地理空间数据的。
2024-06-25 07:30:00
340
原创 ElasticSearch地理空间数据写入
我习惯使用Java+PostgreSQL+PostGIS的方式处理地理数据。这次的数据主要分两类:点(Point)的POI数据和Shape(点、线、面)混合数据。原始数据使用arcmap处理成一个矢量 ,并且将坐标系转换设置为EPSG4326(WGS84经纬度坐标)创建PostgreSQL数据库,并添加PostGIS扩展windows环境下,使用PostGIS自带的工具或QGIS将矢量导入pg数据库中ES数据库中根据数据字段创建对应的mappings。
2024-06-20 08:00:00
442
原创 ElasticSearch地理空间数据了解
Elasticsearch 的地理空间索引配置可以显著优化查询性能,特别是在创建包含 `geo_shape` 字段的索引时。主要配置参数包括树结构类型(如 `quadtree` 或 `geohash`)、精度(如 `1m` 表示1米)、树层级数(决定索引精度和大小)、以及距离误差百分比(平衡查询精度和索引复杂度)。例如,使用 `quadtree` 结构,设置 `precision` 为 `10m`、`tree_levels` 为 15、`distance_error_pct` 为 0.01,可以在复杂地理形
2024-06-16 17:12:44
418
原创 MongoDB主从复制模式基于银河麒麟V10系统
MongoDB自4.0版本开始已经不再建议使用传统的master/slave复制架构,而是全面采用了复制集(Replica Sets)作为标准的复制和高可用性解决方案。复制集是MongoDB的一种数据复制和高可用性机制,通过异步同步数据至多个服务器实现数据副本的分布。这一机制支持自动故障转移和恢复,无需用户介入即可在主节点故障时自动切换至备份服务器作为新的主节点,确保业务连续性。一个复制集最多支持7个节点,任一节点均可被选举为主节点。
2024-04-07 13:00:00
580
原创 Java项目实战记录:雷达数据插值
之前已经实现了雷达数据的解析和雷达数据后端渲染功能,现在又有一个新的需求。之前是将雷达数据点使用GeoTools渲染成PNG的图片,但这个数据返给前端后不能无极缩放,因为它是个栅格图片;并且如果前端直接渲染雷达点数据也不行,渲染后的数据放大会变成稀疏的点。因此要无极缩放并且不能稀疏,这样的话就需要使用插值方法了,使用插值方法将雷达点数据插值成等值面,这样前端只需要渲染等值面即可。
2024-03-20 11:12:40
1799
原创 Java项目实战记录:雷达数据渲染
GeoTools是专为地理空间数据处理设计的工具集,它提供了丰富的API来支持地理数据的读取、查询、分析和展示。我之前已经成功使用Java语言解析了C++处理的雷达数据文件,并提取了其中的经纬度点数据。接着,创建了一个包含所有雷达数据点的图层,并为这些点指定了样式,这样做旨在通过视觉上的区分,提高数据的可读性。中,最后使用GeoTools的功能,将这些内容渲染成一张清晰展示雷达数据的PNG图片。
2024-03-18 08:00:00
1636
2
原创 Redis:面试问题,你都知道吗?
Redis 是一个多功能的内存数据结构存储系统,它支持多种数据类型,并采用复杂的底层实现来确保在各种用例中都能实现高性能、灵活性和高效性。下面将深入讨论 Redis 支持的基本数据类型,强调它们的底层实现方式及这些实现如何有助于 Redis 的性能和功能。
2024-03-14 08:00:00
874
原创 Linux:非常实用的Linux命令
systemctl命令是Systemd系统和服务管理器的一部分,用于控制systemd系统和服务管理器。Systemd是大多数最新的Linux发行版使用的初始化系统和服务管理器,它用于启动守护进程并管理它们的运行。systemctl提供了一个命令行界面,允许你管理和查询系统状态和服务。
2024-03-10 10:20:31
1143
原创 人大金仓KingbaseES:银河麒麟V10安装
金仓数据库管理系统[简称:KingbaseES]是北京人大金仓信息技术股份有限公司(简称人大金仓)自主研发的、具有自主知识产权的商用关系型数据库管理系统(DBMS)。该产品面向事务处理类应用,兼顾各类数据分析类应用,可用做信息管理系统、业务及生产系统、决策支持系统、全文检索、地理信息系统等的承载数据库。
2024-03-05 08:41:23
1316
原创 人大金仓KingbaseES:windows安装
金仓数据库管理系统[简称:KingbaseES]是北京人大金仓信息技术股份有限公司(简称人大金仓)自主研发的、具有自主知识产权的商用关系型数据库管理系统(DBMS)。该产品面向事务处理类应用,兼顾各类数据分析类应用,可用做信息管理系统、业务及生产系统、决策支持系统、全文检索、地理信息系统等的承载数据库。
2024-03-04 11:29:32
2182
原创 Java:性能优化细节31-45
通过减少对get和set方法的使用,我们可以增强类的封装性,减少类之间的耦合,并提高代码的整体质量。合理地设计对象的公共接口,让对象自己管理其状态和行为,是面向对象设计的核心原则之一。为Vector和Hashtable定义初始大小是一个重要的性能优化措施,尤其是在你预先知道将要存储的元素数量时。这种做法可以大大减少因为容器扩容而产生的性能开销。下面是如何为Vector和Hashtable设置初始大小的示例。正确估计并设置Vector和Hashtable的初始大小可以显著提高性能,尤其是在处理大量数据时。
2024-02-27 16:00:00
1245
原创 Java:性能优化细节21-30
一个是线性表,一个是链表,一句话,随机查询尽量使用ArrayList,ArrayList优于LinkedList,LinkedList还要移动指针,添加删除的操作LinkedList优于ArrayList,ArrayList还要移动数据,这两种集合在Java中有着不同的数据结构和用途,它们各自的性能优势和劣势主要由其内部实现决定。
2024-02-26 08:15:00
1718
原创 Java:性能优化细节11-20
当你要创建一个比较大的hashMap时,充分利用这个构造函数合理初始化HashMap的容量和负载因子是提高HashMap性能的关键因素之一。HashMap在Java中是一种广泛使用的数据结构,用于存储键值对。正确地设置其初始容量()和负载因子(loadFactor)可以显著减少哈希表重构的次数,从而优化性能。
2024-02-20 18:45:00
1124
原创 Java:性能优化细节01-10
在Java程序开发过程中,性能优化是一个重要的考虑因素。常见的误解是将性能问题归咎于Java语言本身,然而实际上,性能瓶颈更多地源于程序设计和代码实现方式的不当。因此,培养良好的编码习惯不仅对提升程序性能至关重要,同时也有助于增强代码的可读性和可维护性。
2024-02-14 18:51:29
1487
原创 GeoTools实战指南: 处理矢量文件中多多边形的MultiPolygon空洞问题
这次的实战记录实际上来自于历史系统设计的问题,在我们公司的一个老项目中使用PostgreSQL来存储矢量数据,geom字段使用的矢量类型指定的是polygon类型。这样就造就了一个问题,数据库只能存储多边形(polygon)的矢量,但在实际的情况中矢量数据(polygon)不止多边形还有多多边形(MultiPolygon)的情况:如空洞和多部件。这次是解决矢量空洞的问题。
2023-11-12 23:27:55
893
1
原创 银河麒麟V10离线安装MongoDB4.0
银河麒麟V10是一款高性能的国产服务器操作系统,适用于各种应用场景。在离线环境下安装MongoDB 是一项重要任务,以支持数据存储和管理需求。MongoDB是一款流行的开源NoSQL数据库,它引入了多文档事务支持,提供了灵活的数据模型、高性能、强大的查询语言和可扩展性,使其成为处理大规模非结构化或半结构化数据的理想选择。此外,MongoDB拥有丰富的工具和社区支持,为开发者提供了全面的解决方案,适用于各种应用场景,已被广泛采用于不同领域的数据管理需求。
2023-10-25 00:56:21
2121
原创 银河麒麟V10离线安装PostgreSQL10+PostGIS2.5
银河麒麟V10,作为国产的操作系统,日益受到业界和企业的关注。这款基于Linux内核的操作系统,不仅强调安全性和稳定性,更为国内用户提供了熟悉的使用环境。而在数据库领域,PostgreSQL已被公认为是一个强大、开源且稳定的关系型数据库系统。当我们考虑到地理信息系统(GIS)的需求,PostGIS成为PostgreSQL的一个重要扩展,提供了对空间数据的高效处理能力。
2023-10-23 02:02:48
1786
原创 VMware安装银河麒麟高级服务器操作系统V10
近期,随着国产信创的持续发热和大众关注度的上升,我们公司决定与时俱进,针对国产技术趋势进行相应的策略调整。为确保我们的业务与技术发展能够紧密结合,我们选定了银河麒麟高级服务器操作系统V10版本作为部署和开发的首选环境。如果有意向了解或使用银河麒麟系统,使用银河麒麟系统需要到官网进行申请,官网地址:https://www.kylinos.cn/
2023-10-19 01:26:56
1337
原创 GeoTools实战指南:使用MapContent加载GeoServer的WMTS服务
在本篇《GeoTools实战指南:使用MapContent加载GeoServer的WMTS服务》中,我们将探索如何利用Java的GeoTools库与GeoServer交互,实现地理信息处理。文章详细阐述了如何读取、显示并将GeoServer上的WMTS服务渲染成PNG图像。从定义目标图层、读取图层样式,到连接WMTS服务、设置视图和最终的渲染,每一步都为读者提供了清晰的代码实例与解释。无论你是GIS新手还是经验丰富的开发者,这篇指南都将为你提供宝贵的参考和启示。
2023-10-04 23:38:07
1389
1
原创 基于Java实现EsriJson、GeoJson互相转换方法
EsriJSON 是由 Esri(Environmental Systems Research Institute, Inc.)定义的一种 JSON 格式,用于表示各种地理和属性数据。Esri 是一个专门从事地理信息系统(GIS)软件和地理数据库管理应用程序的公司。
2023-10-02 14:12:17
883
原创 Centos7部署单机版MongoDB
MongoDB 是一个开源的 NoSQL 数据库,主要用于高性能、高可用性和易扩展性的应用场景。它是由 C++ 编写的,采用文档导向的数据模型,使用 BSON(Binary JSON)格式来存储数据。
2023-09-16 16:50:53
789
原创 中国地图坐标系转换详解:从WGS-84到GCJ-02再到BD-09
WGS84:World Geodetic System 1984,是为GPS全球定位系统使用而建立的坐标系统。通过遍布世界的卫星观测站观测到的坐标建立,其初次WGS84的精度为1-2m,在1994年1月2号,通过10个观测站在GPS测量方法上改正,得到了WGS84(G730),G表示由GPS测量得到,730表示为GPS时间第730个周。
2023-09-10 22:32:48
1752
原创 GeoTools实战指南:使用GeoTools轻松解析和渲染SLD文件
在地理信息系统中,SLD文件允许我们为地图图层定义复杂的渲染样式。但如何正确、高效地解析这些文件并将其应用于矢量图层呢?本文详细介绍了如何使用GeoTools库进行SLD文件的解析和渲染,为读者提供了一种简便的方法,将专业的地图样式轻松地带入他们的GIS项目中。无论你是GIS新手还是资深开发者,这篇指南都能为你提供实用的帮助。
2023-08-29 11:30:00
914
原创 揭秘SLD:如何用样式描述器绘制动人的地图
SLD(Styled Layer Descriptor)是一种基于XML的描述语言,用于描述地图如何在Web地图服务中呈现地理信息。SLD是Open Geospatial Consortium (OGC)定义的一个标准,可以用来描述地理矢量数据和栅格数据的样式和符号化。一个SLD文档定义了多种样式,每种样式对应于一个特定的图层。每种样式都可以包含一个或多个规则,这些规则描述了哪些特定的符号或填充应该用于满足特定条件的地理特征。
2023-08-26 00:45:47
535
原创 GeoTools实战指南:坐标转换的专业工具
GeoTools是一款卓越的坐标转换工具,支持多种坐标系统的精确和高效转换。其自动识别、自定义投影和优化的性能使其成为地理信息系统的理想选择,无论是专业制图、空间分析还是学术研究。开源和可扩展的特性进一步增强了其灵活性,使其能够满足各种地理信息需求。
2023-08-20 23:45:02
834
原创 Centos7单机部署ElasticSearch
Elasticsearch是一种广泛使用的开源搜索引擎,专门为分布式环境设计,但也可以在单机上运行。它使存储、搜索和分析大量数据变得更加容易和高效。此教程将引导你通过在Centos7上单机部署Elasticsearch,涵盖了从系统准备到服务启动的每一个细节。
2023-08-10 21:43:48
1572
原创 高效处理矢量大数据的高可用解决方案
该解决方案旨在处理海量矢量和栅格数据,实现高可用、高性能和高拓展性。通过PostgreSQL集群与PostGIS、GeoServer集群、Redis集群等构建,支持数据存储、分析与可视化。微服务架构保障模块解耦与动态扩容。通过条件和范围查询优化查询速度,从而满足大数据环境下的高效需求。
2023-08-06 00:23:08
598
原创 PostGIS-实时地理数据切片与处理
PostGIS 实现了高效的实时地理数据切片与处理,针对海量矢量数据,提供快速数据定位、抽稀与要素简化等解决方案。通过单机部署,如 PostgreSQL-12+PostGIS-3.0,或集群环境,如 Postgres-XL 和 Citus,能够应对复杂数据处理需求。然而,实时地理数据处理并非仅限于空间分析,还可用于海量数据统计。传统的 `count` 方法效率较低,而基于 PostgreSQL 的高效统计方案,如基于查询执行计划的估算,有望极大提升统计效率。这些技术为地理信息领域的数据处理和分析提供了更加灵
2023-08-05 23:58:53
1050
原创 PostGIS-空间分析与查询范例
在PostGIS中,空间分析与查询是一项关键任务,用于处理地理信息数据。通过合理利用PostGIS的函数,可以高效地进行各种空间操作。从数据查询到几何体操作,如面积、距离和重叠计算,都能通过专业的SQL查询完成。使用geography类型可直接进行面积和距离计算,而geometry类型可能需要进行投影坐标转换。此外,查询附近点、判定是否在一定距离范围内以及范围内数据检索等功能,都能通过PostGIS的功能得以实现。这些示例展示了如何以专业和优化的方式进行空间分析,有助于更好地处理和解释地理信息数据。
2023-08-05 23:45:53
856
原创 PostGIS-矢量空间函数
PostGIS的矢量空间函数是一组强大工具,用于在地理空间数据中执行各种精确的操作。这些函数使用户能够轻松存储、查询和分析矢量数据,如点、线、多边形。从计算空间对象之间的距离,到创建缓冲区、执行交叉分析,再到进行几何变换,这些函数提供了丰富的功能。通过空间索引的支持,矢量空间函数能够高效地处理大量地理数据,为地理信息系统、位置分析和地图制作等领域的应用提供了关键的支持。无论是专业GIS用户还是开发人员,都能从PostGIS的矢量空间函数中获得便捷和准确的地理数据处理能力。
2023-08-05 23:32:14
266
原创 PostGIS-矢量空间数据类型
PostGIS是开源的地理信息系统(GIS)扩展,为PostgreSQL数据库增加了地理空间数据的存储和查询功能。它支持丰富的空间数据类型和函数,可进行距离、面积计算等空间分析。PostGIS还允许用户定义和管理各种地理坐标系,适应不同的地理环境。由于功能强大且开源免费,PostGIS在GIS应用和地理信息处理领域广泛使用。
2023-08-04 08:52:06
443
原创 深入了解 PostgreSQL 扩展插件
在 PostgreSQL 数据库中,扩展插件是极具价值的工具,它们为我们提供了丰富多样的功能增强。本篇博客将深入介绍几个常用的 PostgreSQL 扩展插件,包括 pg_stat_statements、uuid、postgis 以及 postgis_raster。这些插件不仅能够优化数据库性能,还能处理地理信息数据,为数据管理与利用带来更多可能。
2023-08-04 08:34:53
2902
原创 PostgreSQL常用函数
当使用PostgreSQL进行数据操作时,常用的函数包括内置函数(聚合函数)如COUNT、MAX、MIN、AVG和SUM等,用于对字符串或数字数据执行处理。此外,PostgreSQL还提供了丰富的日期/时间函数,用于在日期和时间上进行各种操作,如计算时间差、截取时间精度、提取子域等。这些函数可帮助优化查询和数据处理,提高操作效率,并确保数据的准确性和一致性。总的来说,PostgreSQL的函数库提供了强大的功能,使数据操作变得灵活、便捷且高效。
2023-08-03 08:24:26
3206
1
原创 数据库知识-索引
索引在数据库中扮演着重要的角色,它是加速搜索引擎检索数据的一种特殊表查询。就像字典的目录页,索引指向表中数据,使得查询操作更加高效。通过CREATE INDEX语句,我们可以创建不同类型的索引,包括普通索引、空间索引、唯一索引、局部索引和组合索引等。索引的优势在于加快SELECT查询和WHERE子句的执行,但要注意,它会减慢UPDATE和INSERT操作的速度。因此,在使用索引时需要权衡利弊。避免在小表、频繁更新的表、包含大量NULL值的列或频繁操作的列上使用索引。综上所述,合理的索引设计能够显著提高数据库
2023-08-03 08:00:00
189
原创 数据库知识-查询语句
本文介绍了在 PostgreSQL 中常用的 SQL 查询语句,包括 ORDER BY、GROUP BY、HAVING、DISTINCT、JOIN、UNION、NULL 值处理以及子查询。优化后的内容使读者更容易理解和运用这些查询语句,提高数据库操作的效率与准确性。
2023-08-02 08:38:53
215
原创 PostgreSQL-数据库命令
一个数据库是一个或多个模式的集合,而模式包含表、函数等。因此,完整的逻辑组织结构层次是服务器实例(PostgreSQL Server)、数据库(Database)、模式(Schema)、表(Table),以及某些其他对象(如函数)。一个PostgreSQL服务器实例可以管理多个数据库。当应用程序连接到一个数据库时,一般只能访问该数据库中的数据。
2023-08-02 08:26:16
5290
原创 数据库知识-事务
当处理数据库中的多个操作时,事务是一个关键的概念,它确保这些操作要么全部成功执行,要么全部回滚到初始状态,以保持数据的一致性。在SQL中,事务具有四个关键属性(ACID):原子性、一致性、隔离性和持久性。
2023-08-02 08:22:12
458
Web地图服务实现规范的OpenGIS 样式图层描述符概要1.1.0
2023-08-26
mongodb-linux-x86_64-enterprise-rhel70-4.4.5
2022-01-22
天地图叠加其他wms图层
2018-06-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人