Загрузка данных из базы данных
Загрузка данных
Для загрузки таблиц из базы данных необходимо подключиться к любой поддерживаемой СУБД через SQL-запрос или интуитивный визуальный интерфейс. При этом в случае подключения с помощью SQL-запроса, вы можете сделать это двумя способами:
с помощью стандартной формы, где вы указываете адрес сервера, название базы данных, имя пользователя и пароль;
с использованием строки подключения, которая позволяет задавать произвольные JDBC-подключения, тем самым расширяя перечень поддерживаемых источников.
В загружаемых таблицах названия полей не должны содержать следующие символы:
точка;
двоеточие;
квадратные скобки.
Для загрузки данных необходимо выполнить следующие шаги:
В рабочей области щелкните по названию набора данных, в который вы будете загружать таблицы, либо создайте новый набор и выберите его:
В открывшемся окне нажмите Данные > Получить данные:
В появившемся диалоге кликните База данных, если вы хотите подключиться к базе данных с помощью SQL-запроса, либо выберите из списка одну из поддерживаемых СУБД, если вы хотите подключиться через пользовательский интерфейс без необходимости написания кода. После выбора типа подключения нажмите кнопку Далее:
Дальнейшие действия зависят от выбранного вами варианта подключения:
В панели Данные таблицы сортируются по алфавиту (или по возрастанию, если названия начинаются с чисел).
Если данные не загрузились, нажмите F12 на клавиатуре, чтобы проверить прошла ли загрузка успешно. При успешной загрузке в консоли отобразится появится запись “Операция загрузки прошла успешно!”:
Информация для администратора: администратор платформы может установить таймаут для загрузки данных, по истечении которого загрузка прекратится. Для установки таймаута необходимо сделать следующее:
Добавьте в файл
/var/lib/visiology/scripts/v3/env-files/fe.envтребуемое значение для таймаута в переменнуюRefreshDataJob__Timeout:RefreshDataJob__Timeout=03:00:00Перезапустите платформу:
/var/lib/visiology/scripts/run.sh --restart
Для удобства пользователей платформа запоминает подключения к базам данных. При добавлении дополнительных таблиц в модель данных вы можете воспользоваться сохраненными подключениями. В этом случае вам не придется заново указывать параметры подключения. Все, что вам нужно будет сделать – это выбрать подключение из списка, указать название таблицы и написать текст запроса:
Перед использованием существующего подключения рекомендуется проверить его работоспособность. Это позволит избежать ситуаций, когда вы отправляете сложный запрос, но соединение оказывается нерабочим из-за того, что изменилась база данных, или обновился логин или пароль.
Чтобы выполнить проверку, необходимо в окне создания запроса нажать на кнопку с тремя точками напротив требуемого подключения и выбрать пункт Проверить подключение в открывшемся меню. Система оповестит вас о результате проверки:
Булевые значения, содержащиеся в добавляемых таблицах, обрабатываются и записываются в базу данных как строковые значения. При необходимости передачи булевых значений в базу данных, вы можете изменить текст запроса, явно указав 1 или 0. Ниже пример запроса для PostgreSQL (для других СУБД он может быть другим): select
case
when bool_column is true
then 1 else 0
end as bool_column
from bool_table |
|---|
При загрузке данных с помощью JDBC следует учитывать, что если в запросе используется FULL JOIN, который объединяет данные таблиц, то в результате слияния могут появиться пустые ячейки, которые заполняются значением null. При этом, если в предложении SELECT используется колонка, которая не допускает использование значений null, то данные не загрузятся.
В данной ситуации, для успешной загрузки данных, в запросе необходимо использовать функцию coalesce, которая заменит null на пустую строку в поле. Например, для загрузки колонки brandname с отсутствующими значениями, в запросе необходимо указать select coalesce(brandname, '''') вместо select brandname.
Пример запроса:
select * from jdbc( 'jdbc:postgresql://84.252.140.141:5432/postgres?user=postgres&password=', 'postgres', 'select coalesce(brandname, ''''), brands.key as "bk", salesamount, facts.key as "fk" from brands full join facts on brands.key = facts.key;');
При отправке SQL-запроса вы можете добавлять комментарии. Поддержка комментариев реализована с учетом диалектов наиболее популярных СУБД:
MySQL
MariaDB
PostgreSQL
SQL Server
Oracle
SQLit
DB2
HSQLDB
Teradata
Greenplum
SAP HANA
ClickHouse
При этом для некоторых наименее популярных баз данных комментарии могут не поддерживаться.
Пример запроса с комментарием:
SELECT * FROM delivery; /* Загружает все данные из таблицы "delivery". */
Редактирование загрузчиков
Параметры запроса, которые использовались для загрузки таблицы, сохраняются в системе в виде загрузчиков. В дальнейшем, при необходимости, вы можете отредактировать эти параметры, изменив, например, текст запроса. Данная возможность позволяет избежать необходимости создавать запрос заново, если, например, необходимо внести какие-то изменения в структуре таблиц.
Для редактирования загрузчика необходимо выполнить следующие шаги:
Откройте набор данных, в котором вы хотите отредактировать загрузчик. В нашем примере это Магазин:
Нажмите кнопку с тремя точками напротив таблицы, загрузчик которой вы хотите отредактировать, и выберите Редактировать загрузчик в выпадающем меню:
В открывшемся окне внесите необходимые изменения и нажмите Сохранить:
Если вы загружали таблицу с помощью SQL-запроса, то здесь вы можете изменить текст SQL-запроса:
Если же вы загружали таблицу через пользовательский интерфейс (без SQL-запроса), то окно редактора загрузчика будет выглядеть так:
После сохранения изменений обновленная конфигурация будет также использована при обновлении набора данных.
Подобным образом вы можете обновить параметры загрузчика на экране создания дашборда, нажав на кнопку с тремя точками напротив требуемой таблицы и выбрав Редактировать загрузчик в открывшемся меню:
Изменение набора полей никак не отражается на построенных дашбордах (за исключением ситуации, когда вы удалите колонку, данные которой используются в одном из виджетов).
При редактировании строки запроса не рекомендуется использовать звёздочку, т.к. использование этого символа подразумевает, что структура таблицы не менялась с момента создания загрузчика. Если структура изменилась, визуализация данных может нарушиться. Указывайте все столбцы явно. Например:
Select ОбщаяСтоимость, Клиенты, Календарь, Скидки, Продажи, ID, Возврат, Магазины, from Факт.Продажи
Просмотр загруженных таблиц
Загруженные таблицы также отображаются в панели Данные в правой стороне экрана:
Вы можете развернуть каждую таблицу, чтобы просмотреть список ее полей. Для этого нажмите на стрелку слева от названия таблицы:
Чтобы свернуть сразу все таблицы, нажмите кнопку Свернуть все в верхней части панели Данные:
Поля таблиц сортируются по алфавиту. Если название полей начинается с цифры, то сортировка происходит по возрастанию.
Для просмотра данных в загруженных таблицах перейдите в режим просмотра данных, нажав на соответствующую кнопку в левой стороне экрана, и выберите таблицу, данные которой вы хотите просмотреть:
Обратите внимание, что для каждого столбца указан тип используемых данных.
Вы также можете создавать дополнительные данные на основе существующих данных с помощью формул DAX и затем визуализировать их. Чтобы узнать как это сделать, перейти в раздел Создание мер.
Удаление таблицы из модели
Для удаления таблицы из модели данных, выполните следующие шаги:
Нажмите кнопку с тремя точками напротив таблицы, которую вы хотите удалить.
Во всплывающем меню выберите Удалить
Нажмите Удалить в диалоге подтверждения:
Внимание! Данное действие нельзя будет отменить. Будьте внимательны при удалении таблиц из модели данных.
Дальнейшие шаги
После загрузки таблиц, вы можете построить модель данных, которая станет основой для визуализации данных и создания дашбордов.
Смотрите также
Установка JDBC драйверов
Ускорение загрузки данных
Формирование модели данных для визуализации
Создание мер
Создание дашбордов
На этой странице
Время чтения: 3 мин.
Видео
Нужна дополнительная помощь?