Я использовал фабрику данных Azure для приема таблиц внутри Fabric Lakehouse, я выполнил прием из AWS S3 и SQL Server, все работало нормально.
Когда я пытаюсь получить данные из базы данных Azure для PostgreSQL и MySQL, таблицы помещаются в папку файлов, а не в папку таблиц.
Если я открою папку каждого файла таблицы, я найду в некоторых таблицах файл паркета и дельта-журналы, а в других - только дельта-журналы, но если я попытаюсь в таблицах загрузить файлы паркета внутри папки таблицы, это работает и таблица появляется.
Есть ли какая-то настройка, чтобы они автоматически переходили в папку таблицы?
Еще я сказал, что это работает с SQL Server и AWS S3, но я заметил, что они работают, потому что таблицы уже существуют, поэтому я думаю, просто перезаписать, но когда таблица не существует, она переходит в папку с файлами.
Как сохраняются таблицы, каждая папка — это таблица:
Как сохраняются файлы:
Источник:
Раковина:
Набор данных:
Связанная служба:
После долгих исследований решение простое:
Когда таблицы попадают в Lakehouse, они изначально попадают в неподтвержденную папку. Если вы попытаетесь получить доступ к этой папке по имени ее таблицы, вы можете столкнуться с сообщением о том, что невозможно создать ярлык таблицы и что таблицу следует переместить в папку с файлами, которая будет храниться внутри домика у озера. Чтобы решить эту проблему, просто подождите несколько минут, а затем обновите домик у озера. Таблица должна появиться в папке table.
Если вы переместите неподтвержденные таблицы в папку files, они не попадут в папку таблиц, поэтому вам придется делать это вручную, по одной. Это происходит именно так, я не стал ждать и переместил всю таблицу в папку с файлами.