Schema element "b:shard "
Defines a b:storage back-end for a sub-set
of the Units.
Definitions
<element name="shard" type="b:Shard" />
<complexType name="Shard">
<sequence>
<element name="storage" type="b:UnitRef" [0..1] />
</sequence>
<attributeGroup ref="b:selector" />
</complexType>
Description
The b:store , as listed in a b:namespace ,
describes a data maintenance approach. This may use shards: distributing
the Units over storages based on some of the unit's features.
When a Unit gets updated, it SHOULD be re-evaluted whether is also has to
change shard. When the store description changes, it may imply that units must
be moved between shards.
The Meshy Space running daemon manages searches across shards.
element shard
One Namespace can carry many storage references, which may be selected with
the when or unless attributes. This way, you MAY,
for instance, cause large Units to be stored on other physical places than smaller
Units. Or, you can differentiate between types of Units, the first letter of the
UnitID, the upload date.
Discussion
typical expressions for shards
Not all storage back-ends support the same features. For instance, some may not
support writing, other may not support search. Which storage is used for each task
can be configured with when .
Typical selectors for shards:
# First half of the names in this shard
unit.id =~ "^[a-mA-M]"
# Large Units somewhere else
unit.size > 10M
# Introduce a staging server
unit.state unlike 'ms:UnitState/{Published,Deprecated}'
mark@overmeer.net
Web-pages generated on 2023-12-19
|