Elasticsearch (phần mềm)

Bách khoa toàn thư mở Wikipedia
Elasticsearch
Phát triển bởiShay Banon
Phiên bản ổn định
5.0.1 / 15 tháng 11 năm 2016; 7 năm trước (2016-11-15)
Kho mã nguồn
Viết bằngJava
Hệ điều hànhĐa nền tảng
Thể loạiMáy tìm kiếmMáy tạo index
Giấy phépApache License 2.0
Websitewww.elastic.co/products/elasticsearch
Trạng tháiActive

Elasticsearch là một công cụ tìm kiếm dựa trên phần mềm Lucene. Nó cung cấp một bộ máy tìm kiếm dạng phân tán, có đầy đủ công cụ với một giao diện web HTTP có hỗ trợ dữ liệu JSON. Elasticsearch được phát triển bằng Java và được phát hành dạng nguồn mở theo giấy phép Apache. Elasticsearch là một công cụ tìm kiếm phổ biến nhất, theo sau là Apache Solr, cũng dựa trên Lucene.[1]

Elasticsearch BV
Ngành nghềSoftware Development
Trụ sở chínhAmsterdam
Dịch vụElasticsearch commercial solutions
Websitewww.elastic.co

Lịch sử[sửa | sửa mã nguồn]

Shay Banon tạo ra phần mềm tiền thân của Elasticsearch, được gọi là Compass, trong năm 2004.[2] Trong khi suy nghĩ về phiên bản thứ ba của Compass, ông nhận ra rằng cần thiết phải viết lại phần lớn Compass để "tạo ra một giải pháp tìm kiếm có khả năng mở rộng".[2] Vì vậy, ông đã tạo ra "một giải pháp được xây dựng trên nguyên lý phân tán" và sử dụng các giao thức phổ biến là JSON và HTTP, thích hợp cho các ngôn ngữ lập trình khác, cũng như Java.[2] Shay Banon phát hành phiên bản đầu tiên của Elasticsearch vào tháng hai, năm 2010.[3]

Shay Banon nói về Elasticsearch tại hội thảo Berlin Buzzwords năm 2010

Công ty Elasticsearch BV được thành lập vào năm 2012 để cung cấp dịch vụ thương mại và sản phẩm xung quanh phần mềm Elasticsearch và các phần mềm liên quan.[4] Trong tháng 6 năm 2014, công ty thông báo tăng 70 triệu USD trong một vòng tài trợ Loạt C, chỉ 18 tháng sau khi thành lập công ty. Vòng tài trợ đã được dẫn dắt bởi New Enterprise Associates (NEA). Các nhà tài trợ bao gồm Benchmark Capital và Index Ventures. Vòng này mang đến tổng số kinh phí hơn 104 triệu đô.[5]

Vào tháng năm 2015, công ty Elasticsearch đổi tên thành Elastic.[6]

