Команды подписчика
Команды управления для управления конфигурацией подписчика. Эти команды выполняются синхронно, но применяются к следующему периодическому обновлению схемы, что может привести к короткой задержке до применения новой конфигурации.
Команды подписчика включают команды уровня базы данных и команды уровня таблицы.
Разрешения
Для выполнения этой команды необходимо иметь по крайней мере разрешения администратора базы данных.
Переопределения политики базы данных
База данных-лидер может переопределить следующие политики уровня базы данных в кластере последователей: политика кэширования и авторизованные субъекты.
Политика кэширования
Политика кэширования по умолчанию для кластера подписчиков использует базу данных кластера лидеров и политики кэширования на уровне таблицы.
Вариант | Наименование |
---|---|
Не допускается | Используемые политики кэширования — это политики, определенные в базе данных-источнике в кластере лидеров. |
replace | Исходная база данных в базе данных кластера лидеров и политики кэширования на уровне таблицы удаляются (задано значение null ). Эти политики заменяются политиками переопределения на уровне базы данных и таблицы, если они определены. |
union(default) | Исходная база данных в базе данных кластера лидеров и политики кэширования на уровне таблицы объединяются с политиками, определенными в политиках переопределения на уровне базы данных и таблиц. |
Примечание.
- Если коллекция политик кэширования на уровне таблицы и базы данных переопределения пуста, все кэшируется по умолчанию.
- Вы можете задать переопределение
0d
политики кэширования на уровне базы данных, и ничего не будет кэшировано по умолчанию.
Авторизованные субъекты
Вариант | Наименование |
---|---|
Не допускается | Авторизованные субъекты определяются в исходной базе данных кластера лидеров. |
replace | Переопределение авторизованных субъектов заменяет авторизованных субъектов из исходной базы данных в кластере лидеров. |
union(default) | Переопределение авторизованных субъектов объединяется с авторизованными субъектами из исходной базы данных в кластере лидеров. |
Примечание.
Если коллекция переопределения авторизованных субъектов пуста, субъекты уровня базы данных не будут.
Переопределения политик таблиц и материализованных представлений
По умолчанию таблицы и материализованные представления в базе данных, за которой следует кластер подписчиков, сохраняют политику кэширования исходной сущности.
Однако политики кэширования таблиц и материализованных представлений можно переопределить в кластере последователей.
replace
Используйте параметр для переопределения политики кэширования исходной сущности.
Команды уровня базы данных
База данных последователей .show
Показывает базу данных (или базы данных) из другого кластера лидеров, для которых настроено одно или несколько переопределения на уровне базы данных.
Синтаксис
.show
follower
database
Имя базы данных
.show
follower
databases
(
DatabaseName1,
...,
DatabaseNameN)
Выходные данные
Выходной параметр | Тип | Описание |
---|---|---|
имя_базы_данных | string |
Имя отслеживаемой базы данных. |
LeaderClusterMetadataPath | string |
Путь к контейнеру метаданных кластера лидеров. |
КэшированиеPolicyOverride | string |
Переопределение политики кэширования для базы данных, сериализованной как JSON или null. |
AuthorizedPrincipalsOverride | string |
Переопределяет коллекцию авторизованных субъектов для базы данных, сериализованную как JSON или null. |
AuthorizedPrincipalsModificationKind | string |
Тип изменения, применяемый с помощью AuthorizedPrincipalsOverride (none , union или replace ). |
CachingPoliciesModificationKind | string |
Тип изменения, применяемый с помощью переопределения политики кэширования на уровне базы данных или таблицы (none илиunion replace ). |
IsAutoPrefetchEnabled | bool |
При каждом обновлении схемы предварительно извлекаются новые данные. |
TableMetadataOverrides | string |
Если определено, сериализация JSON свойства уровня таблицы переопределяется. |
Кэширование политики базы данных .alter подписчика
Изменяет политику кэширования базы данных последователей, чтобы переопределить один набор в исходной базе данных в кластере лидеров.
Примечания
- По умолчанию
modification kind
используетсяunion
политика кэширования. Чтобы изменитьmodification kind
команду, используйте.alter follower database caching-policies-modification-kind
команду. - Просмотр политики или эффективных политик после изменения можно выполнить с помощью
.show
команд: - Просмотр параметров переопределения в базе данных подписчика после внесения изменений можно выполнить с помощью
.show follower database
Синтаксис
.alter
follower
database
DatabaseName policy
caching
hot
=
HotDataSpan
Пример
.alter follower database MyDb policy caching hot = 7d
Кэширование политики базы данных подписчика
Удаляет базу данных подписчика, переопределяющую политику кэширования. Это удаление приводит к тому, что политика в исходной базе данных в кластере лидеров действует.
Примечания
- Просмотр политики или эффективных политик после изменения можно выполнить с помощью
.show
команд: - Просмотр параметров переопределения в базе данных подписчика после изменения можно использовать
.show follower database
Синтаксис
.delete
follower
database
policy
Имя базы данных caching
Пример
.delete follower database MyDB policy caching
Добавление субъектов базы данных подписчика
Добавляет авторизованные субъекты в коллекцию базы данных подписчиков переопределения авторизованных субъектов. Примечания
- По умолчанию
modification kind
для таких авторизованных субъектов используетсяnone
значение . Чтобы изменитьmodification kind
тип изменения в базе данных-участниках базы данных-последователя, измените тип. - Просмотр эффективной коллекции субъектов после изменения можно выполнить с помощью
.show
команд: - Просмотр параметров переопределения в базе данных подписчика после изменения можно использовать
.show follower database
Синтаксис
.add
follower
database
Имя_базы данных (users
viewers
| | admins
monitors
| ) субъект роли1...,
(
,
principalN)
['
notes'
]
Пример
.add follower database MyDB viewers ('aadgroup=mygroup@microsoft.com') 'My Group'
Субъекты базы данных -drop подписчика
Удаляет авторизованные субъекты из коллекции базы данных подписчиков переопределения авторизованных субъектов.
Примечание.
- Просмотр эффективной коллекции субъектов после изменения можно выполнить с помощью
.show
команд: - Просмотр параметров переопределения в базе данных подписчика после изменения можно использовать
.show follower database
Синтаксис
.drop
follower
database
Имя_базы данных (users
| admins
monitors
| viewers
| ) (
principal1...,
,
principalN)
Пример
.drop follower database MyDB viewers ('aadgroup=mygroup@microsoft.com')
.alter подписчик базы данных principals-modification-kind
Изменяет тип изменения авторизованной базы данных подписчиков.
Примечание.
- Просмотр эффективной коллекции субъектов после изменения можно выполнить с помощью
.show
команд: - Просмотр параметров переопределения в базе данных подписчика после изменения можно использовать
.show follower database
Синтаксис
.alter
follower
database
DatabaseNameprincipals-modification-kind
= (none
| union
| replace
)
Пример
.alter follower database MyDB principals-modification-kind = union
.alter последователь базы данных caching-policies-modification-kind
Изменяет тип изменения политик кэширования для базы данных последователей, таблицы и материализованных представлений.
Примечание.
- Просмотр эффективной коллекции политик кэширования на уровне таблицы или базы данных после изменения можно выполнить с помощью стандартных
.show
команд: - Просмотр параметров переопределения в базе данных подписчика после изменения можно использовать
.show follower database
Синтаксис
.alter
follower
database
DatabaseName caching-policies-modification-kind
= (none
| union
| replace
)
Пример
.alter follower database MyDB caching-policies-modification-kind = union
.alter follower database prefetch-extents
Кластер подписчиков может ожидать получения новых данных из базового хранилища в SSD узлов (кэш), прежде чем выполнять запросы к этим данным.
Следующая команда изменяет конфигурацию базы данных подписчика для предварительного получения новых экстентов при каждом обновлении схемы.
Предупреждение
- Этот параметр может снизить свежесть данных в базе данных подписчика.
- Конфигурация по умолчанию —
false
и рекомендуется использовать значение по умолчанию. - При выборе изменения параметра
true
внимательно оцените влияние на свежесть в течение некоторого периода времени после изменения конфигурации.
Синтаксис
.alter
follower
database
DatabaseName prefetch-extents
= (true
| false
)
Пример
.alter follower database MyDB prefetch-extents = false
Таблицы и материализованные команды представлений
Изменение таблицы последователей или материализованного представления политики кэширования
Изменяет политику кэширования таблицы или материализованного представления в базе данных подписчика, чтобы переопределить набор политик в исходной базе данных в кластере лидеров.
Примечание.
- Просмотр политики или эффективных политик после изменения можно выполнить с помощью
.show
команд: - Просмотр параметров переопределения в базе данных подписчика после изменения можно использовать
.show follower database
Синтаксис
.alter
follower
database
Таблица DatabaseName TableName policy
caching
hot
=
HotDataSpan
.alter
follower
database
Таблицы (
DatabaseName1,
...,
TableNameNhot
)
policy
caching
=
HotDataSpan
.alter
follower
database
DatabaseName materialized-view ViewName policy
caching
hot
=
HotDataSpan
.alter
follower
database
DatabaseName материализованные представления (
ViewName1...,
,
ViewNamenhot
)
policy
caching
=
HotDataSpan
Примеры
.alter follower database MyDb tables (Table1, Table2) policy caching hot = 7d
.alter follower database MyDb materialized-views (View1, View2) policy caching hot = 7d
Удаление таблицы подписчиков или материализованного представления политики кэширования
Удаляет переопределение для политики кэширования таблицы или материализованного представления в базе данных последователей. Политика, установленная в исходной базе данных в кластере лидеров, теперь будет эффективной политикой.
Примечание.
- Просмотр политики или эффективных политик после изменения можно выполнить с помощью
.show
команд: - Просмотр параметров переопределения в базе данных подписчика после изменения можно использовать
.show follower database
Синтаксис
.delete
follower
database
Имя таблицы DatabaseName table
policy
caching
.delete
follower
database
DatabaseName tables
(
TableName1...,
,
TableNameN)
policy
caching
.delete
follower
database
Имя представления DatabaseName materialized-view
policy
caching
.delete
follower
database
DatabaseName materialized-views
(
ViewName1...,
,
ViewNameN)
policy
caching
Пример
.delete follower database MyDB tables (Table1, Table2) policy caching
.delete follower database MyDB materialized-views (View1, View2) policy caching
Пример конфигурации
Ниже приведены примеры действий по настройке базы данных подписчика.
В этом примере:
Наш кластер
MyFollowerCluster
последователей будет следовать за базой данныхMyDatabase
из кластера лидеров.MyLeaderCluster
MyDatabase
имеетN
таблицы:MyTable1
,MyTable2
MyTable3
, ...MyTableN
(N
> 3).- На
MyLeaderCluster
:
MyTable1
Политика кэшированияMyTable2
Политика кэшированияMyTable3
...MyTableN
Политика кэшированияMyDatabase
Авторизованные субъектыгорячий диапазон данных = 7d
горячий диапазон данных = 30d
горячий диапазон данных = 365d
Зрители = aadgroup=scubadivers@contoso.com
; Администраторы =aaduser=jack@contoso.com
- По
MyFollowerCluster
желанию:
MyTable1
Политика кэшированияMyTable2
Политика кэшированияMyTable3
...MyTableN
Политика кэшированияMyDatabase
Авторизованные субъектыгорячий диапазон данных = 1d
горячий диапазон данных = 3d
горячий диапазон данных = 0d
(ничего кэшированного)Администраторы = aaduser=jack@contoso.com
, средства просмотра =aaduser=jill@contoso.com
Внимание
Оба MyFollowerCluster
и MyLeaderCluster
должны находиться в одном регионе.
Шаги, которые нужно выполнить
Предварительные требования. Настройка кластера MyFollowerCluster
для выполнения базы данных MyDatabase
из кластера MyLeaderCluster
.
Примечание.
Субъект, выполняющий команды управления, должен быть в DatabaseAdmin
базе данных MyDatabase
.
Отображение текущей конфигурации
См. текущую конфигурацию, в соответствии с которой MyDatabase
следует:MyFollowerCluster
.show follower database MyDatabase
| evaluate narrow() // just for presentation purposes
Столбец | Значение |
---|---|
имя_базы_данных | MyDatabase |
LeaderClusterMetadataPath | https://storageaccountname.blob.core.windows.net/cluster |
КэшированиеPolicyOverride | null |
AuthorizedPrincipalsOverride | [] |
AuthorizedPrincipalsModificationKind | нет |
IsAutoPrefetchEnabled | False |
TableMetadataOverrides | |
CachingPoliciesModificationKind | Объединение |
Переопределение авторизованных субъектов
Замените коллекцию авторизованных MyDatabase
MyFollowerCluster
субъектов на коллекцию, которая включает только одного пользователя Microsoft Entra в качестве администратора базы данных и одного пользователя Microsoft Entra в качестве средства просмотра базы данных:
.add follower database MyDatabase admins ('aaduser=jack@contoso.com')
.add follower database MyDatabase viewers ('aaduser=jill@contoso.com')
.alter follower database MyDatabase principals-modification-kind = replace
Доступ к доступу MyDatabase
разрешен только для этих двух конкретных субъектов MyFollowerCluster
.show database MyDatabase principals
Роль | PrincipalType | PrincipalDisplayName | PrincipalObjectId | PrincipalFQN | Примечания. |
---|---|---|---|---|---|
Администратор Базы данных MyDatabase | Пользователь Microsoft Entra | Джек Kusto (upn: jack@contoso.com) | 12345678-abcd-efef-1234-350bf486087b | aaduser=87654321-abcd-efef-1234-350bf486087b; 5555555555-4444-3333-2222-2d7cd011db47 | |
Средство просмотра Базы данных MyDatabase | Пользователь Microsoft Entra | Jill Kusto (upn: jack@contoso.com) | abcdefab-abcd-efef-1234-350bf486087b | aaduser=54321789-abcd-efef-1234-350bf486087b; 5555555555-4444-3333-2222-2d7cd011db47 |
.show follower database MyDatabase
| mv-expand parse_json(AuthorizedPrincipalsOverride)
| project AuthorizedPrincipalsOverride.Principal.FullyQualifiedName
AuthorizedPrincipalsOverride_Principal_FullyQualifiedName |
---|
aaduser=87654321-abcd-efef-1234-350bf486087b; 5555555555-4444-3333-2222-2d7cd011db47 |
aaduser=54321789-abcd-efef-1234-350bf486087b; 5555555555-4444-3333-2222-2d7cd011db47 |
Переопределение политик кэширования
Замените коллекцию политик MyDatabase
MyFollowerCluster
кэширования на уровне базы данных и таблиц, задав для всех таблиц не кэшированные данные, за исключением двух конкретных таблиц , MyTable1
MyTable2
которые будут кэшировать данные в течение периодов 1d
и 3d
соответственно:
.alter follower database MyDatabase policy caching hot = 0d
.alter follower database MyDatabase table MyTable1 policy caching hot = 1d
.alter follower database MyDatabase table MyTable2 policy caching hot = 3d
.alter follower database MyDatabase caching-policies-modification-kind = replace
Только эти две определенные таблицы кэшируют данные, а остальные таблицы имеют горячий период 0d
данных:
.show tables details
| summarize TableNames = make_list(TableName) by CachingPolicy
CachingPolicy | TableNames |
---|---|
{"DataHotSpan":{"Value":"1.00:00:00"},"IndexHotSpan":{"Value":"1.00:00:00"}} | ["MyTable1"] |
{"DataHotSpan":{"Value":"3.00:00:00"},"IndexHotSpan":{"Value":"3.00:00:00"}} | ["MyTable2"] |
{"DataHotSpan":{"Value":"0.00:00:00"},"IndexHotSpan":{"Value":"0.00:00:00"}} | ["MyTable3",...,"MyTableN"] |
.show follower database MyDatabase
| mv-expand parse_json(TableMetadataOverrides)
| project TableMetadataOverrides
TableMetadataOverrides |
---|
{"MyTable1":{"CachingPolicyOverride":{"DataHotSpan":{"Value":"1.00:00:00"},"IndexHotSpan":{"Value":"1.00:00:00"}}} |
{"MyTable2":{"CachingPolicyOverride":{"DataHotSpan":{"Value":"3.00:00:00"},"IndexHotSpan":{"Value":"3.00:00:00"}}} |
Итоги
См. текущую конфигурацию, за MyDatabase
которой следует:MyFollowerCluster
.show follower database MyDatabase
| evaluate narrow() // just for presentation purposes
Столбец | Значение |
---|---|
имя_базы_данных | MyDatabase |
LeaderClusterMetadataPath | https://storageaccountname.blob.core.windows.net/cluster |
КэшированиеPolicyOverride | {"DataHotSpan":{"Value":"00:00:00"},"IndexHotSpan":{"Value":"00:00:00"}} |
AuthorizedPrincipalsOverride | [{"Principal":{"FullyQualifiedName":"aaduser=87654321-abcd-efef-1234-350bf486087b",...},{"Principal":{"FullyQualifiedName":"aaduser=54321789-abcd-efef-1234-350bf486087b",...}] |
AuthorizedPrincipalsModificationKind | Replace |
IsAutoPrefetchEnabled | False |
TableMetadataOverrides | {"MyTargetTable":{"CachingPolicyOverride":{"DataHotSpan":{"Value":"3.00:00:00"}"}"MySourceTable":{"CachingPolicyOverride":{"DataHotSpan":{"Value":"1.00:00:00"},...}} |
CachingPoliciesModificationKind | Replace |
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по