我将一些地理空间数据存储在SQL数据库中,因此要使用的明显类型似乎是“ POINT”。但是,仔细检查后,似乎这种类型正在使用大量数据。在获取点时,每个条目使用25个字节,其中许多字节似乎是多余的,并且对于列中的每个项目都是通用的。 有4个字节用于某种ID,然后1个字节用于字节顺序,然后另外4个完整字节用于描述数据类型的整数(这是一个Point,我们已经知道),最后是两个双精度坐标值。对于大型数据库,这似乎是一种浪费。
数据库真正是内部存储值的方式吗?数据似乎多余且过多,并且也没有双字对齐,我认为这对性能没有好处。 MySQL是否会在内部存储这25个字节的记录,并且仅在响应选择查询时填充数据(仍然很差,但可能还不那么差)? 如果是这样,两个单独的浮点数/双精度数是否更合适?使用此类型还有其他优势吗?