Phiên bản Ngày gốc phát hành Phiên bản mới nhất Ngày phát hành Tình trạng[7]
Phiên bản cũ, không còn được hỗ trợ: 0.4 2010-02-08 0.4.0 2010-02-08 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.5 2010-03-05[8] 0.5.1 2010-03-09 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.6 2010-04-09[9] 0.6.0 2010-04-09 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.7 2010-05-14[10] 0.7.1 2010-05-17[11] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.8 2010-05-27[12] 0.8.0 2010-05-27 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.9 2010-07-26[13] 0.9.0 2010-07-26 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.10 2010-08-27[14] 0.10.0 2010-08-27 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.11 2010-09-29[15] 0.11.0 2010-09-29 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.12 2010-10-18[16] 0.12.1 2010-10-27 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.13 2010-11-18[17] 0.13.1 2010-12-03 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.14 2010-12-27[18] 0.14.4 2011-01-31 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.15 2011-02-18[19] 0.15.2 2011-03-07 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.16 2011-04-23[20] 0.16.5 2011-07-26 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.17 2011-07-19[21] 0.17.10 2011-11-16 Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.18 2011-10-26[22] 0.18.7 2012-01-10[23] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.19 2012-03-01[24] 0.19.12 2012-12-04[25] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.20 2012-12-07[26] 0.20.6 2013-03-25[27] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 0.90 2013-04-29[28] 0.90.13 2014-03-25[29] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 1.0 2014-02-12[30] 1.0.3 2014-04-16[31] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 1.1 2014-03-25[29] 1.1.2 2014-05-22[32] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 1.2 2014-05-22[32] 1.2.4 2014-08-13[33] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 1.3 2014-07-23[34] 1.3.9 2015-02-19[35] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 1.4 2014-11-05[36] 1.4.5 2015-04-27[37] Không còn hỗ trợ
Phiên bản cũ, không còn được hỗ trợ: 1.5 2015-03-23[38] 1.5.2 2015-04-27[37] Không còn hỗ trợ
Phiên bản cũ, vấn được hỗ trợ: 1.6 2015-06-09[39] 1.6.2 2015-07-29[40] Vẫn được hỗ trợ
Phiên bản cũ, vấn được hỗ trợ: 1.7 2015-07-16[41] 1.7.5 2016-02-02[42] Vẫn được hỗ trợ
Phiên bản cũ, vấn được hỗ trợ: 2.0 2015-10-28[43] 2.0.2 2015-12-17[44] Vẫn được hỗ trợ
Phiên bản cũ, vấn được hỗ trợ: 2.1 2015-11-24[45] 2.1.2 2016-02-02[42] Vẫn được hỗ trợ
Phiên bản cũ, vấn được hỗ trợ: 2.2 2016-02-02[42] 2.2.2 2016-03-30[46] Vẫn được hỗ trợ
Phiên bản cũ, vấn được hỗ trợ: 2.3 2016-03-30[46] 2.3.5 2016-08-03[47] Vẫn được hỗ trợ
Phiên bản cũ, vấn được hỗ trợ: 2.4 2016-08-31[48] 2.4.1 2016-09-28[49] Vẫn được hỗ trợ
Phiên bản ổn định hiện tại: 5.0 2016-10-26[50] 5.0.1 2016-11-15[51] Vẫn được hỗ trợ
6.0 Vẫn được hỗ trợ
8.11 Mới nhất
Chú giải:
Phiên bản cũ
Phiên bản cũ, vẫn được hỗ trợ
Phiên bản mới nhất
Phiên bản xem trước mới nhất
Ra mắt trong tương lai

Tổng quan[sửa | sửa mã nguồn]

Elasticsearch có thể được sử dụng để tìm kiếm tất cả các loại tài liệu. Nó cung có khả năng mở rộng tìm kiếm, gần như tìm kiếm thời gian thực và hỗ trợ multitenancy.[52] Elasticsearch được phân tán, có nghĩa là nó thể được chia thành mảnh (shard) và từng mảnh có thể không có nhiều bản sao (replica)... Mỗi nút (node) chứa một hoặc nhiều mảnh, và hoạt động như một điều phối viên để quản lý hoạt động chính xác của các mảnh. Tái cân bằng (rebalancing) và định tuyến (routing) được thực hiện tự động [...]".[52]

Elasticsearch sử dụng Lucene và cố gắng làm mọi tính năng có sẵn của Lucene có thể dùng lại thông qua JSON và Java API. Nó hỗ trợ facetting và percolating,[53] có thể có ích cho thông báo nếu tài liệu mới phù hợp cho truy vấn đăng ký.

Một tính năng khác được gọi là "cổng" (gateway) và xử lý các chỉ số (index) lâu dài kiên trì,[54] ví dụ, một index có thể phục hồi được từ các cổng trong trường hợp tai nạn ở máy chủ. Elasticsearch hỗ trợ yêu cầu GET thời gian thực, làm cho nó như một kho dữ liệu dạng NoSQL,[55] nhưng nó thiếu giao dịch phân tán.[56]

Người sử dụng[sửa | sửa mã nguồn]

Người dùng đáng chú ý sử dụng Elasticsearch[57] bao gồm :

Quản lý Dịch vụ[sửa | sửa mã nguồn]

Một số tổ chức cung cấp Elasticsearch như một dịch vụ quản lý, bao gồm cả Amazon Web Services Elasticsearch Service,[75] Bonsai[76] Elastic Cloud,[77] Qbox[78] và Searchly.[79] Các dịch vụ này cung cấp khả năng lưu trữ, triển khai, sao lưu và hỗ trợ khác như một gói, giảm các kỹ năng và thời gian cần thiết để thực hiện và quản lý Elasticsearch.[80] Đa số dịch vụ quản lý cũng bao gồm cả phần mềm Kibana để quản lý giao diện dạng biểu đồ.

