Cloud Spanner: ваша первая база данных

1. Обзор

Последнее обновление: 23.07.2020

Что такое Cloud Spanner?

Google Cloud Spanner — это глобально распределенная база данных, соответствующая принципам ACID, которая автоматически обрабатывает реплики, шардинг и транзакции, позволяя быстро масштабировать систему в соответствии с любыми потребностями и обеспечивая успех ваших продуктов.

Основные характеристики

  • Реляционная база данных, созданная для масштабирования: все, что вы ожидаете от реляционной базы данных — схемы, SQL-запросы и ACID-транзакции — проверено в боевых условиях и готово к глобальному масштабированию.
  • Доступность 99,999%: Cloud Spanner обеспечивает лучшую в отрасли доступность 99,999% для многорегиональных экземпляров — в 10 раз меньше времени простоя, чем при использовании четырех девяток — и обеспечивает прозрачную синхронную репликацию между регионами и многорегиональными конфигурациями.
  • Автоматическое сегментирование: Cloud Spanner оптимизирует производительность, автоматически сегментируя данные в зависимости от нагрузки запросов и размера данных. В результате вы можете тратить меньше времени на масштабирование базы данных и вместо этого сосредоточиться на масштабировании своего бизнеса.

Просмотреть все функции

Что вы узнаете

  • Создание экземпляров Cloud Spanner с помощью консоли Google Cloud.
  • Создание новой базы данных в экземпляре Cloud Spanner.
  • Использование базы данных sampledb для загрузки и запроса тестовых данных.
  • Удаление экземпляра Cloud Spanner.

2. Настройка и требования

Настройка среды для самостоятельного обучения

Если у вас еще нет учетной записи Google (Gmail или Google Apps), вам необходимо ее создать . Войдите в консоль Google Cloud Platform ( console.cloud.google.com ) и создайте новый проект:

50983ac3fdbbf8d0.png

ea581205026ca8e3.png

Запомните идентификатор проекта (Project ID) — уникальное имя для всех проектов Google Cloud (указанное выше имя уже занято и вам не подойдёт, извините!). В дальнейшем в этом практическом занятии оно будет обозначаться как PROJECT_ID .

Далее вам потребуется включить оплату в консоли Cloud, чтобы использовать ресурсы Google Cloud.

Выполнение этого практического задания не должно обойтись вам дороже нескольких долларов, но может стоить больше, если вы решите использовать дополнительные ресурсы или оставите их запущенными (см. раздел «очистка» в конце этого документа).

Новые пользователи Google Cloud могут получить бесплатную пробную версию стоимостью 300 долларов .

3. Откройте Spanner в облачной консоли.

В консоли Google Cloud для навигации слева нажмите значок меню в левом верхнем углу экрана.

Прокрутите вниз и выберите «Гвоздь»:

46fe7785700d335.png

Теперь вы должны увидеть пользовательский интерфейс Cloud Spanner, и, если вы используете проект, в котором еще не включен API Cloud Spanner, вы увидите диалоговое окно с запросом на его включение. Если API уже включен, вы можете пропустить этот шаг.

Нажмите «Включить», чтобы продолжить:

323474ade0d07c48.png

4. Создайте экземпляр

Сначала вам нужно создать экземпляр Cloud Spanner. В пользовательском интерфейсе нажмите «Создать экземпляр», чтобы создать новый экземпляр:

1126607e9b3a95f7.png

После нажатия на кнопку «Создать экземпляр» вы перейдете на страницу создания экземпляра. Введите имя экземпляра и выберите конфигурацию.

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

f5f41323226be8b7.png

После выбора конфигурации сводная информация отобразится на правой панели:

be5e99711a47047f.png

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

Нажмите кнопку «Создать», чтобы создать экземпляр.

97cf7427660e36bd.png

Ваш экземпляр Cloud Spanner готов к использованию.

13ac2d48ea60370b.png

5. Создайте базу данных.

Для создания новой базы данных нажмите кнопку «Создать базу данных»:

71761f0803038a5.png

Введите имя для вашей новой базы данных. При желании на этом этапе вы также можете указать схему.

d7ca47df879931c2.png

На этом этапе мы пропустим указание схемы и нажмем кнопку «Создать», чтобы создать пустую базу данных.

e398ab29aad3d601.png

После нажатия кнопки "Создать" будет создана новая база данных:

4164af0df20ca180.png

6. Загрузка и запрос выборочных данных

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

Мы запустим программу в Google Cloud Shell . Если вы впервые используете Google Cloud Shell для этого проекта, вы увидите логотип Google Cloud Shell на верхней панели навигации. Активируйте Cloud Shell, нажав на него.

e23b881395174c00.png

После активации внизу появится консоль:

b885c452da656556.png

В консоли клонируйте репозиторий sampledb и следуйте инструкциям по установке зависимостей:

$ git clone https://github.com/cloudspannerecosystem/sampledb.git

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

$ cd sampledb
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt

После установки зависимостей вы можете запустить sampledb, чтобы создать новую базу данных с примерами данных:

$ python batch_import.py my-first-instance my-sample-db

После успешного выполнения вы сможете увидеть "my-sample-db" с двумя новыми таблицами (комментарии и истории):

eb4adca281f8704a.png

Пример набора данных содержит статьи и комментарии с Hacker News. Вы можете нажать на кнопку «Запрос», чтобы начать запрашивать и просматривать данные:

8b95a3b14709b285.png

7. Уборка

Этот шаг необязателен. Если вы хотите продолжить экспериментировать с вашим экземпляром Cloud Spanner, вам не нужно его удалять в данный момент. Однако с проекта, который вы используете, будет по-прежнему взиматься плата за этот экземпляр. Если вам больше не нужен этот экземпляр, то вам следует удалить его сейчас, чтобы избежать этих сборов.

Чтобы вернуться на страницу экземпляра, нажмите на кнопку «my-first-instance» в верхнем левом углу:

2a226b985f43074f.png

Нажмите кнопку «Удалить», чтобы удалить экземпляр:

27ee8f9656364f98.png

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

537e18cf2dd7a668.png

Введите имя вашего экземпляра и нажмите «Удалить».

8. Поздравляем!

Вы создали новый экземпляр Cloud Spanner, создали пустую базу данных, загрузили тестовые данные и (при желании) удалили экземпляр Cloud Spanner.

Что мы рассмотрели

  • Создание экземпляров Cloud Spanner через консоль Google Cloud.
  • Создание новой базы данных в экземпляре Cloud Spanner.
  • Использование базы данных sampledb для загрузки и запроса тестовых данных.
  • Удаление экземпляра Cloud Spanner.

Узнать больше