apache / apache/lucene

A Remoting Split Policy For Managing Multiple Remote Directories [LUCENE-2433]

Open
#3,507 0 comments 0 reactions 0 assignees View on GitHub
affects-version:3.0.1 legacy-jira-priority:Major module:core/index type:enhancement
Dominant language
Java
Stars
3.6k
Forks
1.4k
Avg merge
2d 11h
Merged PRs (30d)
88

Description

(Please note that the feature described in #3499 is required reading for this issue.)

The remoting split policy is an abstraction for a split index, where each sub-index points to a (potentially remote) URI-based directory. More formally, it establishes mappings between URIs and directories using the concept of a URIDirectory. Basically, that interface allows one to construct a directory instance based on a URI value.

Currently, the following two URIs have been mapped:

a) File URI: In this case, the path specified in the file URI maps to the location of a FSDirectory. While the path usually points to a folder in the local file system, it may refer to a NFS mount point, in which case the sub-directory is not co-located with the super-directory of the split index.
b) RAM URI: In this case, the path specified in the URI may be empty, in which case a volatile RAMDirectory is created. In the event the path is non-empty, the RAM-based directory acts as a facade for a file-system-based directory.

More (industrial-strength) URI mappings are currently in the works, and will be added as they become available.

---
Migrated from [LUCENE-2433](https://issues.apache.org/jira/browse/LUCENE-2433) by Karthick Sankarachary
Attachments: [LUCENE-2433.patch](https://apache.github.io/lucene-jira-archive/attachments/LUCENE-2433/LUCENE-2433.patch)
Linked issues:
- #3499

Contributor guide

Open the contributing guide

Research direction

Read linked issue #3499 first, then review the attached LUCENE-2433.patch and the existing URI-to-directory mappings described here. The issue is complete when the remoting split policy supports the specified file and RAM URI cases and the additional remote-directory mappings are addressed.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.