[發明專利]一種基于spark同步更新數據的方法有效
| 申請號: | 201811159912.8 | 申請日: | 2018-09-30 |
| 公開(公告)號: | CN109189798B | 公開(公告)日: | 2021-12-17 |
| 發明(設計)人: | 周韶寧;金建華 | 申請(專利權)人: | 浙江百世技術有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F16/2455 |
| 代理公司: | 浙江杭知橋律師事務所 33256 | 代理人: | 王梨華;陳麗霞 |
| 地址: | 310000 浙江省杭州*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 spark 同步 更新 數據 方法 | ||
1.一種基于spark同步更新數據的方法,其特征在于,包括如下步驟:
(1)導入數據:使用spark平臺從數據庫獲取目標列表存入hdfs文件;
(2)分區命名:通過spark分區方法對hdfs文件內的數據進行分區,根據創建日期,拉取需要的一個創建時間區間段的目標數據,并將該區間段數據按照目標數據的創建日期分別進行創建和命名文件夾,存入hdfs文件上的原始數據目錄里;
(3)對更新數據進行獲取:從數據庫拉取更新數據列表,對更新數據進行讀取并根據更新日期字段進行拉取,將更新數據用創建時間進行分區,存到hdfs文件的臨時更新數據文件中,同時也將更新數據根據數據的創建日期進行創建更新文件夾;
(4)更新數據與原先數據進行替換:根據更新數據中表的數據的主鍵ID對目標數據的主鍵ID進行比對,將數據的主鍵ID相同的進行替換,形成新的目標數據,把更新數據的數據的主鍵ID緩存到更新集合里,設置的分割值判斷數據大小進行分類處理:
①如更新數據小于分割值:根據更新數據文件夾名字對原始數據中的文件夾名字進行遍歷,如文件夾名字相同,作為替換數據,直到遍歷結束;如果不存在文件夾名字相同,則不進行替換;
將替換數據的主鍵ID遍歷判斷是否在更新集合里面,如存在,則將該數據刪除;如不在,則根據創建時間分區創建增加文件夾,將增加文件夾與更新文件夾合并;
②如更新數據大于分割值:利用spark中的表的操作方法,分別對原始數據和更新數據生成根據創建時間為主鍵的原始數據表和更新數據表,通過join的方式執行原始數據表和更新數據表進行關聯,關聯字段為數據主鍵ID,如得到原始表里面數據主鍵ID不在更新表里面的數據作為增加數據,則根據創建時間,將增加數據與更新數據合并。
2.根據權利要求1所述的一種基于spark同步更新數據的方法,其特征在于:步驟(4)中,分割值為100萬行。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江百世技術有限公司,未經浙江百世技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811159912.8/1.html,轉載請聲明來源鉆瓜專利網。





