Cất chứa
0Hữu dụng +1
0
Toàn văn công cụ tìm kiếm
Lucene là apache phần mềm quỹ hội jakartaHạng mục tổMột cái tử hạng mục, là một cáiMở ra nguyên số hiệuToàn vănKiểm tra động cơCông cụ bao,Nhưng nó không phải một cái hoàn chỉnh toàn văn kiểm tra động cơ, mà là một cái toàn văn kiểm tra động cơ giá cấu, cung cấp hoàn chỉnh tuần tra động cơ cùng hướng dẫn tra cứu động cơ, bộ phậnVăn bản phân tíchĐộng cơ ( tiếng Anh cùngĐức vănHai loại phương tây ngôn ngữ ). Lucene mục đích là vìPhần mềm khai pháNhân viên cung cấp một cái đơn giản dễ dùng công cụ bao, lấy phương tiện tại mục tiêu hệ thống trung thực hiện toàn văn kiểm tra công năng, hoặc là coi đây là cơ sở thành lập khởi hoàn chỉnh toàn văn kiểm tra động cơ.LuceneLà một bộ dùng choToàn văn kiểm traCùng sưu tầm khai nguyênThể thức kho,TừApache phần mềm quỹ hộiDuy trì cùng cung cấp. Lucene cung cấp một cái đơn giản lại cường đạiỨng dụng thể thứcTiếp lời, có thể làmToàn văn hướng dẫn tra cứuCùng sưu tầm. ỞJavaKhai phá hoàn cảnhLucene là một cái thành thục miễn phíKhai nguyênCông cụ. Liền này bản thân mà nói, Lucene là trước mặt cùng với mấy năm gần đây được hoan nghênh nhất miễn phí Java tin tức kiểm traTrình tự kho.Mọi người thường xuyên nhắc tới tin tức kiểm tra trình tự kho, tuy rằng cùng công cụ tìm kiếm có quan hệ, nhưng không nên đem tin tức kiểm tra trình tự kho cùngCông cụ tìm kiếmTương lẫn lộn.[1]
Tiếng Trung danh
Toàn văn công cụ tìm kiếm
Ngoại văn danh
Lucene
Loại thuộc
Công cụ tìm kiếm
Khai phá người
Doug Cutting
Khai phá thời gian
2000 năm

Phát triển lịch sử

Bá báo
Biên tập
Lucene lúc ban đầu là từ Doug Cutting khai phá, ở SourceForge trang web nâng lên cung download. Ở 2001 năm 9 nguyệt làm cao chất lượng khai nguyên Java sản phẩm gia nhập đếnApache phần mềm quỹ hộiJakartaTrong gia tộc. Theo mỗi cái phiên bản tuyên bố, cái này hạng mục được đến rõ ràng tăng cường, cũng hấp dẫn càng nhiều người dùng cùng khai phá nhân viên. 2004 năm 7 nguyệt, Lucene1.4 bản chính thức tuyên bố, 10 nguyệt 1.4.2 phiên bản làm một lầnbugTu chỉnh. Biểu 1.1 biểu hiện Lucene tuyên bố lịch sử.
Phiên bản tuyên bố ngày cột mốc lịch sử
0.01 2000 năm 3 nguyệt cái thứ nhất khai nguyên phiên bản (SourceForge)
1.0 2000 năm 10 nguyệt
1.01b 2001 năm 7 nguyệt cuối cùng SourceForge phiên bản
1.2 2002 năm 6 nguyệt cái thứ nhấtApacheJakarta phiên bản
1.3 2003 năm 12 nguyệtHợp lại hướng dẫn tra cứuCách thức,Tuần tra phân tích khíGia tăng, viễn trình tìm tòi, token định vị, nhưng mở rộngAPI
1.4 2004 năm 7 nguyệt Sorting, span queries,termvectors
1.4.1 2004 năm 8 nguyệt bài tự tính năng bug tu chỉnh
1.4.2 2004 năm 10 nguyệt IndexSearcher optimization and misc. fixes
1.4.3 2004 năm đông Misc. fixes2.4.1 2009 năm ngày 8 tháng 3 tuyên bố tân phiên bản
2.3.0 2008 năm 1 nguyệt đổi mới vì 2.3.0
2.4.0 2008 năm 10 nguyệt đổi mới vì 2.4.0
2.4.1 2009 năm 5 nguyệt đổi mới vì 2.4.1
2.9.0 2009 năm 9 nguyệt 25 hào đổi mới vì 2.9.0
2.9.1 2009 năm 11 nguyệt 6 hào đổi mới vì 2.9.1
3.0.0 2009 năm 11 nguyệt 25 hào đổi mới vì 3.0.0
3.0.1 2010 năm 2 nguyệt 26 hào đổi mới vì 3.0.1
3.0.2 2010 năm 6 nguyệt 18 hào đổi mới vì 3.0.2
3.0.3 2010 năm 12 nguyệt 3 hào đổi mới vì 3.0.3
3.3.0 2011 năm 7 đầu tháng đổi mới vì 3.3.0
3.4.0 2011 năm 9 nguyệt 14 ngày đổi mới vì 3.4.0
3.5.0 2011 năm 11 nguyệt 26 ngày đổi mới vì 3.5.0
3.6.0 2012 năm 4 nguyệt 12 ngày đổi mới vì 3.6.0
3.6.1 2012 năm 7 nguyệt 23 ngày đổi mới vì 3.6.1
4.0 2012 năm 10 nguyệt 12 ngày đổi mới vì 4.0[2]
4.2 2013 năm 3 nguyệt 11 ngày đổi mới vì 4.2
4.3.1 2013-06-18 tuyên bố
4.4 2013 năm 7 nguyệt 23 ngày đổi mới đến 4.4
4.5 2013 năm 10 nguyệt 5 ngày đổi mới đến 4.5
5.0.0 2015 năm 2 nguyệt 20 ngày đổi mới đến 5.0.0

