Администрирование службы поиска Azure на портале AzureService administration for Azure Search in the Azure portal

Поиск Azure — это облачная служба поиска с полным управлением, которая используется для создания многофункционального поискового интерфейса в пользовательских приложениях.Azure Search is a fully managed, cloud-based search service used for building a rich search experience into custom apps. В этой статье описываются задачи администрирования службы, которые можно выполнять на портале Azure в отношении службы поиска, которая уже была подготовлена.This article covers the service administration tasks that you can perform in the Azure portal for a search service that you've already provisioned. Администрирование службы имеет упрощенный дизайн, который ограничивается следующими задачами:Service administration is lightweight by design, limited to the following tasks:

  • управление ключами API, используемыми для доступа на чтение и запись к службе;Manage access to the api-keys used for read or write access to your service.
  • регулирование емкости службы за счет изменения выделения секций и реплик;Adjust service capacity by changing the allocation of partitions and replicas.
  • отслеживание использования ресурсов относительно ограничений уровня служб.Monitor resource usage, relative to maximum limits of your service tier.

Обратите внимание, что обновление не входит в список задач администрирования.Notice that upgrade is not listed as an administrative task. Так как ресурсы выделяются при подготовке службы, при переходе к другой категории требуется новая служба.Because resources are allocated when the service is provisioned, moving to a different tier requires a new service. Подробные сведения см. в статье Создание службы поиска Azure.For details, see Create an Azure Search service.

Совет

Нужна справка по анализу производительности запросов или поискового трафика?Looking for help on how to analyze search traffic or query performance? Вы можете отслеживать количество запросов, терминов, которые ищут пользователи, и насколько успешно результаты поиска перенаправляют клиентов на конкретные документы в вашем индексе.You can monitor query volume, which terms people search for, and how successful search results are in guiding customers to specific documents in your index. Дополнительные сведения см. в статьях Что такое аналитика поискового трафика?, Мониторинг службы поиска Azure и Рекомендации по производительности и оптимизации Поиска Azure.For more information, see Search Traffic Analytics for Azure Search, Monitor usage and query metrics, and Performance and optimization.

Права администратораAdministrator rights

Подготовку или выведение из эксплуатации самой службы могут выполнять администраторы подписки Azure или соадминистраторы.Provisioning or decommissioning the service itself can be done by an Azure subscription administrator or co-administrator.

Любой пользователь службы, имеющий доступ к ее URL-адресу и ключ api-key администратора, имеет доступ к службе с правами на чтение и запись.Within a service, anyone with access to the service URL and an admin api-key has read-write access to the service. Доступ для чтения и записи дает возможность добавлять, удалять и изменять объекты сервера, включая ключи api-key, индексы, индексаторы, источники данных, расписания и назначения ролей, реализованные посредством определенных RBAC ролей.Read-write access provides the ability to add, delete, or modify server objects, including api-keys, indexes, indexers, data sources, schedules, and role assignments as implemented through RBAC-defined roles.

Все взаимодействия пользователя со службой поиска Azure относятся к одному из следующих режимов: доступ к службе для чтения и записи (права администратора) или доступ к службе только для чтения (права запроса).All user interaction with Azure Search falls within one of these modes: read-write access to the service (administrator rights), or read-only access to the service (query rights). Дополнительные сведения см. в разделе Управление ключами API.For more information, see Manage the api-keys.

Ведение журнала и сведения о системеLogging and system information

Поиск Azure не предоставляет файлы журналов для отдельных служб ни через портал, ни через программные интерфейсы.Azure Search does not expose log files for an individual service either through the portal or programmatic interfaces. На уровне "Базовый" и выше корпорация Майкрософт отслеживает все службы поиска Azure с целью обеспечения доступности не менее 99,9 %, в соответствии с соглашениями об уровне обслуживания (SLA).At the Basic tier and above, Microsoft monitors all Azure Search services for 99.9% availability per service level agreements (SLA). Если служба работает медленно, или пропускная способность опускается ниже пороговых значений, предусмотренных соглашением об уровне обслуживания, то группы поддержки изучают доступные файлы журналов и пытаются устранить проблему.If the service is slow or request throughput falls below SLA thresholds, support teams review the log files available to them and address the issue.

