4 ms·
Yes, but how do you make sure your Sphinx index is always synchronized with your SQL database, within a short window (a few seconds), and without to much pressu
by ngrilly 10y ago
Yes, but how do you make sure your Sphinx index is always synchronized with your SQL database, within a short window (a few seconds), and without to much pressure on the database?
- mrweasel 10y agoThat's a fair point, but most other search solutions have the same issue. If you can't deal with search being a bit behind your actual content, and you want something better than the built in Postgresql full text search, you can live update a sphinx search index. It's a bit more work, but very easy to do. I was mostly thinking of Sphinx as a solution for smallish site, that just need the search box to be working. Even though is works just as well for site like Craigslist (but I don't think they use the SQL data source)
- irrational 10y agoThis. Our data is such that it must be instantly searchable the instant it hits the database.
- ngrilly 10y ago:-) And you use PostgreSQL built-in FTS for that? If yes, do you order by ts_rank or ts_rank_cs? If yes, are the response times ok?
- irrational 10y agoNo, we are on Oracle right now. But we are looking at moving to Postgres and are considering our options.
- ngrilly 10y agoDoes Oracle offer built-in FTS?
- irrational 10y agoYes.
- morgante 10y ago> within a short window (a few seconds), Why is that necessary? One of the things which makes maintaining a search index easier is that typically your search datastore has much weaker consistency and durability requirements than your primary one.
- ngrilly 10y agoBecause in our application, users can add new documents, and will be confused if the document they just added is missing in the search result (which by default show the most recent documents). Considering that Elasticsearch website and documentation emphasize "real-time" features, I think it's not a weird requirement :-)