Обмен технологиями

StarRocks построить

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Компания хочет использовать новую архитектуру больших данных и планирует заменить зарубежные платформы больших данных отечественными. Итак, я не понимаю, использовать ли Doris или Starrocks. Если я использую Doris, поскольку он имеет открытый исходный код, я могу напрямую использовать поставщика облачных услуг в будущем. Если вы используете Starrocks, вам придется построить его самостоятельно, но в будущем он обязательно будет коммерциализирован, и вам придется брать деньги. Раньше я использовал doris, но не starRocks. Я хотел проверить, действительно ли он такой же производительный, как ссылка ниже, поэтому я выбрал Starrocks. Используйте его в качестве хранилища данных для замены hive-presto или kudu-impala в нашем предыдущем CDH.

Как вы думаете, StarRocks может заменить улей? Я думаю, что это возможно. Набор Hadoop был тем, от чего Google устал. Преимущество набора Hadoop в том, что он очень стабилен. За последние 20 лет были исправлены почти все основные ошибки. . Вам вообще не обязательно использовать Hadoop, вместо этого вы можете использовать StarRocks.

Проверьте, поддерживает ли процессор

cat /proc/cpuinfo | grep avx2

Если ничего не печатается, то можно менять ЦП.

Be отвечает за расчеты. Если у вас нет этого набора инструкций, вы не сможете его развернуть.

представлять

startrocks — это [хранилище данных] для [анализа данных], которое может заменить традиционный улей.векторизацияАрхитектура ММПизМеханизм хранения столбцов,поддерживатьанализ в реальном времени , параллельные вычисления.Совместим с протоколом MySQL, можно использоватьстыковка клиента MySQL .поддерживатьГоризонтальное расширение . Вся система не имеет внешних зависимостей, то есть для управления ей не нужен Zookeeper или метаданные существуют в MySQL, ей нужно только поддерживать себя.

Он не подходит для транзакционных операций, таких как обновления и другие операции. Данные, используемые для анализа, не изменяются после записи, например данные журнала или отчеты о физическом осмотре и т. д.

Векторизация: относится к тому факту, что после векторизации данных ЦП мог обрабатывать только один элемент, но теперь он может обрабатывать несколько элементов одновременно.

Архитектура MPP: крупномасштабная архитектура параллельной обработки, разделение данных на несколько машин для совместного выполнения, обработка больших объемов данных.

Механизм хранения столбцов: управляет столбцами и поддерживает хранение и анализ таблиц большой ширины. MySQL не очень хорош и сворачивается, когда полей слишком много. Запрос столбцов по отдельности выполняется быстро, и столбцы можно обновлять в реальном времени.

Анализ в реальном времени: скорость анализа запросов относительно высокая, на уровне миллисекунд.

Прикрепление клиента Mysql: например, могут ли navicat или jdbc напрямую ссылаться на него?Подлежит проверке

Горизонтальное расширение: 1 машина слишком слаба, я могу продолжать добавлять машины, чтобы усилить его аналитические способности.

поддерживатьследующееBI-стыковка: включая Tableau, Power BI, FineBI и Smartbi.

