public void addDocument(List<Document> documentList, String collectionName) { IndexWriter indexWriter = indexWriterManager.getIndexWriter(collectionName); try { logger.info("collectionName : {}", collectionName); logger.info("add indexing start................"); int indexingDocumentCount = 0; for (Document doc : documentList) { indexingDocumentCount++; if ((indexingDocumentCount % 50000) == 0) { logger.info("{} indexed...", indexingDocumentCount); } indexWriter.addDocument(doc); } logger.info("total indexed document count {}", indexingDocumentCount); logger.info("end"); } catch (IOException e) { logger.error("error : ", e); throw new RuntimeException("색인 중 에러가 발생하였습니다. [" + e.getMessage() + "]"); } }
public void deleteDocument(Query query, String collectionName) { IndexWriter indexWriter = indexWriterManager.getIndexWriter(collectionName); try { logger.info("collectionName : {}", collectionName); logger.info("delete indexing start................ {}", query); indexWriter.deleteDocuments(query); logger.info("end"); } catch (IOException e) { logger.error("error : ", e); throw new RuntimeException("색인 중 에러가 발생하였습니다. [" + e.getMessage() + "]"); } }
public void updateDocument(Term term, Document document, String collectionName) { IndexWriter indexWriter = indexWriterManager.getIndexWriter(collectionName); try { logger.info("collectionName : {}", collectionName); logger.info("update indexing start................{}", term); indexWriter.updateDocument(term, document); logger.info("end"); } catch (IOException e) { logger.error("error : ", e); throw new RuntimeException("색인 중 에러가 발생하였습니다. [" + e.getMessage() + "]"); } }
public void commit(String collectionName) { IndexWriter indexWriter = indexWriterManager.getIndexWriter(collectionName); try { logger.info("Commit {}", collectionName); indexWriter.commit(); } catch (CorruptIndexException e) { logger.error("error : ", e); throw new RuntimeException("색인 중 에러가 발생하였습니다. [" + e.getMessage() + "]"); } catch (IOException e) { logger.error("error : ", e); throw new RuntimeException("색인 중 에러가 발생하였습니다. [" + e.getMessage() + "]"); } }