Activity
Mon
Wed
Fri
Sun
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
What is this?
Less
More

Memberships

Learn Microsoft Fabric

14.5k members • Free

3 contributions to Learn Microsoft Fabric
Bronze layer
Hello! I’m trying to figure out how to handle properly schemas drifts that may appear between the operational tables and the ones that I have stored in Fabric in bronze layer. For instance, in operational db I have a table with a column stored as INT, it gets synced in Fabric and by default it will be added as INT here as well. In operational the column changes to decimal but in Fabric without full schema overwrite (which I don’t want because its a heavy job) the column will be kept as int. Therefore I don’t have a valid ingestion process. I thought of a dummy solution for this. To map each column as string in bronze layer therefore I don’t care what happens with the columns in operational, my job will sync as string the values. And only on silver layer when I clean up the data, to choose the types that I want further on. What do you think about it? Do you use something similar? If not, how do you handle this issue on your project? Thanks a lot, Ecaterina
0
0
Watermark table
I have the following issue; - In my operational db the date time is saved as datetimeoutoffset(7) in sql server (example of column name AddedAt and the format of the date 2025-06-10 14:07:21.9054118 +00:00) - Based on this column, I gradually take new data in Fabric. I persist the last AddedAt value in the watermark table and on the next pipeline run I take all the rows that are > than the old AddedtAt value. - In the watermark table the column is called LastProccessedValue. Is of TimestampType. What I observed is that when the AddedAt value is saved in thie column is not fully saved. For instance, in the date from above the last 8 digit is deleted also the +00:00. I know this happens because Timestamp type cannot keep the miliseconds and timezone offset. - And now the issue that I have. In the pipeline I have a testing step. I want to make sure that the count of data from Fabric and operation untile the LastProcessedDate is equal. To check that the pipeline didn’t skipped any rows. To do this I go in the operational db with a query that filteres based on the AddedAt column and with the LastProccessedValue from the watermark. Now the issue appears. So the query will look like this: take all my data from the table x where AddedAt <= LastProccessedValue. But the LastProccesedValue is in this format 2025-06-10 14:07:21.905411. With this value from the watermark the row that has the AddedAt value from the first bullet, is skipped. And in the end my testing will fail. - How do you handle this issue? My first idea was to store in the watermark both the timestamp value and the full version of date as string. - Can you give me some tips and tricks for this flow? Also any tips related to how you handle the datetime struggle in Fabric will help. - Thanks a lot in advance for reading my long post
0 likes • Sep 5
@Will Needham thanks a lot for the reply!
Date dimension
In the gold layer I have a date dimension table. The facts table is linked to the date dimension based on a date key. For this linkage I calculate based on the date in UTC format. Basically I find the corresponding DateKey in the date dimension table and I put that key in the facts table. Now the issue is, that the reports in PowerBI should be made taking into account a timezone. The first solution was to create a default DateKeyTimezone and have the explicit key calculated based on the utc date + the coresponding timezone and have a DateKeyUtc to link to the corresponding date utc key. Basically the fact table will contain 2 Date keys. I don’t know if this is the proper solution. How do you tackle this kind of problem ob your project? Do you have any tips&tricks? Thanks!
1-3 of 3
Ecaterina Manolache
2
15points to level up
@ecaterina-manolache-7794
New into the Fabric world

Active 43d ago
Joined Aug 19, 2025
Powered by