Поделиться через


Элементы схемы XML для модели службы Service Fabric

Группа PartitionDescriptionGroup

Определяет схему секционирования для службы.

Атрибут Значение
content 3 элемента

XML-источник

<xs:group xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="PartitionDescriptionGroup">
        <xs:annotation>
            <xs:documentation>Defines the partitioning scheme for a service.</xs:documentation>
        </xs:annotation>
        <xs:choice>
            <xs:element name="SingletonPartition">
                <xs:annotation>
                    <xs:documentation>Declares that this service has only one partition.</xs:documentation>
                </xs:annotation>
                <xs:complexType/>
            </xs:element>
            <xs:element name="UniformInt64Partition">
                <xs:annotation>
                    <xs:documentation>Describes a uniform partitioning scheme based on Int64 keys.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="PartitionCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>Total number of partitions (positive integer). Each partition is responsible for a non-overlapping subrange of the overall partition key range.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="LowKey" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>Inclusive low range of the partition key (long).</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="HighKey" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>Inclusive high range of the partition key (long).</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
            <xs:element name="NamedPartition">
                <xs:annotation>
                    <xs:documentation>Describes a named partitioning scheme based on names for each partition.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence maxOccurs="unbounded">
                        <xs:element name="Partition">
                            <xs:annotation>
                                <xs:documentation>Describes a partition by name.</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                                <xs:attribute name="Name" use="required">
                                    <xs:annotation>
                                        <xs:documentation>The name of the partition</xs:documentation>
                                    </xs:annotation>
                                    <xs:simpleType>
                                        <xs:restriction base="xs:string">
                                            <xs:minLength value="1"/>
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:attribute>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:choice>
    </xs:group>
    

Сведения об элементе Content

SingletonPartition

Объявляет, что служба имеет только один раздел.

Атрибут Значение
name SingletonPartition
XML-источник
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="SingletonPartition">
                <xs:annotation>
                    <xs:documentation>Declares that this service has only one partition.</xs:documentation>
                </xs:annotation>
                <xs:complexType/>
            </xs:element>
            

UniformInt64Partition

Описывает единую схему секционирования на основе ключей Int64.

Атрибут Значение
name UniformInt64Partition
XML-источник
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="UniformInt64Partition">
                <xs:annotation>
                    <xs:documentation>Describes a uniform partitioning scheme based on Int64 keys.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="PartitionCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>Total number of partitions (positive integer). Each partition is responsible for a non-overlapping subrange of the overall partition key range.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="LowKey" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>Inclusive low range of the partition key (long).</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="HighKey" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>Inclusive high range of the partition key (long).</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
            

NamedPartition

Описывает схему секционирования по именам для каждого раздела.

Атрибут Значение
name NamedPartition
XML-источник
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="NamedPartition">
                <xs:annotation>
                    <xs:documentation>Describes a named partitioning scheme based on names for each partition.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:sequence maxOccurs="unbounded">
                        <xs:element name="Partition">
                            <xs:annotation>
                                <xs:documentation>Describes a partition by name.</xs:documentation>
                            </xs:annotation>
                            <xs:complexType>
                                <xs:attribute name="Name" use="required">
                                    <xs:annotation>
                                        <xs:documentation>The name of the partition</xs:documentation>
                                    </xs:annotation>
                                    <xs:simpleType>
                                        <xs:restriction base="xs:string">
                                            <xs:minLength value="1"/>
                                        </xs:restriction>
                                    </xs:simpleType>
                                </xs:attribute>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        

Группа ScalingPolicyMechanismGroup

Определяет механизм масштабирования.

Атрибут Значение
content 2 элемента

XML-источник

<xs:group xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ScalingPolicyMechanismGroup">
        <xs:annotation>
            <xs:documentation>Defines the scaling mechanism.</xs:documentation>
        </xs:annotation>
        <xs:choice>
            <xs:element name="InstanceCountScalingMechanism" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>Defines a mechanism for increasing the instance count of a partition. This is for stateless services only.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="MinInstanceCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The minimum number of instances.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="MaxInstanceCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The maximum number of instances..</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="ScaleIncrement" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The number of instances by which to perform the upshift/downshift.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
            <xs:element name="AddRemoveIncrementalNamedPartitionScalingMechanism" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>Defines a mechanism for adding or removing named partitions.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="MinPartitionCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The minimum number of partitions.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="MaxPartitionCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The maximum number of partitions.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="ScaleIncrement" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The number of partitions by which to perform the upshift/downshift.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
        </xs:choice>
    </xs:group>
    

