Введение (анализ болевых точек)
Для бэкэнд-разработчиков и архитекторов быстрорастущих контент-платформ, веб-сайтов электронной коммерции или корпоративных приложений мощная и гибкая поисковая система является основной инфраструктурой для повышения удобства работы пользователей и эффективности бизнеса. Однако при создании собственных или использовании традиционных поисковых сервисов в облаке вы часто сталкиваетесь с такими проблемами:
- С пиками трафика трудно справиться.При столкновении с крупными акциями и горячими событиями QPS запросов мгновенно возрастал, а ресурсы стационарного кластера перегружались, что приводило к замедлению отклика или даже простою поискового сервиса, что напрямую влияло на конверсию пользователей и доходы бизнеса.
- Трудно найти баланс между ресурсами и затратами.Чтобы обеспечить стабильность в пиковые периоды, необходимо выделять ресурсы под наибольший трафик, но в подавляющем большинстве случаев большое количество вычислительных ресурсов и ресурсов хранения простаивает, что приводит к значительным потерям.
- Высокая сложность эксплуатации и обслуживания.Расширение и сокращение кластеров, обновление версий, управление индексами, настройка производительности и другие работы по эксплуатации и обслуживанию требуют инвестиций профессиональной команды и много энергии, технический порог высок, что отвлекает внимание от основного бизнеса.
Если вы боретесь со стабильностью, высокой стоимостью и большими затратами на эксплуатацию и обслуживание поисковых сервисов, то в этой статье вы узнаете о комплексном облачном решении для эластичного поиска.
Диаграмма и обзор архитектуры решения
Цель.Фотография стоит тысячи слов и дает читателю возможность увидеть общую картину.
Архитектурная диаграмма.

