Lucene là gì?
Lucene là một thư viện truy vấn thông tin (Information Retrieval – IR) có hiệu năng cao và mềm dẻo. Truy vấn thông tin liên quan đến quá trình tìm kiếm thông tin nằm trong tài liệu hoặc siêu dữ liệu mô tả tài liệu. Lucene cho phép thêm tính năng tìm kiếm vào trong ứng dụng. Nó là một dự án mã nguồn mở, miễn phí và ổn định, được cài đặt bằng ngôn ngữ Java, và là một dự án thành viên của Apache Software Foundation, phân phối dưới giấy phép Apache Software License. Do đó, trong những năm gần đây, Lucene là thư viện IR phổ biến nhất được sử dụng.
Lucene cung cấp một giao diện lập trình ứng dụng (API) đơn giản nhưng mạnh mẽ, không đòi hỏi người dùng phải có quá nhiều kiến thức về kỹ thuật full text search. Để tích hợp Lucene vào ứng dụng, người dùng chỉ cần học cách sử dụng một số class cơ bản. Do Lucene là một thư viện Java, nó cho phép đánh chỉ mục và tìm kiếm tất cả thông tin dưới dạng văn bản, đây là ưu điểm khiến nó được cài đặt trong vô số các ứng dụng, điển hình là Mac OS X Finder, Apple’s iTunes, Wikipedia. Nó có thiết kế nhỏ gọn, đơn giản, cho phép nhúng trên nhiều môi trường như web và desktop.
Ngoài thư viện lõi của Lucene, lập trình viên còn được cung cấp thêm nhiều tiện ích thông qua các gói mở rộng, đóng vai trò như add-on chức năng. Một vài trong số chúng hầu như có mặt trong tất cả các ứng dụng, như gói spellchecker và gói highlighter. Các gói này được gom lại trong một khu vực riêng biệt gọi là “contrib”.
Website của Lucene (http://lucene.apache.org/java) là nơi lý tưởng để bắt đầu học cách sử dụng. Tại đây có các bài giảng, javadocs cho Lucene API, hệ thống theo dõi tính năng, các bản phân phối, Lucene Wiki (http://wiki.apache.org/lucene-java) chứa nhiều trang hướng dẫn từ cộng đồng.
Lucene tồn tại ở khắp mọi nơi, cho dù đa số người dùng không hề biết: etFlix, Digg, MySpace, LinkedIn, FedEx, Apple, Ticketmaster, SalesForce.com, Encyclopedia Britannica CD-ROM/DVD, Eclipse IDE, Mayo Clinic, tạp chí New Scientist, Atlassian (Jira), Epiphany, MIT’s OpenCourseware, DSpace và nền tảng Akamai’s EdgeComputing.

No comments yet.