To me it sounds like a typical Server-client test (Database <> Server <> Client) but you have a search engine instead of DB. Most of the time you don't want to test if DB itself is working as expected. Therefore, tests could be designed from different aspects:
Data validation: sequence of queries return the expected data. The focus is more on ...
Parallel test are dangerous when you don't think of state of system while executing test .
You are testing the same system in parallel,so one test can affect other test
For example , you have one suite that test delete user feature and suite that test create user feature.
In delete user , you deletes all users and validates the user list to be empty.