В качестве хранилища данных реального времени он может только [Второй уровень】Синхронизация данных, можно в режиме реального времени【миллисекундный уровеньЗапросить

Архитектура системы (необходимо прочитать для обслуживания и строительства)

Ядро системы имеет только процессы FE (Frontend), BE (Backend) или CN (Compute Node).

Интерфейс (интерфейс дисплея), серверная часть (логическое управление), узел

После версии 3.0 поддерживается разделение хранилища и вычислений, а постоянные данные должны храниться в HDFS. Конечно, вы также можете объединить хранилище и вычисления.

3.0 также поддерживает обе архитектуры.

В чем разница между ними? Если хранилище и вычисления интегрированы, вам необходимо скопировать данные в startRocks. Если хранилище и вычисления разделены, вы можете просто использовать данные напрямую в HDFS. На один шаг меньше для копирования. Разделение хранилища и вычислений экономит деньги и диски, а также обеспечивает лучшее динамическое расширение. Вам не нужно беспокоиться о хранилище при расширении, просто расширяйте вычислительные узлы напрямую. Недостатком является то, что вам необходимо поддерживать дополнительный набор внешних данных.

Гибридное развертывание не поддерживается. Если хранилище и вычисления интегрированы, вы не можете разделить хранилище и вычисления.

Фе отвечает за координацию и управление каталогом.

Интегрированное хранение и расчет

Будь ответственнымхранилищеивычислить

Фе (подробная версия)

Ответственный за управлениеметаданные, управлять клиентскими подключениями,планирование запросов, планирование запросов.

Метаданные FE хранятся в памяти, а также имеется копия на диске.

У FE три роли: лидер, последователь и наблюдатель.

Лидер избирается и отвечает за чтение и письмо. Затем после записи метаданные обновляются и синхронизируются с подписчиками и наблюдателями. Только половина подписчиков успешна.

У Follwer нет разрешения на запись, только разрешение на чтение

Observer, как и Follower, не является обязательным для развертывания, может улучшить скорость запросов и не участвует в выборах, что эквивалентно добавлению тигру большей власти.

Будь (подробная версия)

Каждый BE одинаков (нет лидера или последователя), но не каждый BE имеет полные данные. FE распределяет данные для BE, а BE сохраняет их и генерирует индексы.

Вычисление разделит sql на логические единицы (уровень кода) в соответствии с грамматическим значением, а затемПо данным распределенияСтаньте физической единицей (аппаратный уровень), а затем выполните локально.

Метаданные: Никто этого не знает. Честно говоря, я даже не хочу это писать, просто чтобы позаботиться о Сяобае. Например, какой это тип данных: строка или число. Это метаданные, данные, используемые для изменения данных.

Планирование запросов: сколько производительности будет потреблять план, какой SQL следует использовать, оптимизировать и преобразовать в физический план.

Планирование запросов: выберите, что будет выполнять этот физический план.

Интегрированное управление данными хранения, расчета и вывода

Самый маленький накопитель StarRocks называется планшетом. Мы можем разделить себя, а затем указать сегменты.

Картинка разбивается по столбцу времени, затем указываются сегменты для 4 полей (4 столбца, фактически можно использовать 1 столбец), а затем указываются 3 копии, и данные каждого столбца и каждой единицы данных распределены по разным узлам. A-1, A-2 и A-3 — это одни и те же данные и резервные копии A.

При расширении нет необходимости останавливать сервис. Добавление узлов будет автоматически мигрировать, а при уменьшении количества узлов данные будут автоматически распределяться равномерно.

Разделение хранения и расчета

представлен【кэш】концепции, Be несет [только] ответственность за расчет, а затемПереименован в Cn(вычислительный узел-вычислительный узел)

Кэширование: данные будут автоматически кэшироваться в зависимости от частоты запросов.Динамические изменения

Динамические изменения: разделены на 3 уровня: память, локальный и внешний источник. Самые горячие данные находятся в памяти, остальные — на локальном диске, а затем холодные данные (реже используемые) — во внешних источниках.Динамическая корректировка данных в зависимости от частоты вашего доступа

При создании таблицы с использованием раздельного хранения и вычислений необходимо указать ему, включать ли кэширование.

Поддерживается следующее внутреннее хранилище:

  • Система хранения объектов, совместимая с протоколом AWS S3 (поддерживает основные системы хранения объектов, такие как AWS S3, Google GCP, Alibaba Cloud OSS, Tencent Cloud COS, Baidu Cloud BOS, Huawei Cloud OBS и MinIO и т. д.)
  • Хранилище больших двоичных объектов Azure
  • HDFS развернута в традиционных центрах обработки данных


Каждое предложение о системной архитектуре официального сайта я закончил здесь своими словами. Начните строить ниже.

Опыт быстрого старта

Он использует Docker-контейнер для упаковки среды, поэтому его можно запустить напрямую.

Сначала установите докер с объемом памяти не менее 4 ГБ и 10 ГБ свободного места.

Процессор нашего сервера не поддерживает avx2. Я использую виртуальную машину и планирую установить Ubuntu.22 на Windows, поскольку мой персональный компьютер поддерживает avx2. ---Когда закончу скачивать, начну писать остальное.


 

Ссылаться на:

📚 【源码解析】StarRocks 查询优化系列文章 - 原理解读 - StarRocks中文社区论坛

СтарРокс | СтарРокс

Предварительные условия для развертывания StarRocks

https://www.cnblogs.com/huanghanyu/p/18186894