solr4.7新建core

Solr裏面的core就像數據庫裏面的一個表,用來管理索引和相關配置。

 

一、使用示例core

下載的solr完整包裏面solr-4.7.0\example\multicore這個文件夾下面有2個示例core;分別是core0和core1;如下圖:


隨便拷貝個到 $SOLR_HOME$,$SOLR_HOME$在什麼地方配置的呢,就是你solr的web服務裏面的web.xml裏面配置,如下面配置,其中:D:\workspace\lucene\solr_home就是我的$SOLR_HOME$。

[html] view plaincopy在CODE上查看代碼片派生到我的代碼片
  1. <env-entry>  
  2.      <env-entry-name>solr/home</env-entry-name>  
  3.      <env-entry-value>D:\workspace\lucene\solr_home</env-entry-value>  
  4.      <env-entry-type>java.lang.String</env-entry-type>  
  5.  </env-entry>  

這裏我們拷貝core0到我們的$SOLR_HOME$。

現在我們看看core0下面都有什麼,這時候裏面就一個conf文件夾,什麼都沒有。在core0/conf裏面也就2個xml文件,分別是schema.xml、solrconfig.xml;

schema.xml定義了core0的field類型和名稱,field就像數據庫的字段,field的類型就像數據庫的字段類型,field的名稱就像數據庫的字段名稱;

solrconfig.xml描述了core0管理配置,比如指定索引文件的存儲位置、日誌文件的存儲位置、使用什麼管理器等。

啓動solr服務,進入solr的管理界面,選中core Admin欄,如下圖:

我們點擊Add Core按鈕,在彈出的界面中把name和instanceDir的值改爲core0,也就是我們上面拷貝到$SOLR_HOME$的那個core0文件夾的名稱,點擊那個藍色的Add Core按鈕。

我們成功在solr服務器新加了一個core。

現在我們再回到$SOLR_HOME$/core0,發現下面多了一個data文件夾和一個core.properties文件。這2個東西就是我們在solr的管理頁面操作的時候solr自己給我們創建的。我們爲什麼在管理頁面能夠看到core0,solr服務如何知道$SOLR_HOME$下面有個core0,其實還是core.properties在發揮作用。其實我們可以通過手動寫core.properties來完成新建core。

core.properties

[html] view plaincopy在CODE上查看代碼片派生到我的代碼片
  1. #Written by CorePropertiesLocator  
  2. #Sat Mar 15 15:49:01 CST 2014  
  3. name=core0  
  4. config=solrconfig.xml  
  5. schema=schema.xml  
  6. dataDir=data  

二、手動新建core

在$SOLR_HOME$新建clj_core文件夾,然後在clj_core文件夾下面再建立一個conf文件夾,我們把示例core0裏面的conf下面的2個xml文件拷貝到新建的clj_core/conf文件夾下面;我們在clj_core下面新建一個core.properties文件配置如下:

[html] view plaincopy在CODE上查看代碼片派生到我的代碼片
  1. name=core1  
  2. config=solrconfig.xml  
  3. schema=schema.xml  
  4. dataDir=data  

重啓solr服務,我們便在solr的管理頁面看到我們新建的core1了。注意一點我們的core的名稱和core的文件夾可以不一樣,但是最好定義爲一樣的,方便管理。像上面我們手動建立的core1,其實我們的core文件夾名稱是clj_core,這樣的設計對維護很不友好,最好把文件夾名稱改爲core1或者把core的名稱改爲clj_core.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章