#merge #azure-data-factory
Вопрос:
Я пытаюсь объединить 2 файла csv(в фабрике данных Azure), которые имеют другую схему. Ниже приведен сценарий
CSV 1: 15 столбцов -> скажем, 5 измерений и 10 метрик(x1, x2,…x10) CSV 2: 15 столбцов ->> 5 измерений(таких же, как указано выше) и 10 метрик(отличается от приведенного выше, y1, y2…y10), Поэтому моя схема отличается. Теперь мне нужно объединить оба CSV-файла, чтобы со всеми 20 метриками было только 5 измерений.
Я попытался выполнить преобразование данных с помощью операции выбора. Это дает мне 2 строки в объединенном файле. Одна строка с первыми 5 измерениями и 10 метриками и вторая строка со следующими 5 измерениями и 10 метриками, что неверно, так как я ищу только одну строку с 5 измерениями и всеми 20 метриками(x1,x2…x10, y1,y2…y10)
Мы будем очень признательны за любую помощь в этом вопросе
Комментарии:
1. «Преобразование данных» — вы имеете в виду поток данных? Вы должны иметь возможность ОБЪЕДИНИТЬ два CSV-файла (в этих пяти столбцах), а затем ВЫБРАТЬ только те столбцы, которые вы хотите вывести.
2. @JoelCochran.. Спасибо вам за ответ. Я попробовал этот подход, но проблема в том, что в столбце соответствия нет соответствующих значений данных в 5 измерениях. так что присоединиться ко мне не работает. итак, что бы вы предложили. Пожалуйста, любезно предоставьте свои материалы. Спасибо
3. Если в 5 измерениях нет совпадающих данных, задавайтесь вопросом, какими будут значения данных в столбцах измерений после слияния, поскольку вы ожидаете только одну строку. Можете ли вы поделиться своими ожидаемыми результатами? и, если возможно, пожалуйста, поделитесь также образцами входных данных.
4. Если они не совпадут, то они не ПРИСОЕДИНЯТСЯ. Вы просто пытаетесь получить полный список всех этих 5 столбцов из источника A и всех пяти столбцов из источника B? Если это так, ВЫБЕРИТЕ 5 столбцов из каждого источника, а затем используйте ОБЪЕДИНЕНИЕ для создания единого списка всех строк.
5. @JoelCochran… спасибо за ваш ответ. Я получил ясность от бизнеса, и в общих столбцах есть общие данные, поэтому мое объединение сработало и позволило получить окончательный выходной файл.
Ответ №1:
Спасибо @sac за обновление и спасибо @Joel Cochran за предложение. Опубликуйте его в качестве ответа, чтобы помочь другим членам сообщества.
- Используйте
Join
преобразование и тип соединения в качестве внутреннего соединения. Используйте ключевые столбцы или общие столбцы (столбцы измерений) из 2 входных файлов в качестве условия соединения. Это выведет все столбцы из файлов 1 и 2. - Используйте
Select
преобразование, чтобы получить необходимый список выбора из выходных данных объединения.
См. ниже процесс реализации:
(i) Соедините 2 исходных файла с внутренним соединением и ключевыми столбцами в условии соединения.
(ii) В результате преобразования соединения будут перечислены все столбцы из источника 1 и все столбцы из источника 2 (включая дубликаты ключевых столбцов из обоих исходных файлов).
(iii) Используйте преобразование «Выбрать» и удалите повторяющиеся (или не требуемые в списке «Выбрать») столбцы из выходных данных объединения.
(iv) Вывод выбранного преобразования.