Solr01-Solr概述及Solr文件說明

来源:https://www.cnblogs.com/shoufeng/archive/2018/08/12/9463894.html
-Advertisement-
Play Games

Solr是Apache軟體基金組織旗下的一個頂級開源項目, 是**基於Lucene的全文搜索服務**, 是一個獨立的企業級搜索應用伺服器, 可以獨立運行於Jetty, Tomcat等Web容器中. 使用Solr可以很方便地實現全文索引和搜索等一系列功能. ...


目錄

1 Solr概述

1.1 Solr是什麼

Solr是Apache軟體基金組織旗下的一個頂級開源項目, 是基於Lucene的全文搜索服務, 是一個獨立的企業級搜索應用伺服器, 可以獨立運行於Jetty, Tomcat等Web容器中.

使用Solr可以很方便地實現全文索引和搜索功能, 比如:

1.1.1 創建索引

客戶端可以通過HTTP的post方法向Solr伺服器發送一個描述Field及其內容的XML文檔(或JSON格式的串), Solr伺服器根據XML文檔添加、更新、刪除索引;

1.1.2 搜索索引

客戶端可通過HTTP的get方法向Solr伺服器發送請求, 對Solr伺服器返回的XML、JSON格式的結果進行解析.

Solr不提供構建頁面UI的功能, 它提供了一個管理頁面, 通過管理頁面可以查詢Solr的配置和運行情況.

1.2 Solr與Lucene的區別

Lucene是一個開放源代碼的全文檢索引擎工具包, 提供了完整的索引引擎和查詢引擎功能, 目的是為開發人員提供一個簡單易用的工具包, 以方便在目標系統中實現全文檢索的功能, 或以Lucene為基礎構建全文檢索應用. 它不是一個完整的服務, 不能獨立運行.

Solr的目標是打造一款企業級的搜索引擎系統. 它是基於Lucene構建的全文檢索服務, 是一個完整的服務, 可獨立運行於Web容器中.

通過Solr可以快速構建企業級的搜索引擎, 也可高效地完成站內搜索功能.

圖片

2 Solr文件說明

2.1 Solr的目錄結構

  • 下載Solr安裝包:

    下載地址: http://archive.apache.org/dist/lucene/solr/

    說明: Solr與Lucene在3.x版本後開始同步更新, 這裡使用4.10.4版本(從Solr 5.x開始要求JDK必須是1.8及以上).

  • 目錄說明:
    圖片

    | bin: Solr的運行腳本
    | contrib: Solr的擴展jar包, 用於增強Solr功能
    | dist: build過程中生成的war和jar文件, 以及其他依賴文件
    | docs: Solr的API文檔
    | example: Solr工程的示例目錄
    ​ --- | solr: 標準的SolrHome, 包含一個預設的SolrCore(即collection1)
    ​ --- | multicore: 包含了在Solr的multicore中設置的多個Core目錄
    ​ --- | webapps: 包含了一個solr.war, 該war包可作為Solr的運行示例工程(這裡部署的Solr服務就使用它)
    | licenes: Solr相關的許可信息

2.2 其他常用概念說明

SolrHome目錄是Solr服務運行的主目錄.

一個SolrHome目錄可包含多個SolrCore.

SolrCore目錄中包含了運行Solr實例的配置文件和數據文件(日誌和索引文件).

每一個SolrCore提供獨立的索引和搜索服務.

2.3 創建基礎文件目錄

  • 建立work目錄(作為SolrHome根目錄);

  • 將Solr解壓目錄中的solr目錄, 拷貝至work目錄下;

    此時SolrHome(即solr, 為方便可改名為solrhome)和SolrCore(即collection1)的目錄結構如下:
    圖片

    說明:

    conf: SolrCore運行的配置信息;

    data: SolrCore存放日誌和索引文件的目錄;

    core.properties: SolrCore的信息, 如名稱等, 在Solr運行時創建.

2.4 solrconfig.xml文件說明

說明: solrconfig.xml文件位於SolrCore的conf目錄下, 通過solrconfig.xml可以配置SolrCore實例的相關信息, 可不作修改. 企業項目開發中需要修改三個常用的標簽: lib標簽、datadir標簽、requestHandler標簽.
詳細說明請參見: Solr02-solrconfig.xml文件詳細說明

2.5 schema.xml文件說明

說明: schema.xml文件在SolrCore的conf目錄(即collection1/conf)下, 主要用於配置Solr的域(Field)以及域的類型(FieldType). 在Solr中, 域要先配置再使用.
詳細說明請參見: Solr03-schema.xml文件詳細說明

版權聲明

作者: ma_shoufeng(馬瘦風)

出處: 博客園 馬瘦風的博客

您的支持是對博主的極大鼓勵, 感謝您的閱讀.

本文版權歸博主所有, 歡迎轉載, 但未經博主同意必須保留此段聲明, 且在文章頁面明顯位置給出原文鏈接, 否則博主保留追究法律責任的權利.


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 系統狀態查看命令: w 查看用戶 top 系統進程監控 uptime 查看某台伺服器運行了多久 htop 更加先進的互動式監控工具(需要安裝) iotop 監控並實時顯示磁碟IO輸入和輸出和程式進程(需要安裝) iftop 網路帶寬監控(需要安裝) 查看進程: ps ps -ef 查看所有進程 ps ...
  • 嵌入式里有時候也會和音頻打交道,比如最近特別火的智能音箱產品,離不開前端的音頻信號採集、降噪,中間的語音識別(ASR)、自然語言處理(NLP),以及後端的文語合成(TTS)、音頻播放。音頻信號採集是處理聲音的第一步,要採集音頻就離不開PCM編碼,音頻採集完成自然需要保存,waveform格式(.wa... ...
  • 在shell腳本中,變數分兩種,系統變數和自定義變數。 系統預設變數是系統自帶的一些變數,如path為路徑變數 用戶自定義變數為在編寫吧腳本的時候自己定義的一些變數 變數名命名規則 首個字元必須為字母“a-z和A-Z” 中間不能有空格,但是可以使用下劃線“_” 不能使用標點符號 不能使用bash中的 ...
  • 在MCU on Eclipse網站上看到Erich Styger在8月2日發的博文,一篇關於在Amazon FreeRTOS V10中使用運行時統計信息的文章,本人覺得很有啟發,特將其翻譯過來以備參考。原文網址:https://mcuoneclipse.com/2018/08/02/tutorial ...
  • 通過my.ini配置文件修改字元集:客戶端字元集設置:[mysql]default-character-set=utf8 [mysqld] character-set-server=utf8 。設置之後保存,在重啟mysql服務。登錄mysql:mysql -uroot -p (-u用戶名 -p密碼 ...
  • 占座 ...
  • 一、VM安裝(這個大家去百度吧....) 二、centos安裝 版本:centos7 ’https://jingyan.baidu.com/article/a3aad71aa180e7b1fa009676.html(具體可以看這個) 1、安裝好之後,始終用自己的用戶名操作(這個很重要,因為如果在不同 ...
  • mysql在之前寫過一次,那時是我剛剛進入博客,今天介紹一下mysql的python交互,當然前面會把mysql基本概述一下。 一、命令腳本 1、基本命令 (1)啟動服務 以管理員身份運行cmd net start 服務名稱 以管理員身份運行cmd net start 服務名稱 (2)停止服務 以管 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...