reva icon indicating copy to clipboard operation
reva copied to clipboard

CERN: File search

Open labkode opened this issue 3 years ago • 8 comments
trafficstars

Allow our users to search for filenames Provide a list of "recently viewed" files in the main UI

labkode avatar Jun 14 '22 20:06 labkode

It should be there.

@dragotin @micbar how this search feature has been stress tested? How many files? Does the UI contains the "Recently viewed" files?

labkode avatar Jun 15 '22 14:06 labkode

We implemented a bleve search index in ocis outside of reva which answers REPORT requests. It was not yet stress tested. We will test this before GA, that is sure.

I doubt that CernBOX can be treated as any other ownCloud out there ;-) So I expect a different CERN specific implementation. We implemented search using the same pattern using a SearchProvider and a SearchDriver. The Driver can be different and not use bleve.

micbar avatar Jun 15 '22 14:06 micbar

Hm, I would not give up on the bleve solution too fast. At least for personal spaces, that can be a proper solution. Others depend on the size of the indexed spaces.

dragotin avatar Jun 15 '22 14:06 dragotin

@micbar can you point me to the interface that needs to be implemented?

labkode avatar Jun 15 '22 15:06 labkode

https://github.com/owncloud/ocis/blob/3a43daf8c4a0b5580d953f88372b68aded5aa46a/extensions/search/pkg/search/search.go#L38

micbar avatar Jun 15 '22 21:06 micbar

Current State

  • We store the spaces in one bleve index and have one service running.

What would we need to do to scale that?

Understand the limitations of bleve

  • How big can one index grow?
  • Does it help to open / close indexes on demand?
  • Do we gain performance if we shard spaces across multiple indexes?
  • Can we shard the whole load across multiple search services?

micbar avatar Jul 01 '22 09:07 micbar

Work in progress, Bleve stress tests to be done.

labkode avatar Jul 01 '22 12:07 labkode

We'll implement on master using the existing search API (Report method). The big chunk of work is in the driver, so by using the same interface as in edge, the migration should not give any major headaches.

labkode avatar Jul 15 '22 11:07 labkode