Развертывание Selena с Docker
Этот учебник охватывает:
- Запуск Selena в одном Docker-контейнере
- Загрузку двух публичных наборов данных, включая базовое преобразование данных
- Анализ данных с помощью SELECT и JOIN
- Базовое преобразование данных (T в ETL)
Следите за видео, если предпочитаете
Используемые данные предоставлены NYC OpenData и Национальными центрами экологической информации.
Оба этих набора данных очень большие, и поскольку этот учебник предназначен для знакомства с работой в Selena, мы не будем загружать данные за последние 120 лет. Вы можете запустить Docker-образ и загрузить эти данные на машине с 4 ГБ оперативной памяти, выделенной для Docker. Для более крупных отказоустойчивых и масштабируемых развертываний у нас есть другая документация, которую мы предоставим позже.
В этом документе много информации, и она представлена с пошаговым содержанием в начале и техническими деталями в конце. Это сделано для достижения следующих целей в данном порядке:
- Позволить читателю загрузить данные в Selena и проанализировать эти данные.
- Объяснить основы преобразования данных во время загрузки.
Предварительные требования
Docker
- Docker
- 4 ГБ оперативной памяти, выделенной для Docker
- 10 ГБ свободного дискового пространства, выделенного для Docker
SQL-клиент
Вы можете использовать SQL-клиент, предоставленный в Docker-среде, или использовать клиент в вашей системе. Многие MySQL-совместимые клиенты будут работать, и это руководство охватывает настройку DBeaver и MySQL Workbench.
curl
curl используется для отправки задания загрузки данных в Selena и для скачивания наборов данных. Проверьте, установлен ли он, выполнив curl или curl.exe в командной строке вашей ОС. Если curl не установлен, получите curl здесь.
Терминология
FE
Frontend-узлы отвечают за управление метаданными, управление подключениями клиентов, планирование запросов и планирование выполнения запросов. Каждый FE хранит и поддерживает полную копию метаданных в своей памяти, что гарантирует равноценные услуги среди FE.
BE
Backend-узлы отвечают как за хранение данных, так и за выполнение планов запросов.
Запуск Selena
docker run -p 9030:9030 -p 8030:8030 -p 8040:8040 -itd \
--name quickstart starrocks/allin1-ubuntu
SQL-клиенты
Эти три клиента протестированы с данным руководством, вам ну жен только один:
- mysql CLI: Вы можете запустить его из среды Docker или с вашей машины.
- DBeaver доступен в виде community версии и Pro версии.
- MySQL Workbench
Настройка клиента
- mysql CLI
- DBeaver
- MySQL Workbench
Самый простой способ использовать mysql CLI — запустить его из контейнера Selena starrocks-fe:
docker exec -it quickstart \
mysql -P 9030 -h 127.0.0.1 -u root --prompt="StarRocks > "
Если вы хотите установить mysql CLI, разверните установка mysql клиента ниже:
установка mysql клиента
- macOS: Если вы используете Homebrew и не нуждаетесь в MySQL Server, выполните
brew install mysqlдля установки CLI. - Linux: Проверьте вашу систему репозиториев для клиента
mysql. Например,yum install mariadb. - Microsoft Windows: Установите MySQL Community Server и запустите предоставленный клиент, или выполните
mysqlиз WSL.
- Установите DBeaver и добавьте соединение:

- Настройте порт, IP и имя пользователя. Протестируйте соединение и нажмите Finish, если тест прошел успешно:

- Установите MySQL Workbench и добавьте соединение.
- Настройте порт, IP и имя пользователя, затем протестируйте соединение:

- Вы увидите предупреждения от Workbench, поскольку он проверяет конкретную версию MySQL. Вы можете игнорировать предупреждения, и когда появится запрос, вы можете настроить Workbench, чтобы он перестал отображать предупреждения:

Скачивание данных
Скачайте эти два набора данных на вашу машину. Вы можете скачать их на хост-машину, где вы запускаете Docker, их не нужно скачивать внутри контейнера.
Данные о ДТП в Нью-Йорке
curl -O https://raw.githubusercontent.com/StarRocks/demo/master/documentation-samples/quickstart/datasets/NYPD_Crash_Data.csv