Người sáng lập

Bá báo
Biên tập
Lucene['lusen] nguyên tác giả là Doug Cutting, hắn là một vị thâm niênToàn văn hướng dẫn tra cứu/ kiểm tra chuyên gia, đã từng là V-TwinCông cụ tìm kiếmChủ yếu khai phá giả, sau ởExciteĐảm nhiệm cao cấp hệ thốngGiá cấu thiết kế sư,Trước mặt làm với một ít Internet tầng dưới chót giá cấu nghiên cứu. Trước kia tuyên bố ở tác giả chính mình blog thượng, hắn cống hiến ra Lucene mục tiêu là vì các loại trung loại nhỏỨng dụng thể thứcGia nhập toàn vănKiểm tra công năng.Sau lại tuyên bố ở SourceForge, 2001 năm cuối năm trở thành apache phần mềm quỹ hội jakarta một cái tử hạng mục.

Đặc điểm ưu thế

Bá báo
Biên tập
Lucene
Làm một cáiMở ra nguyên số hiệuHạng mục, Lucene từ ra đời lúc sau, dẫn phát rồi mở ra nguyên số hiệu xã đàn thật lớn hưởng ứng, lập trình viên nhóm không chỉ có sử dụng nó xây dựng cụ thểToàn văn kiểm traỨng dụng, hơn nữa đem chi tổng thể đến các loại hệ thống phần mềm trung đi, cùng với xây dựng Web ứng dụng, thậm chí nào đóThương nghiệp phần mềmCũng chọn dùng Lucene làm này bên trong toàn văn kiểm traTử hệ thốngTrung tâm. apache phần mềm quỹ hội trang web sử dụng Lucene làm toàn văn kiểm tra động cơ,IBMKhai nguyên phần mềmeclipse[9] 2.1 phiên bản trung cũng chọn dùng Lucene làm trợ giúp tử hệ thốngToàn văn hướng dẫn tra cứuĐộng cơ, tương ứng IBM thương nghiệp phần mềm Web Sphere[10] trung cũng chọn dùng Lucene. Lucene lấy này mở ra nguyên số hiệu đặc tính, ưu dịHướng dẫn tra cứu kết cấu,Tốt đẹp hệ thống giá cấu đạt được càng ngày càng nhiều ứng dụng.
Lucene là một cái cao tính năng, nhưng co duỗi tin tức tìm tòi (IR) kho. Nó có thể vì ngươiỨng dụng trình tựTăng thêm hướng dẫn tra cứu cùng tìm tòi năng lực. Lucene là dùng java thực hiện, thành thụcKhai nguyên hạng mục,Là trứ danh Apache Jakarta đại gia đình một viên, hơn nữa căn cứ vào Apache phần mềm cho phép [ASF,License]. Đồng dạng, Lucene là trước mặt phi thường lưu hành, miễn phí Java tin tức tìm tòi (IR) kho.

Xông ra ưu điểm

Lucene làm một cái toàn vănKiểm tra động cơ,Này có như sau xông ra ưu điểm:
( 1 )Hướng dẫn tra cứu văn kiệnCách thức độc lập với ứng dụng ngôi cao. Lucene định nghĩa một bộ lấy 8 vị byte làm cơ sở hướng dẫn tra cứu văn kiện cách thức, khiến cho kiêm dung hệ thống hoặc là bất đồng ngôi cao ứng dụng có thể cùng chung thành lập hướng dẫn tra cứu văn kiện.
( 2 ) ở truyền thống toàn văn kiểm tra động cơĐảo bài hướng dẫn tra cứuCơ sở thượng, thực hiện phân khối hướng dẫn tra cứu, có thể nhằm vào tân văn kiện thành lập tiểu văn kiện hướng dẫn tra cứu, tăng lên hướng dẫn tra cứu tốc độ. Sau đó thông qua cùng vốn có hướng dẫn tra cứu xác nhập, đạt tới ưu hoá mục đích.
( 3 ) ưu túMặt hướng đối tượngHệ thống giá cấu, khiến cho đối với Lucene mở rộng học tập khó khăn hạ thấp, phương tiện mở rộng tân công năng.
( 4 ) thiết kế độc lập với ngôn ngữ cùngVăn kiện cách thứcVăn bản phân tíchTiếp lời,Hướng dẫn tra cứu khíThông qua tiếp thu Token lưu hoàn thànhHướng dẫn tra cứu văn kiệnSáng lập, người dùng mở rộng tân ngôn ngữ cùng văn kiện cách thức, chỉ cần thực hiện văn bản phân tích tiếp lời.
( 5 ) đã cam chịu thực hiện một bộ cường đại tuần tra động cơ, người dùng không cần chính mình biên soạn số hiệu có thể sử hệ thống nhưng đạt được cường đại tuần tra năng lực, Lucene tuần tra thực hiện trung cam chịu thực hiện bố ngươi thao tác, mơ hồ tuần tra ( Fuzzy Search[11] ), phân tổ tuần tra từ từ.
Đối mặt đã tồn tại thương nghiệp toàn văn kiểm tra động cơ, Lucene cũng có tương đương ưu thế.
Đầu tiên, nó khai pháNguyên số hiệuPhát hành phương thức ( tuân thủ Apache Software License[12] ), tại đây cơ sở thượng lập trình viên không chỉ có có thể nguyên vẹn lợi dụng Lucene sở cung cấp cường đại công năng, hơn nữa có thể thâm nhập tinh tế học tập đến toàn văn kiểm tra động cơ chế tác kỹ thuật cùng mặt hướng đối tượng biên trình thực tiễn, tiến tới tại đây cơ sở thượng căn cứ ứng dụng thực tế tình huống biên soạn ra càng tốt càng thích hợp trước mặt ứng dụng toàn văn kiểm tra động cơ. Ở điểm này,Thương nghiệp phần mềmLinh hoạt tính xa xa không kịp Lucene.
Tiếp theo, Lucene vâng chịuMở ra nguyên số hiệuNhất quán giá cấu tốt đẹp ưu thế, thiết kế một hợp lý mà cực có mở rộng năng lựcMặt hướng đối tượngGiá cấu, lập trình viên có thể ở Lucene cơ sở thượng mở rộng các loại công năng, tỷ như mở rộng tiếng Trung xử lý năng lực, từ văn bản mở rộng đếnHTML,PDF[13] từ từ văn bản cách thức xử lý, biên soạn này đó mở rộng công năng không chỉ có không phức tạp, hơn nữa bởi vì Lucene thỏa đáng hợp lý đối hệ thống thiết bị làm trình tự thượng trừu tượng, mở rộng công năng cũng có thể dễ dàng đạt tới vượt ngôi cao năng lực.
Cuối cùng, chuyển dời đến apache phần mềm quỹ hội sau, mượn dùng với apache phần mềm quỹ hộiNetwork platform,Lập trình viên có thể phương tiện cùng khai phá giả, cái khác lập trình viên giao lưu, thúc đẩy tài nguyên cùng chung, thậm chí trực tiếp đạt được đã biên soạn hoàn bị mở rộng công năng. Cuối cùng, tuy rằng Lucene sử dụng Java ngôn ngữ viết thành, nhưng làMở ra nguyên số hiệuXã khu lập trình viên đang ở không ngừng đem chi sử dụng các loại truyền thống ngôn ngữ thực hiện ( tỷ như.net framework[14] ), ở tuân thủ Lucene hướng dẫn tra cứu văn kiện cách thức cơ sở thượng, khiến cho Lucene có thể vận hành ở đủ loại ngôi cao thượng,Hệ thống quản lý viênCó thể căn cứ trước mặt ngôi cao thích hợp ngôn ngữ tới hợp lý lựa chọn.

Tiền đề

lucene có 7 cái bao yêu cầu dẫn vào: analysis, document, index, queryParser, search, store, util

Tìm tòi

Bá báo
Biên tập
IndexSearcher searcher= new IndexSearcher( "E:/index" );
Query query = new TermQuery(new Term( "title", "lucene" ));// đơn cáiByteTuần tra
//Query query = new FuzzyQuery(new Term( "title", "lucene" ));// mơ hồ tuần tra
//Query query = new WildcardQuery(new Term( "title", "lu*" ));//Thông xứng phùTuần tra? Đại biểu một cáiTự phù,* đại biểu 0 đến nhiều tự phù
//BooleanQuery query = new BooleanQuery();// điều kiện tuần tra
//BooleanQuery qson1 = new BooleanQuery();
//Query q1 = new TermQuery(new Term( "title", "lucene" ));
//qson1.add(q1, Occur.MUST);//MUST là cần thiết thỏa mãn
//BooleanQuery qson2 = new BooleanQuery();
//Query q2= new TermQuery(new Term( "sex", "woman" ));
//qson2.add(q2, Occur.MUST_NOT);//MUST_NOT là cần thiết không thỏa mãn
//query.add(qson1, Occur.SHOULD);
//query.add(qson2, Occur.SHOULD);//SHOULD đại biểu thỏa mãn qson1 hoặc là thỏa mãn qson2 đều có thể
//PhraseQuery query = new PhraseQuery();// gần gũi tuần tra
//query.setSlop(5);// khoảng cách thiết trí vì 5
//query.add(new Term( "title", "lucene" ));
//query.add(new Term( "title", "introduction" ));// tuần tra ra title trung lucene cùng introduction khoảng cách không vượt qua 5 cái tự phù kết quả
//Query query = new PrefixQuery(new Term( "title", "lu" ));//WildcardQuery lu* giống nhau
//RangeQuery query = new RangeQuery(new Term( "time", "50" ),new Term( "time", "60" ), true);
//true đại biểu [50,60], false đại biểu (50,60)
Hits hits = searcher.search(query);
for (int i = 0; i < hits.length(); i++) {
Document d = hits.doc(i);
String title= d.get( "title" );
System.out.print(title+ "" );
}
Như vậy, trên cơ bản liền có thể sử dụng
Chú: Trở lên số hiệu vì lucene sớm chút phiên bản phương pháp sáng tác. lucene3.02 phương pháp sáng tác có điều thay đổi.

Thành lập hướng dẫn tra cứu

Bá báo
Biên tập
IndexWriter writer = new IndexWriter( "E:/index", new StandardAnalyze(),true,MaxFieldLength.UNLIMITED); //true đại biểu bao trùm ban đầu số liệu, maxFieldLength dùng để hạn chế Field lớn nhỏ
Document doc = new Document();
doc.add(new Field( "title", "lucene introduction", Field.Store.YES, Field.Index.ANALYZED,
Field.TermVector.WITH_POSITIONS_OFFSETS));
doc.add(new Field( "time", "60", Field.Store.YES, Field.Index.ANALYZED,
Field.TermVector.WITH_POSITIONS_OFFSETS));
writer.addDocument(doc);
writer.optimize(); // ưu hoá
writer.close();