Задача профилирования данных - пользовательский запрос профиля
Есть ли возможность создать пользовательский запрос профиля для задачи профилирования данных служб SSIS?
На данный момент существует 5 стандартных запросов профиля в рамках задачи "Профилирование данных служб SSIS":
- Столбец Null Ratio Профиль Запрос
- Столбец Статистика Запрос профиля
- Запрос профиля распределения длины столбца
- Запрос профиля распределения значений столбца
- Ключевой запрос профиля кандидата
Мне нужно добавить еще один (пользовательский), чтобы получить сводку всех числовых значений.
Заранее спасибо за вашу помощь.
2 ответа
Исходя из этой документации Microsoft, задача профилирования данных служб SSIS имеет только 5 основных профилей (перечислены по вашему вопросу), и нет возможности добавить пользовательский профиль.
По аналогичной причине я создам Execute SQL Task
Для этого вы можете использовать необходимые вам агрегатные функции и ISNUMERIC
функция в предложении where:
SELECT MAX(CAST([Column] AS BIGINT)) -- Maximum value
,MIN(CAST([Column] AS BIGINT)) -- Minimum value
,COUNT(Column) -- Count values
,COUNT(DISTINCT [Column]) -- Count distinct values
,AVG(CAST([Column] AS BIGINT)) -- Average
,SUM(CAST([Column] AS BIGINT)) -- Sum
FROM TABLE
WHERE ISNUMERIC([Column]) = 1
Я думаю, что вы хотите сделать здесь, это создать вычисляемый столбец, который заполняется вашим исходным столбцом, только если IsNumeric(SourceColumn) = 1
,
Затем создайте задачу профиля, используя Column Value Distribution Profile Request
на вычисляемом столбце, с ValueDistributionOption
установлен в AllValues
,
Редактировать:
Чтобы уточнить, вычисляемый столбец не должен быть задачей в SSIS, хотя я так и думал, когда придумал ответ. Вы можете изменить таблицу, которую вы хотите профилировать, добавив вычисляемый столбец, а затем создать задачу профиля, как я объяснил выше.
Я также предполагал, что вы хотите профилировать значения одного столбца. Если вы хотите сделать это для нескольких столбцов или хотите профилировать итоговые значения, агрегированные из записей сведений, этот ответ может оказаться не лучшим решением.