Как начать работать с Managed Service for YDB
В этой инструкции вы создадите базу данных YDB
Для работы с БД в Yandex Managed Service for YDB также доступны:
Перед началом работы
-
Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь, если вы еще не зарегистрированы. -
Если у вас еще нет каталога, создайте его:
-
В консоли управления
в списке слева выберите нужное облако. -
Справа сверху нажмите кнопку Создать каталог.
-
Введите имя каталога. Требования к имени:
- длина — от 3 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
(Опционально) Введите описание каталога.
-
Выберите опцию Создать сеть по умолчанию. Будет создана сеть с подсетями в каждой зоне доступности. Также в этой сети будет создана группа безопасности по умолчанию, внутри которой весь сетевой трафик разрешен.
-
Нажмите кнопку Создать.
-
Создайте базу данных
Вы можете создать БД в бессерверной (Serverless) конфигурации или с выделенными серверами (Dedicated). Подробнее о различиях в конфигурациях читайте в разделе Serverless и Dedicated режимы работы. Тип БД нельзя изменить после создания.
Примечание
Для работы в режиме совместимости с Amazon DynamoDB используйте бессерверную (Serverless) конфигурацию БД.
Создайте бессерверную БД
-
В консоли управления
выберите каталог, в котором будет создана БД. -
В списке сервисов выберите Managed Service for YDB.
-
Нажмите кнопку Создать базу данных.
-
Введите Имя БД. Требования к имени:
- длина — от 3 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
В блоке Тип базы данных выберите опцию
Serverless
.Вы можете оставить параметры по умолчанию для создаваемой БД и изменить их позже. Подробнее о параметрах БД читайте в разделе Создать Serverless базу данных.
-
Нажмите кнопку Создать базу данных.
Дождитесь запуска БД. В процессе создания БД будет иметь статус Provisioning
, а когда станет готова к использованию — статус сменится на Running
.
-
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
-
Создайте базу данных:
yc ydb database create <имя_БД> --serverless
Где
<имя_БД>
— имя вашей базы данных.Результат:
done (6s) id: etn95g8jk8g0******** folder_id: b1g7gvsi89m3******** created_at: "2022-05-30T07:26:44Z" name: test status: PROVISIONING endpoint: grpcs://ydb.serverless.yandexcloud.net:2135/?database=/ru-central1/b1gia87mbaom********/etn95g8jk8g0******** serverless_database: storage_size_limit: "53687091200" location_id: ru-central1 backup_config: backup_settings: - name: daily backup_schedule: daily_backup_schedule: execute_time: hours: 17 backup_time_to_live: 172800s type: SYSTEM document_api_endpoint: https://docapi.serverless.yandexcloud.net/ru-central1/b1gia87mbaom********/etn95g8jk8g0******** monitoring_config: {}
Будет создана база с параметрами по умолчанию. Вы сможете изменить параметры позже. Подробнее о параметрах БД читайте в разделе Создать Serverless базу данных.
-
Проверьте статус созданной БД:
yc ydb database get <имя_БД>
Где
<имя_БД>
— имя созданной БД.В процессе создания БД будет иметь статус
PROVISIONING
, а когда станет готова к использованию — статус сменится наRUNNING
.
Создайте БД на выделенных серверах
-
В консоли управления
выберите каталог, в котором будет создана БД. -
В списке сервисов выберите Managed Service for YDB.
-
Нажмите кнопку Создать базу данных.
-
Введите Имя БД. Требования к имени:
- длина — от 3 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
В блоке Тип базы данных выберите опцию
Dedicated
. -
В блоке Вычислительные ресурсы выберите тип и количество вычислительных ресурсов.
-
В блоке Группы хранения выберите тип диска и количество групп хранения, определяющее суммарный объем хранилища.
-
В блоке Сеть настройте параметры сети:
-
(Опционально) В поле Публичные IP-адреса выберите опцию Присвоить, если вы планируете отправлять запросы к БД не только из сети Yandex Cloud, но и через интернет.
Важно
Потребление исходящего интернет-трафика для баз Managed Service for YDB с внешними IP-адресами учитывается по действующим тарифам.
Начисления за исходящий интернет-трафик, возникшие в результате использования Managed Service for YDB, будут компенсированы грантами.
-
Выберите существующую сеть из списка Облачная сеть или создайте новую:
- Нажмите кнопку Создать новую.
- В открывшемся окне укажите Имя новой сети.
- (Опционально) Выберите опцию Создать подсети. Подсети в каждой зоне доступности будут созданы автоматически.
- Нажмите кнопку Создать сеть.
-
В блоке Подсети для каждой зоны доступности выберите подсеть или создайте новую:
- Нажмите кнопку Создать новую.
- В открывшемся окне укажите Имя новой подсети.
- (Опционально) Введите Описание подсети.
- Выберите из списка Зона нужную зону.
- Задайте адрес подсети в формате CIDR
. - Нажмите кнопку Создать подсеть.
Настойки блока Сеть нельзя изменить после создания БД.
-
-
Нажмите кнопку Создать базу данных.
Дождитесь запуска БД. В процессе создания БД будет иметь статус
Provisioning
, а когда станет готова к использованию — статус сменится наRunning
.
-
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
-
При необходимости создайте облачную сеть и подсети для каждой зоны доступности.
-
Создайте базу данных:
yc ydb database create <имя_БД> \ --dedicated \ --resource-preset <конфигурация> \ --storage type=<тип_носителя>,groups=<количество_групп_хранения> \ --public-ip \ --network-name default\ --async
Где:
--resource-preset STR
— конфигурация вычислительных ресурсов узла. Возможные значения перечислены в колонке Имя конфигурации в таблице раздела База данных на выделенных ресурсах (Dedicated).--storage STR
— тип носителя и количество групп хранения в форматеtype=<тип_носителя>,groups=<количество_групп_хранения>
. Для типаssd
одна группа хранения вмещает 100 ГБ данных.--public-ip
— флаг назначения публичных IP-адресов. Без этого флага вы не сможете подключиться к создаваемой базе данных из интернета.--network-name STR
— имя облачной сети, в которой будет создана база данных. Может быть указана сетьdefault
.--async
— флаг асинхронного создания БД.
Подробнее о параметрах БД читайте в разделе Создать Serverless базу данных.
Результат:
done (7m18s) id: etnk1u65e4sh******** folder_id: b1g7gvsi89m3******** created_at: "2022-05-31T10:10:12Z" name: test-ded status: PROVISIONING endpoint: grpcs://lb.etnk1u65e4sh********.ydb.mdb.yandexcloud.net:2135/?database=/ru-central1/b1gia87mbaom********/etnk1u65e4sh******** resource_preset_id: medium storage_config: storage_options: - storage_type_id: ssd group_count: "1" storage_size_limit: "107374182400" scale_policy: fixed_scale: size: "1" network_id: enpqkm0od2bu******** subnet_ids: - b0cmespgm8o3******** - e2lif378n1pg******** - e9b72lv142k4******** dedicated_database: resource_preset_id: medium storage_config: storage_options: - storage_type_id: ssd group_count: "1" storage_size_limit: "107374182400" scale_policy: fixed_scale: size: "1" network_id: enpqkm0od2bu******** subnet_ids: - b0cmespgm8o3******** - e2lif378n1pg******** - e9b72lv142k4******** assign_public_ips: true assign_public_ips: true location_id: ru-central1 backup_config: backup_settings: - name: daily backup_schedule: daily_backup_schedule: execute_time: hours: 17 backup_time_to_live: 172800s type: SYSTEM monitoring_config: {}
-
Проверьте статус созданной БД:
yc ydb database get <имя_БД>
Где
<имя_БД>
— имя созданной БД.В процессе создания БД будет иметь статус
PROVISIONING
, а когда станет готова к использованию — статус сменится наRUNNING
.
Выполните запрос к базе данных
-
В консоли управления
выберите каталог, в котором находится нужная БД. -
В списке сервисов выберите Managed Service for YDB.
-
Выберите созданную ранее БД.
-
Перейдите на вкладку Навигация.
-
Нажмите кнопку Новый SQL-запрос и введите текст запроса:
SELECT 1;
-
Нажмите кнопку Выполнить.
Ниже будет отображен результат выполнения запроса:
# column0 0 1
-
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
-
Чтобы управлять вашими БД из командной строки, установите
YDB CLI. -
Для аутентификации YDB CLI в Yandex Cloud получите IAM-токен и экспортируйте его в переменную окружения:
export IAM_TOKEN=`yc iam create-token`
-
Получите эндпоинт и путь БД:
yc ydb database get ydb-prod
Результат:
... endpoint: grpcs://ydb.serverless.yandexcloud.net:2135/?database=/ru-central1/b1gia87mbaom********/etnudu2n9ri3******** ...
Здесь часть строки
grpcs://ydb.serverless.yandexcloud.net:2135
содержит эндпоинт, а/ru-central1/b1gia87mbaom********/etnudu2n9ri3********
— путь БД. -
Выполните запрос к созданной ранее БД, используя полученные значения эндпоинта и пути БД:
ydb \ --endpoint grpcs://ydb.serverless.yandexcloud.net:2135 \ --database /ru-central1/b1gia87mbaom********/etnudu2n9ri3******** \ yql -s "SELECT 1;"
Результат:
┌─────────┐ | column0 | ├─────────┤ | 1 | └─────────┘
Что дальше
- Узнайте подробнее о работе с БД.
- Изучите концепции сервиса.
- Ознакомьтесь с языком запросов YQL
.