Tôi mới sử dụng ElasticSearch. Tôi đã đi qua hướng dẫn rất cơ bản về việc tạo các chỉ mục. Tôi hiểu khái niệm về việc lập chỉ mục. Tôi muốn ElasticSearch tìm kiếm bên trong tệp .PDF. Dựa trên sự hiểu biết của tôi về việc tạo các chỉ mục, có vẻ như tôi cần đọc tệp .PDF và trích xuất tất cả các từ khóa để lập chỉ mục. Nhưng, tôi không hiểu những bước tôi cần phải làm theo. Làm cách nào để đọc tệp .PFD để trích xuất từ khóa.Cách lập chỉ mục tệp .PDF trong ElasticSearch
Trả lời
Bạn cần phải xem elasticsearch-mapper-attachments plugin, vì nó rất có khả năng giúp bạn đạt được những gì bạn cần.
Install Elasticsearch Plugin mapper-tập tin đính kèm và mã sử dụng tương tự như:
public String indexDocument(String filePath, DataDTO dto) {
IndexResponse response = null;
try {
response = this.prepareIndexRequest("collectionName").setId(dto.getId())
.setSource(jsonBuilder().startObject()
.field("file", Base64.encodeFromFile(filePath))
.endObject()).setRefresh(true).execute().actionGet();
} catch (ElasticsearchException e) {
//
} catch (IOException e) {
//
}
return response.getId();
}
Dường như các plugin elasticsearch-mapper-tập tin đính kèm đã bị phản đối 5.0.0 (Phát hành ngày 26 Tháng 10 2016). documentation khuyên bạn nên sử dụng Ingest Attachment Processor Plugin làm phương án thay thế.
Để cài đặt:
sudo bin/elasticsearch-plugin install ingest-attachment
Xem How to index a pdf file in Elasticsearch 5.0.0 with ingest-attachment plugin? để biết thông tin về cách sử dụng các tập tin đính kèm Plugin ăn.
Đây là câu trả lời đúng kể từ hôm nay (18/11/2016). elasticsearch-mapper-attachment đã lỗi thời và không hoạt động với elasticsearch> = 5.0.0 nhưng 'ingest-attachment' hoạt động như một sự quyến rũ. –
Đối với dự án của tôi, tôi cũng phải làm cho tệp .PDF cục bộ của mình có thể tìm kiếm được. tôi đạt được điều này bằng cách làm theo:
- dữ liệu Trích từ tập tin .PDF sử dụng Apache Tika, tôi sử dụng Apache Tika vì nó mang lại cho tôi sự tự do để trích xuất dữ liệu từ mở rộng khác nhau với cùng một đường ống.
- Đã sử dụng đầu ra của Apache Tika để lập chỉ mục.
Thông thường chỉ số của tôi trông giống như:
{ filename: "FILENAME", filebody: "Dữ liệu được chiết xuất từ Apache Tika" }
Có nhiều giải pháp khác nhau trên mạng như đã đề cập ở đây cũng sử dụng Elasticsearch mapper-attachment plugin là một giải pháp tuyệt vời. Tôi đã chọn phương pháp này vì tôi muốn làm việc với các tệp lớn và các tiện ích khác nhau.
Như đã đề cập Plugin elasticsearch-mapper-tập tin đính kèm đã bị phản đối và thay vào đó ăn kèm plugin có thể được sử dụng
https://www.elastic.co/guide/en/elasticsearch/plugins/current/ingest-attachment.html
- 1. Làm cách nào để lập chỉ mục một tệp pdf trong Elasticsearch 5.0.0 với plugin đính kèm-ingest?
- 2. Cách lập chỉ mục mã nguồn bằng ElasticSearch
- 3. Sai số Elasticsearch Lỗi ngoại lệ khi cố gắng lập chỉ mục PDF
- 4. Làm cách nào để lập chỉ mục các tệp .doc và .pdf trong asp.net
- 5. Làm cách nào để lập chỉ mục kết xuất tệp html thành elasticsearch?
- 6. Elasticsearch để lập chỉ mục dữ liệu RDBMS
- 7. Xóa các chỉ mục cũ trong elasticsearch
- 8. Dữ liệu lập chỉ mục từ postgres đến solr/elasticsearch
- 9. ElasticSearch: Chỉ lập chỉ mục các trường được chỉ định trong ánh xạ
- 10. Lập chỉ mục Tài liệu Word và PDF với Sphinx
- 11. MongoDB + Elasticsearch hoặc chỉ Elasticsearch?
- 12. Làm cách nào để lập chỉ mục một mảng Kiểu lồng nhau trong Elasticsearch?
- 13. Làm cách nào để lập chỉ mục và lưu trữ nhiều ngôn ngữ trong ElasticSearch
- 14. Cách thực hiện truy vấn chỉ mục trong ElasticSearch?
- 15. Lập chỉ mục các tệp PDF bằng Symfony sử dụng Lucene
- 16. ElasticSearch - thông lượng chỉ mục cao
- 17. Trình phân tích chỉ mục mặc định trong elasticsearch
- 18. Cách thiết lập cấu trúc chỉ mục ElasticSearch với nhiều liên kết thực thể
- 19. Làm cách nào để xóa chỉ mục ElasticSearch?
- 20. Cách chỉ định một máy phân tích trong khi tạo chỉ mục trong ElasticSearch
- 21. Làm cách nào để vô hiệu hóa việc tạo chỉ mục tự động trong elasticsearch?
- 22. Tìm kiếm nhiều chỉ mục trong ElasticSearch (Tire)
- 23. Xóa chỉ mục theo tên và loại chỉ mục bằng cách sử dụng elasticSearch 2.3.3 trong java
- 24. Làm cách nào để lưu trữ dữ liệu trong elasticsearch _source nhưng không lập chỉ mục dữ liệu?
- 25. Lập chỉ mục Postgres?
- 26. Cách để xử lý dữ liệu mới (chỉ mục sau lần chạy cuối cùng) trong Elasticsearch?
- 27. Tìm kiếm hoặc lập chỉ mục các tệp XML
- 28. Cách tạo trường tệp chỉ chấp nhận pdf và doc
- 29. cách lập chỉ mục tensorflow hoạt động
- 30. Cách xác định tên trường chỉ mục ElasticSearch cho POJO bằng cách sử dụng Elastic Data ElasticSearch
Bạn có thể cần phải kiểm tra [elasticsearch-mapper-file đính kèm Plugin] (https://github.com/elastic/elasticsearch-mapper-attachments), nó sẽ làm những gì bạn mong đợi. – Val
Cảm ơn. Bạn có thể vui lòng đăng bài này làm câu trả lời của bạn, để tôi có thể chấp nhận nó. – KurioZ7
Nếu bạn muốn giải pháp out-of-the-box, bạn có thể thử [Ambar] (https://ambar.cloud) – SochiX