好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

about lucene merepolicy

about lucene merepolicy

above 3.2 version the default mergepolicy is used triedmergepolicy

so if you want use setMergeFactor you must down the version use bellow code

         Directory dir = FSDirectory.open(new File(indexPath));

            Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_31);

            IndexWriterConfig iwc = new IndexWriterConfig(Version.LUCENE_31, analyzer);

//            if (create) {

//              // Create a new index in the directory, removing any

//              // previously indexed documents:

//              iwc.setOpenMode(OpenMode.CREATE);

//            } else {

//              // Add new documents to an existing index:

              iwc.setOpenMode(OpenMode.CREATE_OR_APPEND);

              

              MergePolicy mp=iwc.getMergePolicy();

              if (mp instanceof LogMergePolicy)

              {

                LogMergePolicy lmp=(LogMergePolicy) mp;

                lmp.setMergeFactor(20);

                System.out.println("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");

              }

              

              //            }

            // Optional: for better indexing performance, if you

            // are indexing many documents, increase the RAM

            // buffer.  But if you do this, increase the max heap

            // size to the JVM (eg add -Xmx512m or -Xmx1g):

            //

            // iwc.setRAMBufferSizeMB(256.0);

            IndexWriter writer = new IndexWriter(dir, iwc);

                        

//            writer.setMergeFactor(2);

//            writer.deleteAll();

查看更多关于about lucene merepolicy的详细内容...

  阅读:49次