簡體   English   中英

使用SphinxSE的MariaDB 10.0

[英]MariaDB 10.0 with SphinxSE

我有一個關於將Sphinx與MariaDB 10.0集成的問題。 該數據庫附帶了SphinxSE存儲引擎,但是我在查找有關如何設置它的詳細信息時遇到了麻煩。 請考慮以下情形:

我有一個圖書銷售應用程序,該應用程序使用具有以下表格的數據庫:“圖書”,“清單”和“學校”。 “清單”包含與一本書和一所學校的關系。 一本“書”包含幾列,最重要的是“書名”和“作者”。 我想使用Sphinx在“ Book”表上執行全文搜索,典型的查詢可能是這樣的(在偽SQL中):“查找標題包含字符串“ Harry P”的所有書籍,哈佛大學當前列表”。

根據MariaDB的文章 :“您需要創建一個特殊的ENGINE = SPHINX'搜索表',然后使用全文查詢從中進行選擇...”-這是否意味着Sphinx根本無法訪問/索引我現有的MariaDB表? 我必須將“ Book”表重新創建為SphinxSE表嗎? 在這種情況下,如何指定此表與其他非Sphinx表(列表,學校等)之間的關系? 上面的文章給出了一個非常簡單的JOIN示例,但我仍然感到困惑。 如果所有“書”都存儲在Sphinx表中,MariaDB是否可以訪問該表以進行不同類型的查詢(不需要全文搜索)?

作為一個相關的問題,怎樣使Sphinx能夠同時索引書名和書名? 該應用程序將始終指定要查詢的字段。

任何幫助將不勝感激,因為數小時的搜索和閱讀仍然使我對這個話題幾乎一無所知。

SphinxSE引擎不是真正的引擎。 它所做的只是為基礎Sphinx守護程序提供“代理”。 它對獅身人面像引擎運行查詢,然后將“結果”顯示為FAKE表,以便mysql然后可以將其與原始表聯接起來。

基本上,這是一種方便的方法,可在一個查詢中獲取sphinx結果和適當的數據(使用mysql進行“ JOIN”的艱苦工作)

...所以在“擔心” sphinxSE之前。 您需要找出一個普通的Sphinx索引,可以對其運行查詢。 即創建一個索引以能夠運行該查詢。 通常情況下,獅身人面像查詢只會為您提供ID列表。

因此,您可以獨立獲取sphinx設置(無需SphinxSE或MariaDB)-創建一個索引,並對它運行一些查詢。 首先開始工作。

只有你有指標工作(和你理解的概念) -回來,並制定出如何使用與SphinxSE設置。

有關使獅身人面像正常工作的大量文章, https://www.google.com/search? q = sphinx + search + getting + started

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM