aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSloNN <alex.dmitriev@gmail.com>2024-08-09 09:48:51 +0300
committerGitHub <noreply@github.com>2024-08-09 09:48:51 +0300
commitdd9f3fdcfec5d41d073bb2e43ce270088db3b630 (patch)
tree31f97b6eb631b91b5e41c2b790170de6b8a662e7
parentb16060eebe0468af8307a0d31644cb6aeef53637 (diff)
downloadydb-dd9f3fdcfec5d41d073bb2e43ce270088db3b630.tar.gz
integrations and ide (#7222)
Co-authored-by: Alex Dmitriev <slonnn@yandex-team.ru> Co-authored-by: Ivan Blinkov <ivan@ydb.tech>
-rwxr-xr-xydb/docs/build.sh2
-rw-r--r--ydb/docs/presets.yaml7
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-connection-test.pngbin0 -> 94150 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-create-new-driver-set-name_ru.pngbin0 -> 568595 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-create-new-driver_ru.pngbin0 -> 477092 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management-driver_ru.pngbin0 -> 539396 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management-driver_set.pngbin0 -> 935514 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management_ru.pngbin0 -> 362735 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-query.pngbin0 -> 690448 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-table-structure.pngbin0 -> 526473 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/dbeaver-ydb-connection.pngbin0 -> 220105 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/_assets/ydb-connection-path.pngbin0 -> 74599 bytes
-rw-r--r--ydb/docs/ru/core/integrations/ide/dbeaver.md76
-rw-r--r--ydb/docs/ru/core/integrations/index.md82
-rw-r--r--ydb/docs/ru/core/integrations/toc_i.yaml3
-rw-r--r--ydb/docs/ru/core/reference/toc_p.yaml1
16 files changed, 170 insertions, 1 deletions
diff --git a/ydb/docs/build.sh b/ydb/docs/build.sh
index a432d3ae96..001dfd0697 100755
--- a/ydb/docs/build.sh
+++ b/ydb/docs/build.sh
@@ -34,7 +34,7 @@ check_dependency "python3" "Python3" "https://www.python.org/downloads/"
echo "Starting YFM builder"
echo "Output directory: $DIR"
-if ! yfm -i . -o $DIR --allowHTML; then
+if ! yfm -i . -o $DIR --allowHTML --apply-presets; then
echo
echo "================================"
echo "YFM build completed with ERRORS!"
diff --git a/ydb/docs/presets.yaml b/ydb/docs/presets.yaml
index e24be95b9d..6367d6a286 100644
--- a/ydb/docs/presets.yaml
+++ b/ydb/docs/presets.yaml
@@ -53,3 +53,10 @@ default:
corporate-paste: https://www.paste.example.com
corporate-yt: https://www.yt.example.com
corporate-yt-cluster: example-cluster
+
+ datalens-name: DataLens
+ airflow-name: Apache Airflow
+ ydb-airflow: false
+ ydb-finebi: false
+ ydb-superset: false
+ ydb-datalens: false
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-connection-test.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-connection-test.png
new file mode 100644
index 0000000000..4ce9fe3100
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-connection-test.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-create-new-driver-set-name_ru.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-create-new-driver-set-name_ru.png
new file mode 100644
index 0000000000..31bf57f1c8
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-create-new-driver-set-name_ru.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-create-new-driver_ru.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-create-new-driver_ru.png
new file mode 100644
index 0000000000..cd6aa1e6dd
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-create-new-driver_ru.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management-driver_ru.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management-driver_ru.png
new file mode 100644
index 0000000000..e7fc8d8f61
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management-driver_ru.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management-driver_set.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management-driver_set.png
new file mode 100644
index 0000000000..fd18baf87d
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management-driver_set.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management_ru.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management_ru.png
new file mode 100644
index 0000000000..be6af87171
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-driver-management_ru.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-query.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-query.png
new file mode 100644
index 0000000000..960ddc9402
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-query.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-table-structure.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-table-structure.png
new file mode 100644
index 0000000000..6f19a203fd
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-table-structure.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-ydb-connection.png b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-ydb-connection.png
new file mode 100644
index 0000000000..a33056c489
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/dbeaver-ydb-connection.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/_assets/ydb-connection-path.png b/ydb/docs/ru/core/integrations/ide/_assets/ydb-connection-path.png
new file mode 100644
index 0000000000..58a84c34f5
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/_assets/ydb-connection-path.png
Binary files differ
diff --git a/ydb/docs/ru/core/integrations/ide/dbeaver.md b/ydb/docs/ru/core/integrations/ide/dbeaver.md
new file mode 100644
index 0000000000..216a4c63f0
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/ide/dbeaver.md
@@ -0,0 +1,76 @@
+# Подключение к {{ ydb-short-name }} с помощью DBeaver
+
+[DBeaver](https://dbeaver.com) — бесплатный кроссплатформенный инструмент управления базами данных с открытым исходным кодом, обеспечивающий визуальный интерфейс для подключения к различным базам данных и выполнения SQL-запросов. Он поддерживает множество систем управления базами данных, включая MySQL, PostgreSQL, Oracle и SQLite.
+
+DBeaver позволяет работать с {{ ydb-short-name }} по протоколу Java DataBase Connectivity ([JDBC](https://ru.wikipedia.org/wiki/Java_Database_Connectivity)). Данная статья демонстрирует, как настроить такую интеграцию.
+
+### Подключение JDBC-драйвера {{ ydb-name }} к DBeaver {#dbeaver_ydb}
+
+Для подключения к {{ ydb-name }} из DBeaver понадобится JDBC-драйвер. Для загрузки JDBC-драйвера выполните следующие шаги:
+1. Перейдите в [репозиторий ydb-jdbc-driver](https://github.com/ydb-platform/ydb-jdbc-driver/releases).
+1. Выберите последний релиз (отмечен тегом `Latest`) и сохраните файл `ydb-jdbc-driver-shaded-<driver-version>.jar`.
+
+Для подключения загруженного JDBC-драйвера выполните следующие шаги:
+1. Выберите в верхнем меню DBeaver пункт **База данных**, а затем подпункт **Управление драйверами**:
+
+ ![](./_assets/dbeaver-driver-management_ru.png)
+
+1. Чтобы создать новый драйвер, в открывшемся окне **Менеджер Драйверов** нажмите кнопку **Новый**:
+
+ ![](./_assets/dbeaver-driver-create-new-driver_ru.png)
+
+1. В открывшемся окне **Создать драйвер**, в поле **Имя драйвера**, укажите `YDB`:
+
+ ![](./_assets/dbeaver-driver-create-new-driver-set-name_ru.png)
+
+1. Перейдите в раздел **Библиотеки**, нажмите кнопку **Добавить файл**, укажите путь к скачанному ранее JDBC-драйверу {{ ydb-short-name }} (файлу `ydb-jdbc-driver-shaded-<driver-version>.jar`) и нажмите кнопку **OK**:
+
+ ![](./_assets/dbeaver-driver-management-driver_ru.png)
+
+
+1. В списке драйверов появится пункт **YDB**. Дважды кликните по новому драйверу и перейдите на вкладку **Библиотеки**, нажмите кнопку **Найти Класс** и в выпадающем списке выберите `tech.ydb.jdbc.YdbDriver`.
+
+ {% note warning %}
+
+ Обязательно явно выберите пункт выпадающего списка `tech.ydb.jdbc.YdbDriver`, нажав на него. В противном случае DBeaver будет считать, что драйвер не был выбран.
+
+ {% endnote %}
+
+ ![](./_assets/dbeaver-driver-management-driver_set.png)
+
+### Создание подключения к {{ ydb-name }} {#dbeaver_ydb_connection}
+
+Для создания подключения необходимо выполнить следующие шаги:
+
+1. В DBeaver создайте новое соединение, указав тип соединения `YDB`.
+1. В открывшемся окне перейдите в раздел **Главное**.
+1. В подразделе **Общие**, в поле ввода **JDBC URL**, укажите следующую строку соединения:
+
+ ```
+ jdbc:ydb:<ydb_endpoint>/<ydb_database>?useQueryService=true
+ ```
+
+ Где:
+ - `ydb_endpoint` — [эндпойнт](../../concepts/connect.md#endpoint) кластера {{ydb-name}}, к которому будут выполняться подключение.
+ - `ydb_database` — путь к [базе данных](../../concepts/glossary.md#database) в кластере {{ydb-name}}, к которой будут выполняться запросы.
+
+ ![](./_assets/dbeaver-ydb-connection.png)
+
+1. В поля **Пользователь** и **Пароль** введите логин и пароль для подключения к базе данных. Полный список способов аутентификации и строк подключения к {{ ydb-name }} приведён в описании [JDBC-драйвера](https://github.com/ydb-platform/ydb-jdbc-driver).
+1. Нажмите кнопку **Тест соединения ...** для проверки настроек.
+
+ Если все настройки указаны верно, то появится сообщение об успешном тестировании соединения:
+
+ ![](./_assets/dbeaver-connection-test.png =400x)
+
+1. Нажмите кнопку **Готово** для сохранения соединения.
+
+### Работа с {{ ydb-name }} {#dbeaver_ydb_connection}
+
+С помощью DBeaver можно просматривать список и структуру таблиц:
+
+![](./_assets/dbeaver-table-structure.png)
+
+А также выполнять запросы к данным:
+
+![](./_assets/dbeaver-query.png)
diff --git a/ydb/docs/ru/core/integrations/index.md b/ydb/docs/ru/core/integrations/index.md
new file mode 100644
index 0000000000..eb36463f35
--- /dev/null
+++ b/ydb/docs/ru/core/integrations/index.md
@@ -0,0 +1,82 @@
+# Интеграции {{ ydb-short-name }}
+
+В данном разделе приведена основная информация про интеграции {{ ydb-name }} со сторонними системами.
+
+{% note info %}
+
+В дополнение к своему собственному нативному протоколу, {{ ydb-name }} обладает слоем совместимости, что позволяет внешним системам подключаться к базам данных по сетевым протоколам [PostgreSQL](../postgresql/intro.md) или [Apache Kafka](../reference/kafka-api/index.md). Благодаря слою совместимости, множество инструментов, разработанных для работы с этими системами, могут также взаимодействовать с {{ ydb-name }}. Уровень совместимости каждого конкретного приложения необходимо уточнять отдельно.
+
+{% endnote %}
+
+
+## Клиенты с графическим интерфейсом {#gui}
+
+| Среда | Инструкция | Уровень поддержки |
+| --- | --- | --- |
+| Embedded UI | [Справка](../reference/embedded-ui/index.md) | |
+| [DBeaver](https://dbeaver.com) | [Инструкция](ide/dbeaver.md) | C помощью [JDBC-драйвера](https://github.com/ydb-platform/ydb-jdbc-driver/releases)|
+| JetBrains Database viewer | — | C помощью [JDBC-драйвера](https://github.com/ydb-platform/ydb-jdbc-driver/releases)|
+| [JetBrains DataGrip](https://www.jetbrains.com/ru-ru/datagrip/) | — | C помощью [JDBC-драйвера](https://github.com/ydb-platform/ydb-jdbc-driver/releases)|
+| Другие JDBC-совместимые IDE | — | C помощью [JDBC-драйвера](https://github.com/ydb-platform/ydb-jdbc-driver/releases)|
+
+
+## Визуализация данных (Business Intelligence, BI) {#bi}
+
+| Среда | Уровень поддержки | Инструкция |
+| --- | :---: | --- |
+{% if ydb-datalens %}
+| [{{ datalens-name }}](https://datalens.tech/ru) | Полный | [Инструкция](datalens.md) |
+{% endif %}
+{% if ydb-superset %}
+
+| [Apache Superset](https://superset.apache.org) | Через [PostgreSQL-совместимость](https://ydb.tech/docs/ru/postgresql/intro) | [Инструкция](superset.md) |
+
+{% endif %}
+{% if ydb-finebi %}
+
+| [FineBI](https://intl.finebi.com) | Через [PostgreSQL-совместимость](https://ydb.tech/docs/ru/postgresql/intro) | [Инструкция](./finebi.md) |
+
+{% endif %}
+| [Grafana](https://grafana.com) | Полный| [Инструкция](grafana.md) |
+
+{% if ydb-airflow %}
+## Оркестрация {#orchestration}
+
+| Среда | Инструкция |
+| --- | --- |
+| [{{ airflow-name }}](https://airflow.apache.org) | [Инструкция](airflow.md) |
+
+{% endif %}
+
+## Поставка данных {#ingestion}
+
+| Система поставки | Инструкция |
+| --- | --- |
+| [FluentBit](https://fluentbit.io) | [Инструкция](fluent-bit.md) |
+| [LogStash](https://www.elastic.co/logstash) | [Инструкция](logstash.md) |
+| [Kafka Connect Sink](https://docs.confluent.io/platform/current/connect/index.html) | [Инструкция](https://github.com/ydb-platform/ydb-kafka-sink-connector) |
+| Произвольные [JDBC-источники данных](https://ru.wikipedia.org/wiki/Java_Database_Connectivity) | [Инструкция](import-jdbc.md) |
+
+
+### Потоковая поставка данных {#streaming-ingestion}
+
+| Система поставки | Инструкция |
+| --- | --- |
+| [Apache Kafka API](https://kafka.apache.org) | [Инструкция](../reference/kafka-api/index.md) |
+| [Apache Kafka Connect](https://kafka.apache.org/documentation/#connect) | [Инструкция](../reference/kafka-api/connect/index.md) |
+
+
+## Миграции данных {#schema_migration}
+
+| Среда | Инструкция |
+| --- | --- |
+| [goose](https://github.com/pressly/goose/) | [Инструкция](goose.md) |
+| [Liquibase](https://www.liquibase.com) | [Инструкция](liquibase.md) |
+| [Flyway](https://documentation.red-gate.com/fd/) | [Инструкция](flyway.md) |
+| [Hibernate](https://hibernate.org/orm/) | [Инструкция](hibernate.md) |
+
+## Смотрите также
+
+* [{#T}](../reference/ydb-sdk/index.md)
+* [{#T}](../postgresql/intro.md)
+* [{#T}](../reference/kafka-api/index.md)
diff --git a/ydb/docs/ru/core/integrations/toc_i.yaml b/ydb/docs/ru/core/integrations/toc_i.yaml
index 446ea7d104..e35cbbe659 100644
--- a/ydb/docs/ru/core/integrations/toc_i.yaml
+++ b/ydb/docs/ru/core/integrations/toc_i.yaml
@@ -15,3 +15,6 @@ items:
href: hibernate.md
- name: Импорт из источников JDBC
href: import-jdbc.md
+- name: DBeaver
+ href: ide/dbeaver.md
+
diff --git a/ydb/docs/ru/core/reference/toc_p.yaml b/ydb/docs/ru/core/reference/toc_p.yaml
index 6278efb2f1..df3a125ef8 100644
--- a/ydb/docs/ru/core/reference/toc_p.yaml
+++ b/ydb/docs/ru/core/reference/toc_p.yaml
@@ -14,6 +14,7 @@ items:
mode: link
path: embedded-ui/toc_p.yaml
- name: Интеграции
+ href: ../integrations/index.md
include:
mode: link
path: ../integrations/toc_p.yaml