0

Similar to this question, but not the same thing....

When shouldn't you use a relational database?

If I have let's say 20 columns of data and it's not going to change in size, the only way to quickly search on all of them, is to index every column. This takes up a lot of space, and causes inserts and updates to take a long time.

But if the alternative is to use some kind of text-indexing-and-searching engine that does basically the same thing with a more proprietary format, why not use a relational database?

If your text search index has to be modified every time you add or update any of the 20 data items, how is this any different from updating the equivalent index in a database?

Community
  • 1
  • 1
stu
  • 8,461
  • 18
  • 74
  • 112
  • because a simple `text` inside in a relational database is pretty "stupid" and can't handle complex queries, like `+foo -bar` or `foo near bar` and whatnot. – Marc B Apr 06 '15 at 14:52
  • @MarcB: depends on the DBMS, many DBMS offer a full text search nowadays, so simple searches work quite well there (including things like stemming). But they will never be able to compete with specialized full-text search engines like Solr or ElasticSearch. –  Apr 06 '15 at 15:02
  • My situation though is that the data is already in an rdbms and there's quite a bit of it. I'm not sure it's worth making another entire copy (and keeping it synced) to use a real search engine if I can get away with making a bunch of indexes. – stu Apr 07 '15 at 16:02

0 Answers0