我已經開始嘗試使用新的搜索API,演示運行順利,但是,仍然有一些問題我仍然對作爲搜索世界的外部人員感到困惑。澄清AppEngine搜索API的用法
首先是如何構建一個文檔。顯然,你不能將每一行硬編碼到一個文檔中,但我還能做什麼。假設我有一個用戶類(我使用的是Java,但我認爲Python在這裏沒有任何區別),我會將用戶的信息添加到文檔中,並且能夠對地址字段進行全文搜索。
class User {
String username;
String password;
String address;
}
在數據存儲區,我有10000個實例有這個實體,如果我需要建立這個文件,我必須
第1步:從數據存儲檢索10000實例
第2步:通過每個用戶實體的迭代,並創造10000個文檔
步驟3:所有的10000個文檔添加到索引,然後我就能夠搜索到
如果我上面提到的三個步驟是錯誤的,請糾正我。
如果是這樣的話,那麼以後每次新用戶註冊後,我們需要創建一個新文檔,並添加到索引?
我認爲這是主意,是的... – Thilo
謝謝@Thilo。在我看來,索引看起來像是關係數據庫中的手動維護映射,但每次插入/刪除/更新發生時都必須將其與數據庫同步。我知道支持全文搜索的好處,但如果這是唯一的好處,是否值得做所有這些開銷? –
開銷總是伴隨着全文搜索。你需要這個索引。它能否比當前的API更自動,更具說明性,代碼密集度更低?也許。如果FTS是值得的,那麼成本取決於你自己決定。 – Thilo