Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

157 lines
14 KiB

  1. <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
  2. <html>
  3. <head>
  4. <title>Microsoft Index Server Guide: Catalogs</title>
  5. <meta name="FORMATTER" content="Microsoft FrontPage 1.1">
  6. <meta name="GENERATOR" content="Microsoft FrontPage 1.1">
  7. </head>
  8. <body bgcolor="#FFFFFF">
  9. <!--Headerbegin--><p align=center><a name="TOP"><img src="onepix.gif" alt="Space" align=middle width=1 height=1></a> <a href="default.htm#Top"><img src="toc.gif" alt=" Contents" align=middle border=0 width=89 height=31></a> <a href="sechelp.htm"><img src="previous.gif" alt="Previous" align=middle border=0 width=32 height=31></a> <a href="reghelp.htm"><img src="next.gif" alt="Next" align=middle border=0 width=32 height=31></a> </p>
  10. <hr>
  11. <!--Headerend--><p align=left><a name="Catalogs"><font size=6><strong>Catalogs</strong></font></a></p>
  12. <p align=left><!--Chaptoc--></p>
  13. <blockquote>
  14. <p><a href="cathlp.htm#TheDefaultCatalog">The Default Catalog</a> <br>
  15. <a href="cathlp.htm#multiple">Multiple Catalogs</a> <br>
  16. <a href="cathlp.htm#MovingandRemovingaCatalog">Moving and Removing a Catalog</a> <br>
  17. <a href="cathlp.htm#PhysicalProperties">Physical Properties</a> <br>
  18. </p>
  19. </blockquote>
  20. <hr>
  21. <!--ChaptocEnd--><p>A <em>catalog</em> is the highest-level unit of organization in Microsoft Index Server. Each catalog is a completely self-contained unit,
  22. containing an index and cached properties for one or more scopes (virtual roots). In this version of Index Server, queries
  23. cannot span multiple catalogs.</p>
  24. <hr>
  25. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="TheDefaultCatalog">The Default Catalog</a></h1>
  26. <p>The initial catalog location is determined during setup and stored in the <a href="reghelp.htm#IsapiDefaultCatalogDirectory">IsapiDefaultCatalogDirectory</a> registry entry. If the
  27. <a href="idq-vars.htm#CiCatalog"><strong>CiCatalog</strong></a> parameter is not specified in an .idq file, then this default catalog is used. Intially, the default catalog contains an
  28. index of all virtual roots with read access, but the scope of the catalog can be <a href="adminhlp.htm#AddVRoot">modified</a> through administrative pages.</p>
  29. <hr>
  30. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="multiple">Multiple Catalogs</a></h1>
  31. <p>There are two reasons to create more than one catalog: to distribute queries, and to support virtual servers. Because it is
  32. impossible to create a query that spans more than one catalog, careful consideration of the consequences must be made before
  33. creating multiple catalogs. The ability to query &#147;everything&#148; is lost. Use of default catalog support is also impaired: no support
  34. for multiple IP address-specific <em>default</em> catalogs is provided.</p>
  35. <p>Physically dividing the set of virtual roots between a number of catalogs will improve query performance, but only if most
  36. queries are restricted to a subscope (one or more virtual roots) of the Web site. This improvement occurs because the number
  37. of false hits (hits outside the query scope) will be reduced.</p>
  38. <h3>Creating an Additional Catalog</h3>
  39. <h4>To create a catalog</h4>
  40. <ol>
  41. <li>Create a directory named Catalog.wci at the desired location. </li>
  42. <li>Set the appropriate <a href="sechelp.htm#CatalogPerm">catalog permissions</a>.</li>
  43. <li>Then make appropriate modifications to the <a href="idq-vars.htm#CiCatalog"><strong>CiCatalog</strong></a> parameter of .idq files to point to that location.</li>
  44. </ol>
  45. <p>For example, if you put the catalog in D:\Vdom2\Catalog.wci, the <strong>CiCatalog</strong> is set to D:\Vdom2. The <strong>CiCatalog</strong>
  46. specification should not include the Catalog.wci directory itself. The initial query against the catalog will start the indexing
  47. process. You may want to <a href="adminhlp.htm#AddVRoot">modify the set of virtual roots</a> covered by the new catalog.</p>
  48. <h3>Associating a Catalog with a Virtual Server</h3>
  49. <p>By default, a catalog is not associated with a specific virtual server, and only virtual roots <em>without</em> a specific IP address are
  50. added to the catalog. To associate a catalog with a specific virtual server, add an entry under the <a href="reghelp.htm#MaxFilesizeMultiplier">IsapiVirtualServerCatalogs</a>
  51. subkey. The name of the value is the IP address of the virtual server, and the value is the catalog location. For example, a
  52. catalog located in the root of drive G: that contains virtual roots accessible only from IP address 123.45.67.89 would look
  53. like: ...\CurrentControlSet\Control\ContentIndex\IsapiVirtualServerCatalogs\123.45.67.89 = G:\. After making this registry
  54. change, stop and restart Internet Information Server. Then, issue a query against the catalog for 123.45.67.89.</p>
  55. <p>The previous procedure will add virtual roots (specific to the indicated virtual server) to the set of scopes covered by the new
  56. catalog. All virtual roots without a specific IP address will be available as well. Note that by default, common roots are
  57. indexed in all catalogs. Also, be sure to update the .idq and .ida files if you have changed them.</p>
  58. <h3>Multiple Catalogs for Multiple Virtual Servers</h3>
  59. <p>The following example shows how to set up multiple catalogs for a configuration containing multiple virtual servers. </p>
  60. <p>In the following example, assume that you want to set up multiple catalogs for the following scenario:</p>
  61. <ul>
  62. <li><p align=left>The IP address of the virtual server is 123.45.67.89.</p>
  63. </li>
  64. <li><p align=left>The following virtual roots are set up for 123.45.67.89</p>
  65. <table border=1 cellpadding=5 cellspacing=0 width=75%>
  66. <tr><th align=left valign=bottom width=10%><font size=2>Virtual Root </font></th><th align=left valign=bottom width=33%><font size=2>Physical Path</font></th><th align=left valign=bottom width=15%><font size=2>Permissions</font></th></tr>
  67. <tr><td valign=top width=10%><font size=2>/</font></td><td valign=top width=33%><font size=2>D:\Vserver2\Root </font></td><td valign=top width=15%><font size=2>Read</font></td></tr>
  68. <tr><td valign=top width=10%><font size=2>/Scripts1</font></td><td valign=top width=33%><font size=2>D:\Vserver2\Scripts</font></td><td valign=top width=15%><font size=2>Execute</font></td></tr>
  69. <tr><td valign=top width=10%><font size=2>/Reports</font></td><td valign=top width=33%><font size=2>D:\Vserver2\Reports</font></td><td valign=top width=15%><font size=2>Read </font></td></tr>
  70. </table>
  71. </li>
  72. </ul>
  73. <ul>
  74. <li><p align=left>Microsoft Index Server data will be put in the directory D:\Vserver2_index. Better performance can be achieved by
  75. having Microsoft Index Server data on a different drive than the drive that contains the corpus, but for illustration
  76. purposes this example puts it in the same drive.</p>
  77. </li>
  78. <li><p align=left>Sample files installed by Microsoft Index Server will be copied and modified to work with the virtual server
  79. 123.45.67.89.</p>
  80. </li>
  81. </ul>
  82. <h4>To set up multiple catalogs for multiple virtual servers</h4>
  83. <ol>
  84. <li><p align=left>Create a directory D:\Vserver2_index\Catalog.wci . If D: is a Windows&#160;NT File System (NTFS) drive, set an ACL on
  85. it giving full access to SYSTEM and Administrators accounts only. For the highest security, Microsoft recommends
  86. installing Index Server data on an NTFS drive.</p>
  87. </li>
  88. <li><p align=left>Add an entry in the registry under the key<br>
  89. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\contentindex\<br>
  90. ISAPIVirtualServerCatalogs\123.45.67.89=d:\vserver2_index<br>
  91. <br>
  92. Note that key value does not include the directory Catalog.wci.</p>
  93. </li>
  94. <li><p align=left>Copy all the query forms(.htm) files from the default installation to D:\Vserver2\Root\Samples\Search. (Create the
  95. directory hierarchy if necessary.)</p>
  96. </li>
  97. <li><p align=left>Copy all the query script and administration files (.idq , .ida, and .htx) files from the default installation to
  98. D:\Vserver2\Scripts\Samples\Search. (Create the directory hierarchy if necessary.)</p>
  99. </li>
  100. <li><p align=left>Modify the <strong>CiCatalog</strong> variable specification in all the .idq and .ida files in D:\Vserver2\Scripts\Samples\Search to point
  101. to D:\Vserver2_index. Make sure it does not have any comments in it. (It should look like
  102. <code>CiCatalog=d:\vserver2_index</code>. Again note that catalog.wci is not included in the specification).</p>
  103. </li>
  104. <li><p align=left>Modify the <strong>CiTemplate</strong> parameter in the .idq and .ida files to point to /Scripts1/samples/search. Note the change from
  105. &#147;Scripts&#148; to &#147;Scripts1&#148; for the virtual root.</p>
  106. </li>
  107. <li><p align=left>Modify the .htm files in D:\Vserver2\Root\Samples\Search to point to the appropriate .idq/.ida files. You may have to
  108. change the path from &#147;/Scripts/Samples/Search&#148; to &#147;/Scripts1/Samples/Search&#148;.</p>
  109. </li>
  110. <li><p align=left>Issue a query by connecting to http://123.45.67.89/samples/search/query.htm. This will start indexing for the virtual
  111. server 123.45.67.89</p>
  112. </li>
  113. </ol>
  114. <p>You can of course customize the query forms to restrict access to specific scopes. You may also have to modify the
  115. administration forms separately.</p>
  116. <hr>
  117. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="MovingandRemovingaCatalog">Moving and Removing a Catalog</a></h1>
  118. <p>It is safe to move a Catalog.wci directory to a new location. Similarly, to delete a catalog you need only delete the Catalog.wci
  119. directory. It is a good idea to update the relevant registry entries (<a href="reghelp.htm#IsapiDefaultCatalogDirectory">IsapiDefaultCatalogDirectory</a> and
  120. <a href="reghelp.htm#MaxFilesizeMultiplier">IsapiVirtualServerCatalogs</a>) as well. Internet Information Server or Peer Web Services must be stopped before you remove
  121. or move catalogs. It is recommended that you review all your .idq files to make sure there are no references to nonexistent
  122. catalogs.</p>
  123. <hr>
  124. <h1><a href="#TOP"><img src="up.gif" alt="To Top" align=middle border=0 width=14 height=11></a><a name="PhysicalProperties">Physical Properties</a></h1>
  125. <p>The catalog is physically stored in a user-specified location. A directory named Catalog.wci is created there. Index server
  126. creates a number of files in this directory, including: </p>
  127. <div align=left>
  128. <table border=1 cellpadding=5 cellspacing=0 width=100%>
  129. <tr><th align=left valign=bottom width=15%><font size=2>File</font></th><th align=left valign=bottom width=85%><font size=2>Purpose</font></th></tr>
  130. <tr><td valign=top width=15%><font size=3><tt>000</tt><em><tt>nnnn</tt></em><tt>.prp</tt></font></td><td valign=top width=85%><font size=2>Holds cached properties. The name is the version of the property cache. Each modification to the property-cache
  131. schema increments this number by one.</font></td></tr>
  132. <tr><td valign=top width=15%><font size=3><tt>0001</tt><em><tt>nnnn</tt></em><tt>.ci</tt></font></td><td valign=top width=85%><a href="indexhlp.htm#ShadowIndex"><font size=2>Shadow</font></a><font size=2> and </font><a href="indexhlp.htm#MasterIndex"><font size=2>master</font></a><font size=2> indexes. Each index has a unique number <em>nnnn</em>.</font></td></tr>
  133. <tr><td valign=top width=15%><font size=3><tt>0001</tt><em><tt>nnnn</tt></em><tt>.dir</tt></font></td><td valign=top width=85%><font size=2>Directory used to quickly search the similarly named shadow index or master index.</font></td></tr>
  134. <tr><td valign=top width=15%><font size=3><tt>cicat.hsh</tt></font></td><td valign=top width=85%><font size=2>Quickly converts a path into an internal identifier used throughout the index.</font></td></tr>
  135. <tr><td valign=top width=15%><font size=3><tt>CiCL0001.*</tt></font></td><td valign=top width=85%><font size=2>Contains a log of files that need to be </font><a href="filtrhlp.htm"><font size=2>filtered</font></a><font size=2>.</font></td></tr>
  136. <tr><td valign=top width=15%><font size=3><tt>CiFL</tt><em><tt>nnnn</tt></em><tt>.*</tt></font></td><td valign=top width=85%><font size=2>Maps documents to the most recent index for a given document.</font></td></tr>
  137. <tr><td valign=top width=15%><font size=3><tt>CiPS0000.*</tt></font></td><td valign=top width=85%><font size=2>Describes the record format of the property cache.</font></td></tr>
  138. <tr><td valign=top width=15%><font size=3><tt>CiPT0000.*</tt></font></td><td valign=top width=85%><font size=2>Maps ActiveX property descriptors to internal identifier.</font></td></tr>
  139. <tr><td valign=top width=15%><font size=3><tt>CiSL0001.*</tt></font></td><td valign=top width=85%><font size=2>Contains a log of in-use files that need to be </font><a href="filtrhlp.htm"><font size=2>filtered</font></a><font size=2>.</font></td></tr>
  140. <tr><td valign=top width=15%><font size=3><tt>CiSP0000.*</tt></font></td><td valign=top width=85%><font size=2>Contains a list of physical scopes covered by this index.</font></td></tr>
  141. <tr><td valign=top width=15%><font size=3><tt>CiST0000.*</tt></font></td><td valign=top width=85%><font size=2>Maps security </font><a href="glossary.htm#ACL"><font size=2>Access Control Lists (ACLs)</font></a><font size=2> to internal identifier.</font></td></tr>
  142. <tr><td valign=top width=15%><font size=3><tt>CiVP0000.*</tt></font></td><td valign=top width=85%><font size=2>Contains a mapping between physical and virtual paths.</font></td></tr>
  143. <tr><td valign=top width=15%><font size=3><tt>Index.*</tt></font></td><td valign=top width=85%><font size=2>Master list of indices.</font></td></tr>
  144. </table>
  145. </div>
  146. <p>The Catalog.wci directory, and everything under it, will not be indexed by Index Server even if it is accessible through a virtual
  147. root of the Web site.</p>
  148. <!--Footerbegin--><hr>
  149. <p align=center><a href="default.htm#Top"><img src="toc.gif" alt=" Contents" align=middle border=0 width=89 height=31></a> <a href="sechelp.htm"><img src="previous.gif" alt="Previous" align=middle border=0 width=32 height=31></a> <a href="#TOP"><img src="up_end.gif" alt="To Top" align=middle border=0 width=32 height=31></a> <a href="reghelp.htm"><img src="next.gif" alt="Next" align=middle border=0 width=32 height=31></a></p>
  150. <hr>
  151. <p align=center><em>&#169; 1996 by Microsoft Corporation. All rights reserved.<!--Footerend--></em></p>
  152. </body>
  153. </html>