Ssis-440-mosaic-javhd.today03-02-16 — Min
All timestamps were forced into UTC before the 16‑minute filter, guaranteeing a single, reliable window across all tiles. During the first test run the Playback tile produced duplicate VIDEO_ID rows because the same session was split across two Parquet files. The engineers added a Sort + Remove Duplicates step and also introduced a checksum column ( MD5(VIDEO_ID + START_TS) ) to detect true duplicates. 3.3. Performance Tweaks The original package read the entire day's playback logs (≈ 2 TB) before filtering, which would have taken hours. The team switched to a partition‑pruned query against the HDInsight Metastore:
| Video_ID | Upload_User | Upload_TS (UTC) | Views | Avg_Watch_Min | Revenue_USD | |----------|-------------|----------------|-------|---------------|-------------| | V12345 | alice42 | 2016‑03‑02 03:04:12 | 87 | 4.3 | 112.50 | | V12346 | bob88 | 2016‑03‑02 03:07:45 | 22 | 2.7 | 28.00 | | … | … | … | … | … | … | ssis-440-mosaic-javhd.today03-02-16 Min
In the end, the mosaic was not just a picture of 16 minutes; it was a picture of how a disciplined engineering approach can turn fragmented data into insight, one tile at a time. All timestamps were forced into UTC before the
DateTime ConvertToUtc(DateTime local, DateTimeZone zone) DateTime ConvertToUtc(DateTime local, DateTimeZone zone)