/ / Efektywne przechowywanie trie dla aplikacji internetowej - python, trie, aho-corasick

Wydajne miejsce do przechowywania danych w aplikacji internetowej - python, trie, aho-corasick

Mam trie Aho Corasick, które analizuję ciałotekstu przez. Teraz ten trie istnieje jako część mojej aplikacji do butelek. Jest on wdrożony na Heroku i obecnie naiwnie przechowuję marynowaną formę automatu, rozpakowuję go, gdy jest to potrzebne, i używam go. Jaki byłby lepszy sposób na wydajne przechowywanie automatu Aho Corasick dla takiej aplikacji internetowej?

Odpowiedzi:

2 dla odpowiedzi № 1

Dostęp do trie na dysku nie jest całkowicie trywialny, więc ładowanie go do pamięci jest dobrym podejściem.

Wypróbuj bibliotekę pyahocorasick FWIW. http://pyahocorasick.readthedocs.io/ jest twoim przyjacielem. Wyczyści automat i użyje kompaktowego schematu pamięci, aby ograniczyć użycie pamięci