0

My application is a data retrieval platform. We are planning to cache the data from oracle database into either an in-memory-database or to one of the 'lucene' based platforms. My data is rapidly changing. So the cache should also be refreshed fast and our use cases involves join over multiple tables. Which is the right choice to accelerate the search operation - 'Lucene' based platform or in memory database like oracle 'TimesTen'?

Chris
  • 541
  • 1
  • 4
  • 11

2 Answers2

2

Lots of specifics are missing from this question. But one point already is clearly against Lucene based solutions: 'our use cases involves join over multiple tables'.

If you want to keep your data in multiple separate tables, and join them dynamically in multiple ways, a relational DB will work better. Lucene (and Elasticsearch/Solr) has some support for joining, but it has more constraints that a real DB.

Persimmonium
  • 15,593
  • 11
  • 47
  • 78
0

Oracle TimesTen enables read/write caching of data in Oracle/RAC/Exadata via the a product called Oracle Application Tier Database Cache.

Many tables can be cached in TimesTen and you can then do joins in those cached tables in TimesTen.

Many Oracle customers use Oracle TimesTen as a read/write cache in from of their Oracle Database to enable lower latency [sometime low micro-seconds] for SQL Select, Insert, Update, Delete transactions.