В дополнение к выбору таблиц при загрузке в базовую модель мы реализовали еще один способ уменьшения объема обрабатываемых данных – функционал фильтрации. Фильтры применяются при загрузке и позволяют сохранять в БД только необходимые данные.
Данный функционал реализован для большинства источников.
Для того, чтобы воспользоваться фильтром необходимо перейти в раздел Источники и далее в настройки источника:
Справа от нужной вам таблицы нажимаете на кнопку “ДОБАВИТЬ” в столбце “Фильтры”
и указываете условие фильтрации данных при загрузке в эту таблицу:
Если требуется настроить фильтр по нескольким значениям одного поля, то выберите в графе “Условие” пункт “входит в” (либо, в зависимости от задачи, “не входит в”) и перечислите значения через запятую.
Необходимо обратить внимание на специфику работы фильтров. Учитывая, что все базовые выгрузки у нас основаны по принципу “звезды” или “снежинки”, у нас есть как таблицы измерений так и таблицы фактов, связанные между собой. Поэтому фильтры, наложенные на таблицы измерений, могут распространяться и на связанные с ними таблицы.
К примеру, если наложить фильтр на параметры сделки amocrm_leads, то он скажется на всех таблицах, содержащих сведения по сделкам:
- amocrm_leads_attributes;
- amocrm_leads_facts;
- amocrm_leads_notes;
- amocrm_leads_tags.
Это обусловлено тем, что в amocrm_leads содержится ключевая сущность сделки, без которой все остальные таблицы не могут быть сформированы. Но, если наложить фильтр на таблицу примечаний сделок amocrm_leads_notes, как в приведенном выше примере, то данные будут ограничены только в ней, так как от нее не зависит ни одна другая таблица.