Descrição:
Temos uma tabela no PostgreSQL 9.3 e migramos (dados & estrutura) para o Oracle 11.0.2.4. Aqui está a nossa tabela:
create table cstb_temp_log
(
id NUMBER PRIMARY KEY,
log_info data_type(max_length) -- max_length < 10000
)
-- log_info : data is inserted/updated every second (**)
-- data_type: may be we can use "clob" because max_length of varchar2 in Oracle is 4000 (SQL).
-- cstb_temp_log : size = 1 GB, row = 400000
Queremos indexar e pesquisar "texto" na coluna log_info, então tentamos o Oracle Text 11g .
Problemas:
Se usarmos "data_type" é "clob", podemos usar "índice de contexto" e ele deve sincronizar após DML . (não podemos usar desta forma por causa de (**))
Se houver, como podemos indexar e pesquisar na coluna "log_info" (max_length <10000 e os dados são alterados a cada segundo)?
Acho que é uma boa sugestão feita por @raj mudar para 12C, já que 11g está se aproximando do EOSL. Se você está pensando em usar o CLOB com o Oracle Text Search, considere abaixo.
Manutenção de índices e sincronização No 11g, os usuários podem especificar na criação do índice a preferência de atualização do índice: manualmente, no commit ou em intervalos regulares. Os usuários também podem especificar um índice de texto transnacional, onde os documentos são pesquisáveis imediatamente após serem inseridos ou atualizados. Observe que o tipo de índice de catálogo - projetado especificamente para pequenos trechos de texto normalmente encontrados em catálogos de eBusiness - é sempre transacional e não precisa de sincronização.
Por favor, leia: http://www.oracle.com/technetwork/testcontent/11goracletexttwp-133192.pdf (Página 12)