Общие сведения о службе можно получить следующими способами:In terms of general information about your service, you can obtain information in the following ways:

Отслеживание использования ресурсовMonitor resource usage

На панели мониторинга отслеживание ресурсов ограничивается информацией, показанной на панели мониторинга службы, а также несколькими метриками, которые вы можете получить с помощью запроса к службе.In the dashboard, resource monitoring is limited to the information shown in the service dashboard and a few metrics that you can obtain by querying the service. В панели мониторинга службы, в разделе «Использование», вы можете быстро определить, являются ли уровни ресурсов раздела достаточными для вашего приложения.On the service dashboard, in the Usage section, you can quickly determine whether partition resource levels are adequate for your application. Вы можете подготовить внешние ресурсы, такие как мониторинг Azure, если вы хотите записать и сохранить зарегистрированных событий.You can provision external resources, such as Azure monitoring, if you want to capture and persist logged events. Дополнительные сведения см. в разделе мониторинга службы поиска Azure.For more information, see Monitoring Azure Search.

С помощью API REST службы поиска вы можете рассчитать количество документов и индексов, используя программные средства.Using the Search Service REST API, you can get a count on documents and indexes programmatically:

Аварийное восстановление и простои службыDisaster recovery and service outages

Данные можно восстановить, по Поиск Azure не обеспечивает немедленную отработку отказа службы, если происходит сбой на уровне кластера или центра обработки данных.Although we can salvage your data, Azure Search does not provide instant failover of the service if there is an outage at the cluster or data center level. Если сбой кластера произойдет в центре обработки данных, то рабочая группа обнаружит проблему и сделает все возможное для восстановления службы.If a cluster fails in the data center, the operations team will detect and work to restore service. Во время восстановления службы может произойти простой, но вы можете запросить компенсацию кредитов за недоступность службы в соответствии с условиями Соглашения об уровне обслуживания (SLA).You will experience downtime during service restoration, but you can request service credits to compensate for service unavailability per the Service Level Agreement (SLA).

Если требуется непрерывное обслуживание в случае критических сбоев, не контролируемых корпорацией Майкрософт, можно подготовить дополнительную службу в другом регионе и реализовать стратегию георепликации, чтобы обеспечить полную избыточность индексов для всех служб.If continuous service is required in the event of catastrophic failures outside of Microsoft’s control, you could provision an additional service in a different region and implement a geo-replication strategy to ensure indexes are fully redundant across all services.

Пользователи, использующие индексаторы для заполнения и обновления индексов, могут выполнять аварийное восстановление с помощью индексаторов в определенном географическом регионе, используя один источник данных.Customers who use indexers to populate and refresh indexes can handle disaster recovery through geo-specific indexers leveraging the same data source. Две службы в разных регионах, в каждой из которых выполняется индексатор, могут индексировать один источник данных для обеспечения географической избыточности.Two services in different regions, each running an indexer, could index the same data source to achieve geo-redundancy. Если индексация осуществляется из источников данных, которые также обладают географической избыточностью, следует учитывать, что индексаторы поиска Azure могут выполнять добавочную индексацию только из первичных реплик.If you are indexing from data sources that are also geo-redundant, be aware that Azure Search indexers can only perform incremental indexing from primary replicas. В случае отработки отказа свяжите индексатор с новой первичной репликой.In a failover event, be sure to re-point the indexer to the new primary replica.

Если вы не используете индексаторы, вместо них будет использоваться код приложения, одновременно передающий объекты и данные в различные службы поиска.If you do not use indexers, you would use your application code to push objects and data to different search services in parallel. Дополнительные сведения см. в статье Рекомендации по производительности и оптимизации Поиска Azure.For more information, see Performance and optimization in Azure Search.

Архивация и восстановлениеBackup and restore

