I have to build a tf-idf based search engine and I have a large amount of data to build the model upon. I have to answer prefix based queries in the engine and hence, I would like to find a data structure that would take the least amount of space while delivering low search time.
I have read about tries, ternary search trees, B+ trees, and Directed Acyclic Word Graphs. I have taken a look at the theoretical space and time complexity for the data structures but confused about their real world performance.
Which is the best data structure to use for the above task?