我想存储(海量存储)点列表;更准确地说,它是一个列表,其中包含许多未定义(但不超过 200)的坐标组,其中每组代表一个区域(一个矩形)。例如,这个区域可以是 Rect
结构。
对我来说最好的方法是什么:
按重要性排序:
- 存储内存中占用的空间(显然越少越好)。
- 轻松修改文件(最好能够识别和更改单个坐标,而不是因更改而重写整个文件)。
- 快速阅读。
- 加快写作速度。
我已经对如何设置工作有了一些想法(例如由自定义类管理的简单文本格式、序列化、访问数据库(我只能使用访问数据库),...),但是什么是最佳解决方案?
最佳答案
这正是大多数 GIS 存储格式所解决的问题。有许多不同的格式可用,每种格式都有不同的优点和缺点。
OGR项目支持many formats对于 GIS 风格的矢量数据,几乎所有这些都支持存储具有您所追求的大部分特征的区域特征。这里的“较新”之一是 ESRI's File Geodatabase格式,.NET 通过 OGR 的 C# 包装器支持该格式。
或者,许多数据库系统(例如 SQL Server、PostgreSQL、Oracle 等)都支持将空间数据直接存储在数据库中。根据您的需求,这可能有点“重量级”,但将支持非常高的性能和可扩展性。
关于.net - 存储点列表的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11001080/