Так как Поиск Azure не является основным решением для хранения данных, мы не предоставляем формальный механизм для автоматического резервного копирования и самостоятельного восстановления.Because Azure Search is not a primary data storage solution, we do not provide a formal mechanism for self-service backup and restore. Код приложения, используемый для создания и заполнения индекса, де-факто является возможностью восстановления на случай, если индекс удаляется по ошибке.Your application code used for creating and populating an index is the de facto restore option if you delete an index by mistake.

Чтобы перестроить индекс, необходимо удалить его (если он существует), заново создать индекс в службе и перезагрузить, получив данные из основного хранилища данных.To rebuild an index, you would delete it (assuming it exists), recreate the index in the service, and reload by retrieving data from your primary data store.

Масштабирование вверх или внизScale up or down

Каждая поисковая служба стартует минимум с одной реплики и одного раздела.Every search service starts with a minimum of one replica and one partition. Если у вас категория, предоставляющая выделенные ресурсы, щелкните плитку Масштаб на панели мониторинга службы, чтобы настроить использование ресурсов.If you signed up for a tier that provides dedicated resources, click the SCALE tile in the service dashboard to adjust resource usage.

При добавлении емкости или мощности с помощью какого-либо ресурса служба начинает использовать его автоматически.When you add capacity through either resource, the service uses them automatically. Никаких дополнительных действий с вашей стороны не требуется, но будет небольшая задержка, прежде чем произойдет задействование нового ресурса.No further action is required on your part, but there is a slight delay before the impact of the new resource is realized. Подготовка дополнительных ресурсов может занять 15 и более минут.It can take 15 minutes or more to provision additional resources.

Добавление репликAdd replicas

Увеличение количества запросов в секунду (QPS) или достижение высокой производительности осуществляется посредством добавления реплик.Increasing queries per second (QPS) or achieving high availability is done by adding replicas. Каждая реплика имеет одну копию индекса, так что добавление еще ​​одной реплики означает перенос еще одного индекса, доступного для обработки запросов службы.Each replica has one copy of an index, so adding one more replica translates to one more index available for handling service query requests. Для обеспечения высокой доступности требуется не менее 3 реплик (дополнительные сведения см. в статье Масштабирование уровней ресурсов для рабочих нагрузок запросов и индексирования в Поиске Azure).A minimum of 3 replicas are required for high availability (see Capacity Planning for details).

Служба поиска с большим количеством реплик может загружать баланс поисковых запросов по большему числу индексов.A search service having more replicas can load balance query requests over a larger number of indexes. Учитывая уровень объема запросов, пропускная способность запросов будет выше, когда существует больше копий индекса, доступных для обслуживания запроса.Given a level of query volume, query throughput is going to be faster when there are more copies of the index available to service the request. При возникновении задержки запросов возможен позитивный эффект на производительность, как только дополнительные реплики окажутся в сети.If you are experiencing query latency, you can expect a positive impact on performance once the additional replicas are online.

Несмотря на то, что дополнительные реплики повышают пропускную способность, она в точности не удваивается или утраивается при добавлении реплик к вашей службе.Although query throughput goes up as you add replicas, it does not precisely double or triple as you add replicas to your service. Все приложения поиска могут зависеть от внешних факторов, которые могут противоречить показателям производительности запросов.All search applications are subject to external factors that can impinge on query performance. Сложные запросы и задержки в сети являются факторами, влияющими на изменение времени ответа на запрос.Complex queries and network latency are two factors that contribute to variations in query response times.

Добавление разделовAdd partitions

Большинство приложений-служб имеет встроенную потребность в большем количестве реплик, а не секций.Most service applications have a built-in need for more replicas rather than partitions. В случае необходимости повысить количество документов нужно добавить секции, если вы подписаны на службу ценовой категории "Стандартный".For those cases where an increased document count is required, you can add partitions if you signed up for Standard service. Для категории "Базовый" дополнительные секции не предоставляются.Basic tier does not provide for additional partitions.

