Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace native ElasticSearch integration with Hibernate Search #5760

Open
10 tasks
matthias-ronge opened this issue Aug 23, 2023 · 6 comments
Open
10 tasks

Replace native ElasticSearch integration with Hibernate Search #5760

matthias-ronge opened this issue Aug 23, 2023 · 6 comments
Assignees
Labels
development fund 2023 A candidate for the Kitodo e.V. development fund. improvement scheduled issues already planned/"ordered" for implementation search search, filter

Comments

@matthias-ronge
Copy link
Collaborator

matthias-ronge commented Aug 23, 2023

This development aims to replace the native ElasticSearch integration with the Hibernate Search framework, which uses ElasticSearch. Little shall change for those starting the application out.

The exchange should take place in two steps:

1. A version is created in which the existing ElasticSearch integration has been removed. This requires the following steps:

  • 1a) remove test for indexing
  • 1b) remove indexing page
  • 1c) remove ElasticSearch usage (remove DTO objects, unify saveToDatabase and saveToIndex in save function)
  • 1d) remove database column indexAction from all tables and objects

Goal: The application runs alone with the database. Only the filters and advanced search may not work.

2. A version is created in which Hibernate Search has been implemented. This requires the following steps:

  • 2a) Insert Hibernate Search framework. Annotate table columns.
  • 2b) Implement bulk indexing (reimplement indexing page)
  • 2c) Implement / customize search. The filters are working again.
  • 2d) The advanced search works again.
  • 2e) Search in non-database data (METS files) in a meaningful way
  • 2f) optimization of the search

Goal is to fix a lot of errors and problems with indexing, see #5546.

This development, funded by the Kitodo e.V. Development Fund

@stweil
Copy link
Member

stweil commented Jul 6, 2024

This development aims to replace the native ElasticSearch integration with the Hibernate Search framework, which uses ElasticSearch. Little shall change for those starting the application out.

Isn't there consense that Elasticsearch shall be replaced by OpenSearch? Then the text should be "[...] which uses OpenSearch".

@henning-gerhardt
Copy link
Collaborator

This development aims to replace the native ElasticSearch integration with the Hibernate Search framework, which uses ElasticSearch. Little shall change for those starting the application out.

Isn't there consense that Elasticsearch shall be replaced by OpenSearch? Then the text should be "[...] which uses OpenSearch".

There is only the consense to use ElasticSearch or OpenSearch with HibernateSearch.

@stweil
Copy link
Member

stweil commented Jul 18, 2024

Then the text should be "[...] which works with either Elasticsearch or OpenSearch".

@matthias-ronge, what is the status of this issue and the whole work on support for HibernateSearch?

@solth
Copy link
Member

solth commented Jul 18, 2024

@stweil We are in the middle of the review. If you want to support us with the review, you are very welcome to do so.

@BartChris
Copy link
Collaborator

This development aims to replace the native ElasticSearch integration with the Hibernate Search framework, which uses ElasticSearch. Little shall change for those starting the application out.

Isn't there consense that Elasticsearch shall be replaced by OpenSearch? Then the text should be "[...] which uses OpenSearch".

There is only the consense to use ElasticSearch or OpenSearch with HibernateSearch.

Maybe relevant here: https://www.elastic.co/de/blog/elasticsearch-is-open-source-again

@stweil
Copy link
Member

stweil commented Oct 14, 2024

Maybe relevant here: https://www.elastic.co/de/blog/elasticsearch-is-open-source-again

The new Elasticsearch releases use AGPL, so I am afraid that they cannot be used with Kitodo.Production which uses GPL – unless Kitodo also switches to AGPL.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development fund 2023 A candidate for the Kitodo e.V. development fund. improvement scheduled issues already planned/"ordered" for implementation search search, filter
Development

No branches or pull requests

5 participants