Область применения
SQL Backend может быть использован в случае, если необходима работа с очень большим количеством данных, которые постоянно растут и нет возможности оперативно увеличивать объемы ОЗУ.
Режим прямого подключения к источнику (SQL Backend) и режим импорта данных (ViQube) имеют существенные различия. Ниже приводится таблица с ключевыми критериями для выбора используемого типа хранилища.
Каждый из режимов оптимизирован именно под свои задачи. Не рекомендуется использовать SQL Backend в случае, если по критериям необходимо использовать ViQube, так как это может негативно сказаться на производительности.
Характеристика | Тип используемого хранилища | |
ViQube | SQL Backend | |
Простая настройка | да, может настроить Аналитик | нет, необходимо привлечение Администратора, Разработчика либо продвинутого Аналитика |
Высокие требования к функциональным возможностям | - | Есть ограничения по функциям, см. "Ограничения". |
Количество строк в таблицах фактов | < 100 млн строк | >100 млн строк |
Объем данных | < 100 ГБ ОЗУ | > 100 ГБ ОЗУ |
Производительность | ??? | Быстрый рост данных (по +100 гб в месяц) и высокие требования к скорости работы. Получение данных без перезагрузки в хранилище |
Поддерживаемые базы данных
Режим работы SQL Backend поддерживает работу со следующими базами данных:
ClickHouse
Arenadata QuickMarts
Postgres SQL
Vertica
Greenplum
Ограничения
Режим SQL Backend имеет ряд ограничений по сравнению с ViQube:
- Не поддерживаются Итоги/Подитоги.
В случае получения запроса, содержащего Итоги/Подитоги, он будет передан в ViQube. - Не поддерживаются операции редактирования строк в таблицах. Возможно только чтение данных. При получении подобного запроса строка будет добавлена в таблицу на ViQube и не будет видна при включенном SQL Backend.
- Имеются отличия при работе с NULL в выражениях (по сравнению с ViQube):
- В результате сравнения с NULL в случае ViQube будет возвращено FALSE, а в случае SQL Backend будет возвращено NULL
- При арифметических операциях NULL в ViQube интерпретируется как (1+NULL =1), а в SQL-базе как UNDEFINED (1+NULL =NULL )
- Имеется специфика при работе с некоторыми базами данных. Например, в Postgres SQL не работает sum(boolean). Поэтому могут быть отличия при настройке Расчетных показателей.