• 关于数据同步全量与增量在大数据情况下分析


    (数据通过http接口全量返回)

    1)全量方式:

    1.1)小数据量下: 

      1.1.1):不做分页,数据通过一次返回(没问题)

    1.2)大数据量下:

      1.2.1)不做分页,数据通过一次返回(数据量过大可能会导致接口无响应、或程序内存溢出)

      1.2.2)做分页:

          做分页要注意的地方:1.分页必须带上排序,且必须按照创建时间排序(或id排序,确保新创建的数据排在最后),否则可能会导致数据在分页读取是丢失。

    2)增量方式(updateTime参与筛选条件)

    2.1)小数据量下:

      2.1.1)不做分页,数据通过一次返回(没问题)

    2.2)大数据量下:

      2.2.1)不做分页(数据量过大可能会导致接口无响应、或程序内存溢出)

      2.2.2)做分页(取数据时从首页开始往后读取):由于数据筛选时updateTime有参与,则如果在分页查询过程的时候修改了数据,会导致分页前移,会有丢失数据的可能。(由于是增量数据,此次数据丢失了,那么下一次再调用增量查询仍然可以拿到数据)

      2.2.3)做分页(取数据时从末页开始往前读取):如果过程中某些数据被修改了导致分页前移,那么该方式会出现重复的数据,则采用去重处理即可。(注意updateTime作为条件时是一个固定区间,比如updateTime>=2020-01-01 00:00:00 and updateTime<2020-01-02 00:00:00 ,分页数据只会减少不会增加)(并行数据抓取也会有丢失数据的可能,看自己业务是否忽略该问题)

  • 相关阅读:
    django模板使用
    django视图的定义
    字符串逆序
    Django 中Admin站点的配置
    Django模型Model的定义
    Django安装部署
    Linux常用命令
    深拷贝,浅拷贝
    lambda 表达式 (匿名函数)
    生成器与迭代器
  • 原文地址:https://www.cnblogs.com/wulm/p/14304602.html
Copyright © 2020-2023  润新知