Для категории "Стандартный" секции добавляются кратно 12 (в частности, 1, 2, 3, 4, 6 или 12).At the Standard tier, partitions are added in multiples of 12 (specifically, 1, 2, 3, 4, 6, or 12). Это артефакт сегментирования.This is an artifact of sharding. Индекс создается в 12 сегментах, которые все вместе могут храниться в одной секции или равномерно распределяться по 2, 3, 4, 6 или 12 секциям (один сегмент на секцию).An index is created in 12 shards, which can all be stored on 1 partition or equally divided into 2, 3, 4, 6, or 12 partitions (one shard per partition).

Удаление репликRemove replicas

После окончания периода большого количества запросов вы можете сократить число реплик с помощью ползунка, когда нагрузки поисковых запросов нормализуются (например, после окончания периода сезонных распродаж).After periods of high query volumes, you can use the slider to reduce replicas after search query loads have normalized (for example, after holiday sales are over). Больше с вашей стороны ничего делать не нужно.There are no further steps required on your part. Уменьшение количества реплик освобождает виртуальные машины в центре обработки данных.Lowering the replica count relinquishes virtual machines in the data center. Теперь ваши запросы и операции приема данных будут работать на меньшем количестве виртуальных машин, чем раньше.Your query and data ingestion operations will now run on fewer VMs than before. Минимальное требование — одна реплика.The minimum requirement is one replica.

Удаление разделовRemove partitions

В отличие от удаления реплик, не требующего дополнительных усилий с вашей стороны, удаление пространства хранения - более сложная задача, особенно если вы используете больше хранилищ, чем может быть удалено.In contrast with removing replicas, which requires no extra effort on your part, you might have some work to do if you are using more storage than can be reduced. Например, если ваше решение использует три секции, то уменьшение размера до одной или двух секций приведет к ошибке, так как новое дисковое пространство меньше, чем требуется для хранения вашего индекса.For example, if your solution is using three partitions, downsizing to one or two partitions will generate an error if the new storage space is less than required for hosting your index. Поэтому, как вы могли предположить, в такой ситуации рекомендуется удалить индексы или документы в соответствующем индексе для освобождения пространства, или сохранить текущую конфигурацию.As you might expect, your choices are to delete indexes or documents within an associated index to free up space, or keep the current configuration.

Не существует метода, задающего конкретные сегменты индекса, хранящиеся в каждом разделе.There is no detection method that tells you which index shards are stored on specific partitions. Каждый раздел обеспечивает примерно 25 ГБ в хранилище, так что вам нужно будет сократить хранилище до размера, который может быть размещен на имеющемся количестве разделов.Each partition provides approximately 25 GB in storage, so you will need to reduce storage to a size that can be accommodated by the number of partitions you have. Если вы хотите вернуться к одному разделу, то нужно вместить в него все 12 сегментов.If you want to revert to one partition, all 12 shards will need to fit.

Чтобы помочь при планировании работы, вы можете проверить хранилище (с использованием раздела Получение статистики индексов), чтобы посмотреть, какой объем на самом деле используется.To help with future planning, you might want to check storage (using Get Index Statistics) to see how much you actually used.

Рекомендации по масштабированию и развертываниюBest practices on scale and deployment

В этом 30-минутном видеоролике представлены рекомендации для расширенных сценариев развертывания, включая геораспределение рабочих нагрузок.This 30-minute video reviews best practices for advanced deployment scenarios, including geo-distributed workloads. См. также статью Рекомендации по производительности и оптимизации Поиска Azure, в которой рассматриваются те же вопросы.You can also see Performance and optimization in Azure Search for help pages that cover the same points.

Дальнейшие действияNext steps

Разобравшись с понятиями, связанными с администрированием службы, вы можете перейти к использованию PowerShell для автоматизации задач.Once you understand the concepts behind service administration, consider using PowerShell to automate tasks.

Мы также рекомендуем ознакомиться со статьей, посвященной производительности и оптимизации.We also recommend reviewing the performance and optimization article.

Также рекомендуется просмотреть видео, упомянутое в предыдущем разделе.Another recommendation is to watch the video noted in the previous section. В нем более подробно рассматриваются приемы, описанные в этом разделе.It provides deeper coverage of the techniques mentioned in this section.