设置数据类型的存储模式,使其支持行内行外分开存储。
语法
bool ST_SetTypeStorage(cstring typeName, cstring storageStrategy, integer size);
参数
参数名称 | 描述 |
---|---|
typeName | 数据类型名称,例如geometry、geography等。 |
storageStrategy | 存储模式,仅支持main。 |
size | 存储在行内部分的字节数。 |
描述
当数据类型的单个对象比较大时,可以使用元数据信息存储在行内,对象实体信息存储在行外的存储模式,平常查询和分析只需要取出行内的元数据部分,从而减少磁盘I/O。
size代表存储在行内的字节数,0表示仍按原来的main模式存储,不同数据类型取值情况如下:
数据类型名称 | 维度 | 建议值 |
---|---|---|
geometry | 2d(x,y) | 24 |
3d(x,y,z)、3dm(x,y,m) | 32 | |
4d(x,y,z,m) | 40 | |
geography | 2d(x,y) | 32 |
示例
Select ST_SetTypeStorage('geometry','main', 41);
st_settypestorage
-------------------
t
(1 row)