BI工具升级动态增量新功能,让大数据量入集市更便捷
“動態增量”是“增量導入數據”在9.1版本中新增的入集市的方式。
隨著數據量的增大,咱們入集市的方式漸漸的從“同步數據”變成“增量導入數據”,“增量導入數據”的優點大致有兩點:
同時,“增量導入數據”也并不能完全滿足咱們數據更新的需求。
一. 為什么要用“動態增量”?
舉個例子,某部門分析的是訂單數據,有歷史5年的訂單數據(2016年1月到2021年3月),歷史數據不會變化,只有最近3個月的數據會發生變化,每天想要查詢的歷史所有訂單數據(2016年1月到昨天的數據都可能會查詢)。
如果使用“增量導入數據”的“普通增量”,每天追加前一天的數據到集市中沒有問題,但是無法滿足“最近3個月的數據會變化”的場景,比如:咱們在2021年3月10號,將2021年3月9號的數據追加到集市中,但是到了11號的時候,9號的數據發生了變化。”普通增量”是沒有辦法對集市中已經變化的9號的數據進行update,或者說刪除9號的數據,重新導入。
這種時候“動態增量”就派上用場啦!
二. “動態增量”如何上市?
A. 歷史數據按月全量入(2021-03-01日進行)
(1) 需要一個sql數據集,查詢 表“某部門訂單數據”的全部數據,且需要有日期字段。sql語句中不用加其他where條件用于限制取哪段時間的數據。
(2)新建一個“動態增量”任務
文件夾:設置集市文件夾的名稱,需要有意義
更新依據列:需要是日期類型,如果不是日期類型,選擇旁邊的新建計算列,通過表達式的方式將非日期類型的日期列,轉換為日期類型。
咱們這里選擇“按時間范圍更新”,將歷史數據全部包含(比如咱們這里,在2021年3月1號的時候,歷史數據范圍是2020-01-01到2021-02-28),范圍選擇完成也可以看下面的提示更新范圍,更好理解,范圍是包含開始時間,但不包含結束時間。
實現的效果是歷史數據按月分割,不同月份的數據存儲在不同的集市文件中,并自動給集市數據加上meta,meta名為:Date_Range,meta值:數據對應的月份。
具體邏輯:一個任務,按照時間范圍(2020-01-01到本月(2021-03月)),按月進行分割,任務實際執行的時候,是按月入集市的,數據庫執行的sql,不是一條(select * from 某部門訂單數據),而是每個月一條。
B.每天更新最近3個月數據
(1) 2021-03-02號以及之后每天更新最近3個月數據
文件夾:還是跟之前保持一致
按周期進行更新,更新范圍:近2月到今天,也就是2021-01-01開始到今天
更新的效果是按月進行分割,刪除2021-01月到2021-02月的數據,追加生成2021-01月到2021-03月的數據。
一個完整的動態增量的實例就講完了,實際使用中咱們可以根據情況進行調整,總的來說動態增量可以實現某段時間的數據按月(按年或按日)進行分割入集市,并打上meta,同時,可以實現對已經入集市的數據進行按月(按年或按日)更新,更新最近一段時間,或者某段固定的時間范圍,更新的邏輯是刪除對應時間段的集市文件,然后生成新的。
最后咱們不得不提的是meta的使用,前面“動態增量”已經實現了分割入集市,并打上meta,咱們的目標實現了一半(減少入集市的時間);還有另外一半(加快集市查詢),需要通過meta的使用,也就是文件過濾來實現。
總結
以上是生活随笔為你收集整理的BI工具升级动态增量新功能,让大数据量入集市更便捷的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年网购大数据:哪些品类坑最多?什
- 下一篇: 全国各省“光棍”排名,数据揭秘哪里脱单最