Сведения об элементе Content

InstanceCountScalingMechanism

Определяет механизм для увеличения числа экземпляров секции. Только для служб без отслеживания состояния.

Атрибут Значение
name InstanceCountScalingMechanism
minOccurs 0
maxOccurs 1
XML-источник
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="InstanceCountScalingMechanism" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>Defines a mechanism for increasing the instance count of a partition. This is for stateless services only.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="MinInstanceCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The minimum number of instances.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="MaxInstanceCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The maximum number of instances..</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="ScaleIncrement" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The number of instances by which to perform the upshift/downshift.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
            

AddRemoveIncrementalNamedPartitionScalingMechanism

Определяет механизм для добавления или удаления именованных секций.

Атрибут Значение
name AddRemoveIncrementalNamedPartitionScalingMechanism
minOccurs 0
maxOccurs 1
XML-источник
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AddRemoveIncrementalNamedPartitionScalingMechanism" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>Defines a mechanism for adding or removing named partitions.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="MinPartitionCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The minimum number of partitions.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="MaxPartitionCount" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The maximum number of partitions.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="ScaleIncrement" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The number of partitions by which to perform the upshift/downshift.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
        

Группа ScalingPolicyTriggerGroup

Определяет триггер масштабирования.

Атрибут Значение
content 2 элемента

XML-источник

<xs:group xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ScalingPolicyTriggerGroup">
        <xs:annotation>
            <xs:documentation>Defines the scaling trigger.</xs:documentation>
        </xs:annotation>
        <xs:choice>
            <xs:element name="AveragePartitionLoadScalingTrigger" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>Defines a scaling mechanism based on the average load of replicas of a partition.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="MetricName" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The name of metric which should be used for scaling operations.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="LowerLoadThreshold" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The lower limit of the load value of a metric.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="UpperLoadThreshold" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The upper limit of the load value of a metric.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="ScaleIntervalInSeconds" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The time interval in seconds to be considered for scaling.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
            <xs:element name="AverageServiceLoadScalingTrigger" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>Defines a scaling mechanism based on the average load of partitions of a service.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="MetricName" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The name of metric which should be used for scaling operations.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="LowerLoadThreshold" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The lower limit of the load value of a metric.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="UpperLoadThreshold" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The upper limit of the load value of a metric.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="ScaleIntervalInSeconds" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The time interval in seconds to be considered for scaling.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="UseOnlyPrimaryLoad" type="xs:string" use="optional">
                        <xs:annotation>
                            <xs:documentation>Use load of primary replica as average load of partition.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
        </xs:choice>
    </xs:group>
    

Сведения об элементе Content

AveragePartitionLoadScalingTrigger

Определяет механизм масштабирования на основе средней нагрузки реплик секции.

Атрибут Значение
name AveragePartitionLoadScalingTrigger
minOccurs 0
maxOccurs 1
XML-источник
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AveragePartitionLoadScalingTrigger" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>Defines a scaling mechanism based on the average load of replicas of a partition.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="MetricName" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The name of metric which should be used for scaling operations.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="LowerLoadThreshold" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The lower limit of the load value of a metric.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="UpperLoadThreshold" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The upper limit of the load value of a metric.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="ScaleIntervalInSeconds" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The time interval in seconds to be considered for scaling.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>
            

AverageServiceLoadScalingTrigger

Определяет механизм масштабирования на основе средней нагрузки секций службы.

Атрибут Значение
name AverageServiceLoadScalingTrigger
minOccurs 0
maxOccurs 1
XML-источник
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AverageServiceLoadScalingTrigger" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>Defines a scaling mechanism based on the average load of partitions of a service.</xs:documentation>
                </xs:annotation>
                <xs:complexType>
                    <xs:attribute name="MetricName" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The name of metric which should be used for scaling operations.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="LowerLoadThreshold" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The lower limit of the load value of a metric.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="UpperLoadThreshold" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The upper limit of the load value of a metric.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="ScaleIntervalInSeconds" type="xs:string" use="required">
                        <xs:annotation>
                            <xs:documentation>The time interval in seconds to be considered for scaling.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                    <xs:attribute name="UseOnlyPrimaryLoad" type="xs:string" use="optional">
                        <xs:annotation>
                            <xs:documentation>Use load of primary replica as average load of partition.</xs:documentation>
                        </xs:annotation>
                    </xs:attribute>
                </xs:complexType>
            </xs:element>