このトピックでは、特定のデータ型のストレージモードを設定するために使用されるST_SetTypeStorage関数について説明します。 この機能を使用すると、一部の種類のデータを行内に保存し、他の種類のデータを行外に保存できます。
構文
bool ST_SetTypeStorage(cstring typeName, cstring storageStrategy, integer size);
パラメーター
パラメーター | 説明 |
typeName | ストレージモードを指定するデータの種類。 サポートされるデータ型には、geometryとgeographyがあります。 |
storageStrategy | 指定するストレージモード。 値をmainに設定します。 |
size | 行内に格納できるバイト数。 |
説明
特定のデータ型のオブジェクトあたりのサイズが大きい場合は、メタデータを行内に格納し、エンティティデータを行外に格納できます。 通常のクエリおよび分析ワークロードの場合、PolarDBは行内メタデータのみを読み取る必要があります。 これにより、ディスク上のI/O操作が削減されます。
sizeパラメータは、行内バイト数を指定します。 このパラメーターを0に設定すると、データは引き続きメインモードで保存されます。 次の表に、さまざまなデータ型に対するこのパラメーターの推奨値を示します。
データ型 | 寸法 | 推奨値 |
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)