lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Smiley (JIRA)" <>
Subject [jira] [Commented] (SOLR-9038) Ability to create/delete/list snapshots for a solr collection
Date Thu, 28 Apr 2016 05:05:12 GMT


David Smiley commented on SOLR-9038:

Perhaps another way to view this feature proposed here is to have a commit optionally include
a persistent name (or variable name-value metadata for that matter) that will be included
with the IndexCommit that is persisted.  That would be a somewhat simple way to think of this
feature, and needn't involve any SolrCloud related stuff.  Of course this data would need
to flow-through in all the places commit boolean does, which is a lot of places, but I don't
think it would be hard/complicated.

A separate issue might be a custom deletion policy that treats commits with certain special
name-value pairs specially, like keeping them around forever and letting another API/process
expressly delete them when asked.  Perhaps only the latest commit that has a certain "name"
is kept if there is an older one by the same name.

> Ability to create/delete/list snapshots for a solr collection
> -------------------------------------------------------------
>                 Key: SOLR-9038
>                 URL:
>             Project: Solr
>          Issue Type: New Feature
>          Components: SolrCloud
>            Reporter: Hrishikesh Gadre
> Currently work is under-way to implement backup/restore API for Solr cloud (SOLR-5750).
SOLR-5750 is about providing an ability to "copy" index files and collection metadata to a
configurable location. 
> In addition to this, we should also provide a facility to create "named" snapshots for
Solr collection. Here by "snapshot" I mean configuring the underlying Lucene IndexDeletionPolicy
to not delete a specific commit point (e.g. using PersistentSnapshotIndexDeletionPolicy).
This should not be confused with SOLR-5340 which implements core level "backup" functionality.
> The primary motivation of this feature is to decouple recording/preserving a known consistent
state of a collection from actually "copying" the relevant files to a physically separate
location. This decoupling have number of advantages
> - We can use specialized data-copying tools for transferring Solr index files. e.g. in
Hadoop environment, typically [distcp|]
tool is used to copy files from one location to other. This tool provides various options
to configure degree of parallelism, bandwidth usage as well as integration with different
types and versions of file systems (e.g. AWS S3, Azure Blob store etc.)
> - This separation of concern would also help Solr to focus on the key functionality (i.e.
querying and indexing) while delegating the copy operation to the tools built for that purpose.
> - Users can decide if/when to copy the data files as against creating a snapshot. e.g.
a user may want to create a snapshot of a collection before making an experimental change
(e.g. updating/deleting docs, schema change etc.). If the experiment is successful, he can
delete the snapshot (without having to copy the files). If the experiment is failed, then
he can copy the files associated with the snapshot and restore.
> Note that Apache Blur project is also providing a similar feature [BLUR-132|]

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message