jackrabbit-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Jackrabbit Wiki] Update of "Composite Blob Store" by MattRyan
Date Wed, 26 Jul 2017 00:10:41 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jackrabbit Wiki" for change notification.

The "Composite Blob Store" page has been changed by MattRyan:

Adds use case and ASCII drawing for use case.

  === Writes ===
  The composite blob store fulfills write requests by evaluating the blob the same way as
is done for reads.  And the same as is done for reads, writes are issued to the selected delegate
and the result of the write is returned as the result of the composite blob store write and
no subsequent writes are attempted for that request.
+ === Curation ===
+ Curation is the process of evaluating the blobs in a blob store to determine if that blob
store is still the correct location for blobs to reside. In the case of the composite blob
store, a reason to curate data may be to gradually move data for which the determination of
"correct" location can change over time.  For example, a change to a JCR property may cause
a blob to belong in a different delegate blob store than where it was originally stored. 
Or a configuration change may mean that blobs need to move to different locations.
+ Curation is not in the scope of the composite blob store; however, it may be prudent to
add common curators to the same package in Oak in future efforts.
+ == Use Cases ==
+ === Replication Across Storage Regions ===
+ The composite blob store can address [[JCR Binary Usecase]] UC2 by storing blobs close to
+ In this example, imagine a company with a main office in the United States and branch offices
in Tokyo and Paris.  Here there is a single Oak repository configured using a composite blob
store with three delegates.  The default delegate blob store is in the AWS "us-west-2" region,
in Oregon in the United States, presumably near the main office.  Two other delegate blob
stores are configured, one in the AWS "ap-northeast-1" region (Tokyo), and one in the AWS
"eu-west-2" region (London).  When blobs are stored in Oak, if the "officeLocation" property
is set on the stored blob, that will be used to determine where to store the blob.  Any blobs
stored with "officeLocation" set to any value besides "Tokyo" or "Paris", or blobs stored
without this property set, will be stored in the default delegate blob store.  
+ {{{
+                          +-----+
+                          | Oak |
+                          +--+--+
+                             |
+            +----------------+----------------+
+            |                |                |
+   officeLocation=Tokyo   default    officeLocation=Paris
+            |                |                |
+     +------V------+  +------V------+  +------V------+
+     | S3DataStore |  | S3DataStore |  | S3DataStore |
+     |   (Tokyo)   |  |   (Oregon)  |  |   (London)  |
+     +-------------+  +-------------+  +-------------+
+ }}}

View raw message