2.6 LOBを使用したシャーディング
LOBはシャード環境で使用できます。この項では、シャード表のLOBをサポートするインタフェースについて説明します。
次のインタフェースがサポートされています。
- 問合せおよびDML文
- LOBに関連するシャード間の問合せがサポートされています。
- 複数のシャードを含むDML文はサポートされていません。この動作は、スカラー列に似ています。
- コーディネータからは、単一のシャードを含むDML文がサポートされます。
- シャードから選択したロケータは、同じシャードにバインド値として渡すことができます。
OCILobシャーディング環境では、BFILE関連を除くすべてのOCILob APIがサポートされていますが、いくつかの制限事項があります。
コーディネータでは、LOBがシャード表から取得された場合、LOB記述子の
OCI_ATTR_LOB_REMOTE属性はTRUEを返します。制限事項: 入力として2つのロケータを取るAPI (
OCILobAppend、OCILobCompareなど)の場合、両方のロケータを同じシャードから取得する必要があります。ロケータを異なるシャードから取得すると、エラーが発生します。-
DBMS_LOBシャーディング環境では、BFILE関連を除くすべてのDBMS_LOB APIがサポートされていますが、いくつかの制限事項があります。コーディネータでは、LOBがシャード表から取得された場合、
DBMS_LOB.isremoteはTRUEを返します。制限事項: 入力として2つのロケータを取るAPI (
DBMS_LOB.appendやDBMS_LOB.compareなど)の場合、両方のロケータを同じシャードから取得する必要があります。ロケータを異なるシャードから取得すると、エラーが発生します。
関連項目:
シャード表親トピック: 永続LOB