@tevin.sales - Thanks for the question and using MS Q&A platform.
It seems that you are having an issue with mapping/creating a data flow between a CSV in a blob storage and an ADX table. When you create a source in a Data Flow and try to copy it to an ADX sink data, only a few fields are correctly copied over correctly. There are 18 fields and only 6 field's data are properly found. When you Data Preview the source, you see that more than half of the values are NULL.
It is possible that the issue is caused by the schema inference process. By default, ADF uses sample rows (for example, top 100 or 1000 rows data) to infer the schema, and the inferred result will be used as a schema to read data. So if your data stores have extra columns that don't appear in sample rows, the data of these extra columns are not read, moved, or transferred into sink data stores.
To overwrite the default behavior and bring in additional fields, ADF provides options for you to customize the source schema. You can specify additional/missing columns that could be missing in schema-infer-result in the data flow source projection to read the data.
You can try to customize the source schema by following the steps below:
- Go to the source transformation in the data flow.
- Click on the "Projection" tab.
- Click on the "Import Schema" button.
- Select the "From Connection" option.
- Select the CSV file that you are using as the source.
- Click on the "Import" button.
- In the "Projection" tab, you can add or remove columns as needed.
For more details, refer to Source transformation in mapping data flows.
If this does not solve the issue, you can try to use the "Import Projection" option to import the schema from the CSV file. This will import the schema for all the columns in the CSV file, even if they are not present in the sample rows used for schema inference.
Hope this helps. Do let us know if you any further queries.
If this answers your query, do click Accept Answer
and Yes
for was this answer helpful. And, if you have any further query do let us know.