Apache Lucene has a few parameters to influence how optimization is performed. Hibernate Search exposes those parameters.
Further index optimization parameters include:
hibernate.search.[default|<indexname>].indexwriter.[batch|transaction].max_buffered_docshibernate.search.[default|<indexname>].indexwriter.[batch|transaction].max_field_lengthhibernate.search.[default|<indexname>].indexwriter.[batch|transaction].max_merge_docshibernate.search.[default|<indexname>].indexwriter.[batch|transaction].merge_factorhibernate.search.[default|<indexname>].indexwriter.[batch|transaction].ram_buffer_sizehibernate.search.[default|<indexname>].indexwriter.[batch|transaction].term_index_intervalSee Section 3.8, “Tuning Lucene indexing performance” for more details.