我正在使用雲中運行的封閉系統。有沒有辦法緩存讀取輸出?
我需要的是一個搜索功能,它使用用戶鍵入的正則表達式來過濾數據集中的行。
phrase = re.compile(request.get("query"))
data = Entry.all().fetch(50000) #this takes around 10s when there are 6000 records
result = x for x in data if phrase.search(x.title)
現在,數據庫本身不會改變太多,每天不會有超過200-300次的搜索。
有沒有辦法以某種方式緩存所有條目(我預計它們不會超過50,000個,每個不超過500個字節),因此檢索它們不會佔用大於10秒的時間?或者也許並行呢?我不介意10cpu秒,但我確實介意用戶必須等待10秒鐘。
要解決像「索引和使用.filter()」的任何答案 - 查詢是一個正則表達式,我不知道任何索引機制,將允許使用正則表達式。
那邊的好工作:) – systempuntoout