Skip to Main Content

Database Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Changing USER_DATASTORE of an existing text index with MULTI_COLUMN_DATASTORE will have any advantag

MoneDRNov 8 2019 — edited Nov 8 2019

Hello,

I am using Oracle12.2 and I have one oracle text index defined for a dummy column that concatenate 2 VARCHAR2 columns of the same table. The index creation use USER_DATASTORE and has defined an user datastore procedure. No filter is defined for the text index. It will be any gain (performance/resources) if I will change the text index to use the MULTI_COLUMN_DATASTORE instead of USER_DATASTORE? (there are 5 text indexes on database that are in this situation).

Thank you very much for your help

Current code:

CREATE OR REPLACE PROCEDURE T_CONCAT (p_rowid IN ROWID, p_clob IN OUT CLOB) AS v_clob CLOB;

BEGIN

    FOR c1 IN (SELECT COL1, COL1 || ' ' || COL2  AS data FROM TABLE_T WHERE ROWID = p_rowid)

    LOOP

        v_clob := v_clob || c1.data;

       

    END LOOP;

    p_clob := v_clob;

END;

/

ctx_ddl.create_preference('TABLE_T_DATASTORE', 'USER_DATASTORE');

ctx_ddl.set_attribute('TABLE_T_DATASTORE', 'PROCEDURE', 'T_CONCAT');

CREATE INDEX TEXT_IDX_T ON TABLE_T (CTXSEARCH)

INDEXTYPE IS CTXSYS.CONTEXT

PARAMETERS ('DATASTORE TABLE_T_DATASTORE STOPLIST TSTOP LEXER TLEX SYNC (ON COMMIT)') PARALLEL (DEGREE DEFAULT INSTANCES DEFAULT);

Comments

Post Details

Added on Nov 8 2019
2 comments
238 views