Tham khảo[sửa | sửa mã nguồn]

  1. ^ “DB-Engines Ranking - popularity ranking of search engines”. Truy cập ngày 10 tháng 1 năm 2016.
  2. ^ a b c Banon, Shay. “The Future of Compass & ElasticSearch”.
  3. ^ Banon, Shay (8 tháng 2 năm 2010). “You Know, for Search”. Bản gốc lưu trữ ngày 16 tháng 1 năm 2013.
  4. ^ “Immediate Insight from Data Matters”. Truy cập ngày 25 tháng 3 năm 2015.
  5. ^ “ElasticSearch Scores $70M In Series C To Fund Growth Spurt”. AOL. Truy cập ngày 25 tháng 3 năm 2015.
  6. ^ “Elasticsearch Changes Name to Elastic to Reflect Wide Adoption Beyond Search”. Elastic. Truy cập ngày 19 tháng 10 năm 2016.
  7. ^ “Elastic Product End of Life Dates”. Truy cập ngày 27 tháng 4 năm 2016.
  8. ^ “0.5.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  9. ^ “0.6.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  10. ^ “0.7.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  11. ^ “0.7.1 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  12. ^ “0.8.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  13. ^ “0.9.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  14. ^ “0.10.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  15. ^ “0.11.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  16. ^ “0.12.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  17. ^ “0.13.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  18. ^ “0.14.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  19. ^ “0.15.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  20. ^ “0.16.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  21. ^ “0.17.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  22. ^ “0.18.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  23. ^ “0.18.7 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  24. ^ “0.19.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  25. ^ “0.19.12 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  26. ^ “0.20.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  27. ^ “0.20.6 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  28. ^ “0.90.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  29. ^ a b “Elasticsearch 1.1.0, 1.0.2 and 0.90.13 released”. Truy cập ngày 29 tháng 11 năm 2015.
  30. ^ “1.0.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  31. ^ “Elasticsearch 1.1.1 and 1.0.3 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  32. ^ a b “Elasticsearch 1.2.0 and 1.1.2 released”. Truy cập ngày 29 tháng 11 năm 2015.
  33. ^ “Elasticsearch 1.3.2 and 1.2.4 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  34. ^ “Elasticsearch 1.3.0 And 1.2.3 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  35. ^ “Elasticsearch 1.4.4 and 1.3.9 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  36. ^ “Elasticsearch 1.4.0 And 1.3.5 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  37. ^ a b “Elasticsearch 1.5.2 and 1.4.5 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  38. ^ “Elasticsearch 1.5.0 Released”. Truy cập ngày 29 tháng 11 năm 2015.
  39. ^ “Elasticsearch 1.6.0 released”. Truy cập ngày 29 tháng 11 năm 2015.
  40. ^ “Elasticsearch 1.7.1 and 1.6.2 released”. Truy cập ngày 29 tháng 11 năm 2015.
  41. ^ “Elasticsearch 1.7.0 and 1.6.1 released”. Truy cập ngày 29 tháng 11 năm 2015.
  42. ^ a b c “Elasticsearch 2.2.0 and 2.1.2 and 1.7.5 released”. Truy cập ngày 2 tháng 2 năm 2016.
  43. ^ “Elasticsearch 2.0.0 GA released”. Truy cập ngày 29 tháng 11 năm 2015.
  44. ^ “Elasticsearch 2.1.1, 2.0.2, and 1.7.4 released”. Truy cập ngày 17 tháng 12 năm 2015.
  45. ^ “Elasticsearch 2.1.0 and 2.0.1 released”. Truy cập ngày 29 tháng 11 năm 2015.
  46. ^ a b “Elasticsearch 2.3.0 and 2.2.2 released”. Truy cập ngày 30 tháng 3 năm 2016.
  47. ^ “Elasticsearch 2.3.5 released”. Truy cập ngày 3 tháng 8 năm 2016.
  48. ^ “Elasticsearch 2.4.0 released”. Truy cập ngày 31 tháng 8 năm 2016.
  49. ^ “Elasticsearch 2.4.1 released”. Truy cập ngày 30 tháng 9 năm 2016.
  50. ^ “Elastic Stack 5.0.0 released”. Truy cập ngày 26 tháng 10 năm 2016.
  51. ^ “Elasticsearch 5.0.1 released”. Truy cập ngày 15 tháng 11 năm 2016.
  52. ^ a b “Official Website”. Elasticsearch.org. Truy cập ngày 4 tháng 2 năm 2014.
  53. ^ “percolate at elasticsearch.org reference”. Elasticsearch.org. Truy cập ngày 4 tháng 2 năm 2014.
  54. ^ “elasticsearch Guide: Gateway”. elasticsearch. Truy cập ngày 19 tháng 4 năm 2013.
  55. ^ “Elasticsearch as database”. Karussell.wordpress.com. Truy cập ngày 4 tháng 2 năm 2014.
  56. ^ “No transaction support”. Elasticsearch-users.115913.n3.nabble.com. ngày 8 tháng 7 năm 2010. Bản gốc lưu trữ ngày 6 tháng 10 năm 2018. Truy cập ngày 4 tháng 2 năm 2014.
  57. ^ “Elasticsearch.org Case Studies”. Elasticsearch.org. Truy cập ngày 3 tháng 10 năm 2014.
  58. ^ Horohoe, Chad (ngày 6 tháng 1 năm 2014). “Wikimedia moving to Elasticsearch”. Wikimedia blog. Truy cập ngày 21 tháng 2 năm 2014.
  59. ^ “Adding Context to Queries: The Story Behind Adobe's API and UI”. www.elastic.co. Truy cập ngày 3 tháng 9 năm 2016.
  60. ^ “From Hackathon to Production: Elasticsearch @ Facebook”. www.elastic.co. Bản gốc lưu trữ ngày 16 tháng 6 năm 2016. Truy cập ngày 24 tháng 5 năm 2016.
  61. ^ “StumbleUpon | Developer Blog”. StumbleUpon.com. Truy cập ngày 21 tháng 2 năm 2014.
  62. ^ “Blog of Data”. Bản gốc lưu trữ ngày 4 tháng 3 năm 2015. Truy cập ngày 25 tháng 3 năm 2015.
  63. ^ “ElasticSearch helps Mozilla Metrics team”. Pedroalves-bi.blogspot.com. Truy cập ngày 4 tháng 2 năm 2014.
  64. ^ “Full Text Search on Quora”. Quora.com. Truy cập ngày 4 tháng 2 năm 2014.
  65. ^ “foursquare now uses Elastic Search (and on a related note: Slashem also works with Elastic Search)! | Foursquare Engineering Blog”. Engineering.foursquare.com. Truy cập ngày 21 tháng 2 năm 2014.
  66. ^ “Oculus: The metric correlation component of Etsy's Kale system”. Github.com. Truy cập ngày 4 tháng 2 năm 2014.
  67. ^ “A Whole New Code Search”. Github.com. ngày 23 tháng 1 năm 2013. Truy cập ngày 21 tháng 2 năm 2014.
  68. ^ “openFDA - About the API”. FDA.gov.
  69. ^ “Needle in a haystack - Using Elasticsearch to run the Large Hadron Collider of CERN”. medium.com.
  70. ^ Craver, Nick (ngày 22 tháng 11 năm 2013). “What it takes to run Stack Overflow”. Truy cập ngày 2 tháng 10 năm 2014.
  71. ^ “Center for Open Science”.
  72. ^ Pritzker, Yan (ngày 8 tháng 10 năm 2014). “How we switched elasticsearch clusters without anybody noticing”. Reverb Blog.
  73. ^ “The Netflix Tech Blog: Introducing Raigad - An Elasticsearch Sidecar”.
  74. ^ Steinberger, Simon (ngày 1 tháng 6 năm 2014). “Advanced Image Search on Pixabay”. Truy cập ngày 3 tháng 5 năm 2015.
  75. ^ “Amazon Elasticsearch Service”. Amazon.com. Truy cập ngày 16 tháng 10 năm 2016.
  76. ^ “Elasticsearch on AWS”. bonsai.io. Truy cập ngày 16 tháng 10 năm 2016.
  77. ^ “Hosted Elasticsearch & Kibana on AWS”. elastic.co. Truy cập ngày 16 tháng 10 năm 2016.
  78. ^ “Hosted Elasticsearch”. qbox.io. Bản gốc lưu trữ ngày 18 tháng 10 năm 2016. Truy cập ngày 16 tháng 10 năm 2016.
  79. ^ “Simple Elasticsearch Hosting”. searchly.com. Truy cập ngày 16 tháng 10 năm 2016.
  80. ^ “Elasticsearch Setup”. ctovision.com. Bản gốc lưu trữ ngày 21 tháng 8 năm 2018. Truy cập ngày 16 tháng 10 năm 2016.