-2

Suggest me an embedded database engine(for Java) to store 1000000 records in minimum time.
It should provide the full text search facility (Actually i want Firefox's Awesome-bar like FTS searching used to search any combination of characters)
The database should be stored in compressed format on disk.

It should not be GPL. Apache 2.0 will be better.

Suggestions are open for NOSQL too.

starblue
  • 55,348
  • 14
  • 97
  • 151
Vivek
  • 11,938
  • 19
  • 92
  • 127

2 Answers2

2

Look at OrientDB: in embedded mode stores, on my notebook, 1,000,000 of records in 4-30 seconds depending on the record type. It has a FullText index and it's 100% Java and has Apache 2 license.

Seems perfect, don't you? :-)

Lvca
  • 8,938
  • 2
  • 24
  • 25
  • OrientDB is a nice option but the main problem with OrientDB is the lack of tutorial and examples also the javadocs are not so informative. – Vivek Aug 15 '11 at 19:19
  • 1
    You can find a really simple example here: https://github.com/jbellmann/orientdb-examples/blob/master/src/de/jbellmann/orientdb/OrientTest.java – Palesz Mar 07 '12 at 16:23
0

One million records is not that many. You can use a Map for records and a NavigableMap for the text search. You can store the data on disk using a DeflatorOutputStream and InflatorInputStream.

Peter Lawrey
  • 525,659
  • 79
  • 751
  • 1,130
  • looks interesting. Please give a link to the examples or tutorials for using map for records. – Vivek Aug 15 '11 at 19:14
  • I would start with http://download.oracle.com/javase/tutorial/collections/interfaces/map.html for more http://www.google.co.uk/search?q=java+map+tutorial 31.7 million results. – Peter Lawrey Aug 15 '11 at 20:30