Обзор архитектуры.
Пользовательское приложение (Web/App/server) инициирует поисковый запрос, который сначала распределяется через Tencent Cloud Load Balancing (CLB), а затем запрос обращается к сервису Tencent Cloud Elasticsearch (ES) через защищенную частную сеть (VPC). Кластер ES используетБессерверная архитектураилиЭластичное масштабирование групп на основе показателей мониторингаКластер ES можно масштабировать в считанные секунды в зависимости от нагрузки на вычислительные узлы в режиме реального времени. Данные записываются в реальном времени через такие компоненты, как Kafka, и внутри кластера ES черезИнтеллектуальное горячее и холодное разделениеМеханизм сохраняет горячие данные с высокой частотой доступа на SSD-дисках для обеспечения производительности, автоматически переводит холодные данные с низкой частотой доступа в объектное хранилище (COS) и дополнительно снижает затраты на хранение благодаря технологии сжатия ZSTD. Все решение обеспечивает максимальную оптимизацию затрат, гарантируя миллисекундный отклик и высокую доступность.
Ценностное предложение.Принятие программыЧрезвычайная эластичностьСправляйтесь с пиковыми нагрузками, используяИнтеллектуальное наслоение и сжатиеСокращение комплексных расходов за счетПолностью управляемые услугиУстраняет бремя эксплуатации и обслуживания и идеально решает все болевые точки, о которых говорилось во введении.
Основные продукты и компоненты
- Название компонента. Tencent Cloud Elasticsearch Service (ES)
- Играет роль.В основе всего решения лежит распределенный поисково-аналитический движок, который обрабатывает все запросы на индексацию данных и запросы.
- Ключевые рекомендации по конфигурации/выбору.
- Выбор архитектуры.Настоятельно рекомендуется для сценариев, в которых трафик сильно колеблется.Бессерверная версияВ нем действительно реализовано эластичное масштабирование с оплатой по факту и в миллисекунды. Для сценариев с регулярными колебаниями можно выбрать версию с эластичным масштабированием и настроить политику масштабирования на основе использования процессора или QPS запросов.
- Конфигурация узла.Рекомендуется включитьэксклюзивный главный узелдля повышения стабильности кластера; узлы данных используютВысокий уровень IOилиобщее назначениеэкземпляры с облачными дисками SSD для оптимальной производительности ввода-вывода.
- Конфигурация функций.Обязательно включитеУправление жизненным циклом индексирования (ILM)функция для автоматизации стратификации "горячая температура-холод"; включите функциюСжатие ZSTDдля более высокого коэффициента сжатия и высокой скорости сжатия.
- Почему стоит выбрать именно его.Tencent Cloud ES - это 100%-совместимый сервис Elasticsearch с открытым исходным кодом, который предоставляет все возможности открытого исходного кода, а также дополнительные функции, такие как безопасность корпоративного уровня, мониторинг и оповещения, а также обновление одним щелчком мыши, так что пользователям не нужно заботиться о базовой инфраструктуре, а нужно сосредоточиться только на бизнес-логике поиска.
- Название компонента. Tencent Cloud Object Storage (COS)
- Играет роль.Служит базовым хранилищем для уровня ES Cold Data Tier, в котором хранятся архивные данные с низкой частотой доступа и предоставляются высоконадежные и очень недорогие услуги хранения.
- Ключевые рекомендации по конфигурации/выбору.Создано для ES Cold DataСтандартное хранениеилиНизкочастотное хранениеВедер достаточно, их долговечность составляет до 99,9999999999% (12 9с), при этом дополнительная настройка не требуется.
- Почему стоит выбрать именно его.COS имеет гораздо более низкую стоимость хранения, чем высокопроизводительное блочное хранилище, а благодаря бесшовной интеграции с возможностями ES ILM холодные данные могут быть безболезненно утоплены, что позволяет сократить расходы на хранение более чем на 80% без потери прослеживаемости данных.
- Название компонента. Tencent Cloud Load Balancing (CLB)
- Играет роль.Являясь единым входом в сервис, он автоматически распределяет массивные поисковые запросы между несколькими узлами данных ES в бэкенде, устраняя единые точки отказа и предоставляя такие возможности, как разгрузка HTTPS.
- Ключевые рекомендации по конфигурации/выбору.опцияПрикладной CLBнастроен как TCP/UDP-приемник, который перенаправляет на порт 9200 узла ES. Рекомендуется привязать устойчивый публичный IP и настроить ограничение пропускной способности.
- Почему стоит выбрать именно его.Обеспечивается балансировка нагрузки трафика доступа для повышения доступности и масштабируемости сервиса, при этом внутренние детали внутреннего кластера скрыты от клиента, что упрощает управление им.
Краткое описание преимуществ программы
- ⚡ Экстремальная эластичность с посекундным масштабированием.Благодаря использованию технологии Serverless или эластичного масштабирования, система может быть мгновенно расширена до необходимого масштаба в зависимости от потребностей бизнеса, а ресурсы автоматически восстанавливаются после пика трафика, что позволяет по-настоящему реализовать принцип оплаты по факту использования.
- 💸 Значительное снижение общих затрат.Благодаря интеллектуальному разделению горячих и холодных данных и технологии сжатия ZSTD стоимость хранения холодных данных снижается более чем на 80% и позволяет избежать потерь, связанных с резервированием большого количества ресурсов для преодоления пиковых нагрузок, а комплексная стоимость может быть оптимизирована на 50%+.
- 🛡️ Готовые решения корпоративного класса с высокой степенью доступности.Он обеспечивает SLA доступности услуг 99,95%, встроенный механизм реплик, развертывание перекрестной доступности, возможность автоматического обхода отказа, а также функции безопасности, такие как изоляция сети VPC, группы безопасности, журналы доступа и т. д., для обеспечения непрерывности бизнеса и безопасности данных.
- 🔧 Операционная свобода и ориентация на инновации в бизнесе.Полностью управляемый сервис избавляет от утомительной работы по эксплуатации и обслуживанию, такой как развертывание оборудования, установка программного обеспечения, обновление версий, восстановление после сбоев и т. д. Вам нужно только выполнить простую настройку через консоль или API, вы можете получить мощные возможности поиска, так что команда может больше сосредоточиться на развитии основного бизнеса.
Сценарии применения и применимые клиенты
- Типичные сценарии применения.
- Веб-сайт/приложение для электронной коммерции.Поиск товаров, фильтрация, рекомендуемые списки, чтобы справиться с 618, двойными одиннадцатью и другими большими акциями во время мгновенного массового запроса.
- Контент и информационные платформы.Поиск по ключевым словам и полнотекстовый поиск новостей, видео, статей и многого другого.
- Анализ журналов и мониторинг операций (ELK).Сбор, хранение и анализ массивных данных журналов корпоративных серверов и приложений в режиме реального времени для поиска и устранения неисправностей и анализа бизнес-проблем.
- Поиск данных внутри предприятия.Такие, как CRM, ERP и другие системы в рамках запроса информации о клиенте, заказе, продукте.
- Применимые характеристики клиента.
- В нагрузке на бизнес наблюдаются значительные пики и спады, причем пики непредсказуемы.
- Объем данных огромен (уровень TB-PB), а доступ к данным имеет четкую характеристику "горячий" и "холодный".
- Средние и крупные предприятия, которые ищут экономически эффективные решения и хотят оптимизировать расходы на инфраструктуру.
- Отсутствие профессиональной команды Elasticsearch Ops для всех разработчиков, которые хотят получить готовый, стабильный и надежный поисковый сервис.