On Tue, Oct 26, 2021 at 05:17:13AM -0700, Tianyi Gu wrote:
> I transformed the DSpace 7 Storage layer document into a visual diagram in
> the attachment.
>
> Based on my understanding, DSpace only stores data to the one (if we have
> 10 stores) that has the biggest Store Number.
No. See the file 'config/spring/api/bitstore.xml'. The
BitstreamStorageService is configured with a map of store numbers to
instances of BitStoreService implementations, and a property
'incoming' which selects from that map the store to which all new
bitstreams are deposited. To change the "incoming" store requires
editing this file and restarting DSpace.
> If I want DSpace to write data into several storages, each matching a
> designated community, sub-community or collection, on the same time, we
> have to set up the same numbers of DSpace instances on different cloud
> infrastructures?
I have given some thought to making the selection of assetstores a
pluggable policy, by abstracting BitstreamStorageService or by having
it refer to a configured implementation of a policy interface. My own
use cases would be to direct very large bitstreams to nearline storage
and smaller ones to local storage, or perhaps to producing backups by
"twinning" bitstreams to multiple stores when they are deposited. But
a policy implementation could be based on any computable criteria.
There is not yet any code to do this.
--
Mark H. Wood
Lead Technology Analyst
University Library
Indiana University - Purdue University Indianapolis
755 W. Michigan Street
Indianapolis, IN 46202
317-274-0749
www.ulib.iupui.edu