Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-13101

Shared storage via a new SHARED replica type

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Major
    • Resolution: Won't Fix
    • None
    • None
    • SolrCloud
    • None

    Description

      This issue is closed as Won't-Fix because the particular approach here won't be contributed. Linked issues may appear approaching it differently.


      Solr should have first-class support for shared storage (blob/object stores like S3, google cloud storage, etc. and shared filesystems like HDFS, NFS, etc).

      The key component will likely be a new replica type for shared storage. It would have many of the benefits of the current "pull" replicas (not indexing on all replicas, all shards identical with no shards getting out-of-sync, etc), but would have additional benefits:

      • Any shard could become leader (the blob store always has the index)
      • Better elasticity scaling down
      • durability not linked to number of replcias.. a single replica could be common for write workloads
      • could drop to 0 replicas for a shard when not needed (blob store always has index)
      • Allow for higher performance write workloads by skipping the transaction log
      • don't pay for what you don't need
      • a commit will be necessary to flush to stable storage (blob store)
      • A lot of the complexity and failure modes go away

      An additional component a Directory implementation that will work well with blob stores. We probably want one that treats local disk as a cache since the latency to remote storage is so large. I think there are still some "locking" issues to be solved here (ensuring that more than one writer to the same index won't corrupt it). This should probably be pulled out into a different JIRA issue.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              yseeley@gmail.com Yonik Seeley
              Votes:
              10 Vote for this issue
              Watchers:
              27 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 27h 10m
                  27h 10m