Кластер — это группа серверов, состоящая из нескольких узлов. DWS организуется с помощью кластеров. Кластер хранилища данных содержит узлы с одинаковым флейвором в одной подсети. Эти узлы работают совместно, предоставляя сервисы.
Каждый кластер DWS содержит от 3 до 256 узлов.
Необходимо указать флейворы узлов при создании кластера DWS. Ресурсы CPU, памяти и хранилища различаются в зависимости от флейворов узлов.
Вы можете создавать снапшоты для резервного копирования данных кластера DWS. Снапшот сохраняется, пока вы не удалите его в management console. Автоматические снапшоты нельзя удалить вручную. Снапшоты будут занимать ваши квоты OBS.
Проекты используются для группировки и изоляции ресурсов OpenStack (вычислительные ресурсы, ресурсы хранения и сетевые ресурсы). Проект может представлять отдел или команду проекта. Для одной учётной записи можно создать несколько проектов.
База данных управляет объектами данных и изолирована от других баз данных. При создании объекта вы можете указать для него tablespace. Если вы не укажете его, объект будет сохранён в пространстве PG_DEFAULT по умолчанию. Объекты, управляемые базой данных, могут распределяться по нескольким tablespace.
OLAP является основной функцией кластеров DWS. Он поддерживает сложный анализ, предоставляет поддержку принятия решений, адаптированную к результатам анализа, и обеспечивает интуитивные результаты запросов.
На каждом узле кластера хранилища данных системы памяти и дисковые системы хранилища независимы друг от друга. С помощью MPP DWS распределяет сервисные данные по различным узлам в зависимости от модели базы данных и характеристик приложения. Узлы соединены через сеть и совместно обрабатывают вычислительные задачи как кластер, предоставляя сервисы баз данных, соответствующие потребностям сервиса.
Архитектура shared-nothing — это распределённая вычислительная архитектура. Каждый узел независим, поэтому узлы не конкурируют за ресурсы, что повышает эффективность работы.
Каждый кластер хранилища данных имеет определённую версию базы данных. Вы можете проверить версию при создании кластера хранилища данных.
Вы можете использовать клиент для подключения к кластеру DWS. Клиент может использоваться для подключения на платформе cloud и через Интернет.
DWS использует пользователей и роли для контроля доступа к базам данных. Роль может быть пользователем базы данных или группой пользователей базы данных в зависимости от настройки роли. В DWS разница между ролями и пользователями заключается в том, что роль по умолчанию не имеет разрешения LOGIN. В DWS один пользователь может иметь только одну роль, но вы можете разместить роль пользователя под родительской ролью, чтобы предоставить пользователю несколько разрешений.
В DWS instances представляют собой группу процессов базы данных, работающих в памяти. Instance может управлять одной или несколькими базами данных, образующими кластер. Кластер — это область на диске хранения. Эта область инициализируется во время установки и состоит из каталога. Каталог, называемый data directory, хранит все данные и создаётся с помощью initdb. Теоретически один сервер может запускать несколько instances на разных портах, но DWS управляет только одним instance одновременно. Запуск и остановка instance зависят от конкретного data directory. В целях совместимости может быть введено понятие имени instance.
DWS поддерживает только относительные табличные пространства. Табличное пространство представляет собой подкаталог в каталоге данных экземпляра базы данных. Может быть несколько табличных пространств, которые хранят физические файлы базы данных. Файлы физически изолируются с помощью табличных пространств и управляются файловой системой.
DWS схемы логически разделяют базы данных. Все объекты базы данных создаются в определённых схемах. В DWS схемы и пользователи слабо связаны. При создании пользователя автоматически создаётся схема с тем же именем, что и у пользователя. Вы также можете создать схему или указать другую схему.
Таблица V2 — это таблица, у которой colversion, определённый в синтаксисе CREATE TABLE, имеет значение 2.0 при создании таблицы, что указывает на то, что каждый столбец column-store таблицы объединяется и сохраняется в файле с именем relfilenode.C1.0, а данные хранятся на локальном диске. Для кластеров со связью вычислений и хранилища, если colversion не указана, создаваемая column-store таблица по умолчанию является таблицей V2.
Таблица V3 — это таблица, у которой colversion, определённый в синтаксисе CREATE TABLE, имеет значение 3.0 при создании таблицы, что указывает на то, что каждый столбец column-store таблицы сохраняется в файле с именем C1_field.0, а данные хранятся в файловой системе OBS. Для кластеров со связью вычислений и хранилища, если colversion не указана, создаваемая column-store таблица по умолчанию является таблицей V3.
В DWS транзакции управляются контролем многоверсионной конкурентности (MVCC) и двухфазной блокировкой (2PL). Это обеспечивает плавное чтение и запись данных. В DWS MVCC сохраняет исторические версии данных вместе с текущей версией кортежа. DWS использует процесс VACUUM вместо сегментов отката для регулярного удаления исторических версий данных. Это не влияет на операции пользователей, за исключением настройки производительности. Транзакции автоматически фиксируются в DWS.
Группа узлов — базовое понятие ядра базы данных и содержит несколько узлов кластера. Физический кластер содержит несколько групп узлов, и каждая группа узлов представляет собой логический кластер, к которому могут обращаться пользователи.
В архитектуре со связью вычислений и хранилища каждый физический кластер делится на несколько групп узлов, и каждая группа узлов является логическим кластером.
Виртуальный склад (VW) — это логический кластер в архитектуре с разъединёнными вычислениями и хранилищем.
В связанном кластере хранения‑вычислений узловая группа называется логическим кластером. В несвязанном кластере хранения‑вычислений узловая группа называется VW.