oracle全文索引之SECTION GROUP_3_HTML_SECTION_GROUP
雖然BASIC_SECTION_GROUP 已經可以解決很多基本的節搜尋問題,但是Oracle還是推薦對於HTML文件使用專門定義的HTML_SECTION_GROUP屬性。這是由於 HTML文件具有很多不規範的表示方法,使用HTML_SECTION_GROUP能夠更好的識別HTML文件的機構。另 外,BASIC_SECTION_GROUP不支援不匹配的括號、註釋表示和屬性等。
下面透過一個簡單的例子來看一下HTML_SECTION_GROUP和BASIC_SECTION_GROUP的區別。HTML_SECTION_GROUP支援META標籤中的NAME/CONTENT屬性對的查詢,下面看具體的例子。
SQL> CREATE TABLE T (ID NUMBER, DOCS VARCHAR2(1000));
表已建立。
SQL> INSERT INTO T VALUES (1, 'README.HTML');
已建立 1 行。
SQL> COMMIT;
提交完成。
SQL> CONN CTXSYS/CTXSYS@YANGTK
已連線。
SQL> BEGIN
2 CTX_DDL.CREATE_PREFERENCE('TEST_FILE', 'FILE_DATASTORE');
3 CTX_DDL.SET_ATTRIBUTE('TEST_FILE', 'PATH', 'F:');
4 CTX_DDL.CREATE_SECTION_GROUP('TEST_BASIC', 'BASIC_SECTION_GROUP');
5 CTX_DDL.ADD_FIELD_SECTION('TEST_BASIC', 'MTAG', 'META@HTML');
6 CTX_DDL.CREATE_SECTION_GROUP('TEST_HTML', 'HTML_SECTION_GROUP');
7 CTX_DDL.ADD_FIELD_SECTION('TEST_HTML', 'MTAG', 'META@HTML');
8 END;
9 /
PL/SQL 過程已成功完成。
下面看一下README.HTML文件的內容:
Oracle Ultra Search provides a sample implementation of user defined data source Upon invocation this sample agent connects to a specified Oracle database and The sample agent are fully functional and can be customized to adapt to other Complete and comprehensive documentation on agent API is provided in the following
Oracle Ultra Search Sample Crawler Agent Readme
Table of Contents
1. Introduction
2. Sample agent files
3. Setting up the Sample Crawler Agent1. Introduction
agent which uses the Ultra Search agent API. The purpose of this sample is to
provide a concrete illustration on the usage of the agent APIs.
retrieve the contents of a table for the crawler to collect and index.
database based data source. This agent performs the following task:
document:
觀察上面的META標籤,裡面包含NAME/CONTENT屬性對,可以根據例子的方式,基於META中名稱的值建立FIELD,來搜尋CONTENT的值。
SQL> CONN YANGTK/YANGTK@YANGTK
已連線。
SQL> CREATE INDEX IND_T_DOCS ON T(DOCS) INDEXTYPE IS CTXSYS.CONTEXT
2 PARAMETERS('DATASTORE CTXSYS.TEST_FILE FILTER CTXSYS.NULL_FILTER
3 SECTION GROUP CTXSYS.TEST_BASIC');
索引已建立。
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'DATABASE') > 0;
ID DOCS
---------- ----------------------------------------
1 README.HTML
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'SECTION WITHIN MTAG') > 0;
未選定行
SQL> DROP INDEX IND_T_DOCS;
索引已丟棄。
SQL> CREATE INDEX IND_T_DOCS ON T(DOCS) INDEXTYPE IS CTXSYS.CONTEXT
2 PARAMETERS('DATASTORE CTXSYS.TEST_FILE FILTER CTXSYS.NULL_FILTER
3 SECTION GROUP CTXSYS.TEST_HTML');
索引已建立。
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'DATABASE') > 0;
ID DOCS
---------- ----------------------------------------
1 README.HTML
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'SECTION WITHIN MTAG') > 0;
ID DOCS
---------- ----------------------------------------
1 README.HTML
從這個例子可以看出,對於HTML文件來說,使用HTML_SECTION_GROUP可以擁有更多的功能。
最後提醒一下,無論是FIELD_SECTION還是ZONE_SECTION,表示文件的TAG標籤都是大小寫敏感的,其大小寫需要和原文中匹配。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/271283/viewspace-1022450/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle全文索引之SECTION GROUP_6_PATH_SECTION_GROUPOracle索引
- oracle全文索引之SECTION GROUP_5_AUTO_SECTION_GROUPOracle索引
- oracle全文索引之SECTION GROUP_4_XML_SECTION_GROUPOracle索引XML
- oracle全文索引之SECTION GROUP_2_BASIC_SECTION_GROUPOracle索引
- oracle全文索引之SECTION GROUP_1_NULL_SECTION_GROUPOracle索引Null
- oracle全文索引之STORAGE PREFERENCEOracle索引
- oracle全文索引之WORDLIST PREFERENCEOracle索引
- oracle全文索引之幾個關鍵表Oracle索引
- oracle全文索引之commit與DML操作Oracle索引MIT
- oracle全文索引之如何實現查詢Oracle索引
- oracle全文索引之STOPLIST_4_MULTI_STOPLISTOracle索引
- oracle全文索引之STOPLIST_3_DEFAULT_STOPLISTOracle索引
- oracle全文索引之STOPLIST_2_EMPTY_STOPLISTOracle索引
- oracle全文索引之STOPLIST_1_BASIC_STOPLISTOracle索引
- oracle全文索引之LEXER_4_MULTI_LEXEROracle索引
- oracle全文索引之LEXER_3_DEFAULT_LEXEROracle索引
- oracle全文索引之LEXER_2_CHINESE_LEXEROracle索引
- oracle全文索引之LEXER_1_BASIC_LEXEROracle索引
- oracle全文索引之FILTER_4_PROCEDURE_FILTEROracle索引Filter
- oracle全文索引之FILTER_3_FORMAT_COLUMNOracle索引FilterORM
- oracle全文索引之FILTER_1_NULL_FILTEROracle索引FilterNull
- oracle全文索引之datastore_6_NESTED_DATASTOREOracle索引AST
- oracle全文索引之datastore_5_detail_datastoreOracle索引ASTAI
- oracle全文索引之datastore_4_URL_DATASTOREOracle索引AST
- oracle全文索引之datastore_3_FILE_DATASTOREOracle索引AST
- oracle全文索引之datastore_1_DIRECT_DATASTOREOracle索引AST
- Oracle:全文索引Oracle索引
- Oracle AWR Top SQL sectionOracleSQL
- oracle全文索引之配置全文檢索環境Oracle索引
- oracle 之全文索引表的分割槽交換案例Oracle索引
- oracle全文索引之About_INDEX_THEMES操作Oracle索引Index
- oracle全文索引之STOPLIST_ CTXCAT 索引_INDEX SETOracle索引Index
- oracle全文索引之datastore_2_MULTI_COLUMN_DATASTOREOracle索引AST
- Oracle的全文索引Oracle索引
- ZT oracle全文索引Oracle索引
- oracle全文索引之FILTER_2_INSO_FILTEROracle索引Filter
- oracle 全文索引的配置Oracle索引
- MongoDB之索引(全文索引)MongoDB索引