首页 > 数据库 >数据库同步

数据库同步

时间:2023-08-29 14:12:06浏览次数:49  
标签:抽取 XCode 分页 数据库 同步 2.3 id

刚开始使用分页的方式同步数据,id asc

到2000多万条之后,效率慢了。

总结:分页到最后,会越来越慢

通过请教大石头大佬,进行了优化

大数据同步,一般不用分页的方式,XCode里面是把分页抽取器放在最后的。每次抽取后,下一次用 where id>lastMaxId。

你可以参考XCode里面的集中抽取器,最好用的是雪花id抽取,其次时间,最后分页

采用这样的方式同步

select top 1000 * from Data
where id > 40934063
order by Id asc
Data表是历时数据表,不是业务中使用的真实的表。

总结:分页获取1000条,时间20秒左右,采用雪花id获取10 0000条,2.3秒

2.3太慢了,应该在100ms以内。10万叶大小太大,用一万或者五千

 

标签:抽取,XCode,分页,数据库,同步,2.3,id
From: https://www.cnblogs.com/gzy2016Blog/p/17664595.html

相关文章

  • Greenplum 数据库启用pgbouncer
    pgbouncer是PostgreSQL的轻量的连接池,可以有效降低连接数,提升系统性能。Greenplum当前版本已经自带,只是多数组织在实践中似乎并未启用此服务,也算是一种资源的浪费了。gpbouncer有三种连接方式:Sessionpooling/会话连接池最普通的方式,在客户端连接的时候,在它的连接生命期内,会给......
  • HBase 分布式数据库
    我从来没见过我们单位的主库系统,无论是小机或者EMC。如果哪天在值班时,收到通知主库挂了,我会觉得是一个深藏在机房沉重铁门里的大家伙,冒了几缕青烟,紧接着监控上各种Web小图标就都红了....在5、6年前,我们就希望能用分布式存储和分布式数据库来替代集中存储,觉得分布式廉价,而且高可靠。......
  • .NET Core Entity Framework Core 创建数据库
    自动创建数据库必须在NuGet中安装一下EFCore库Microsoft.EntityFrameworkCore.SqlServerMicrosoft.EntityFrameworkCore.Tools数据迁移常用命令dotnetefmigrationsaddNewColum--新增migrationsdotnetefdatabaseupdate--跟新数据库dotnetefmigrationsaddAddrs--......
  • 深入理解数据库连接池及其在后端性能优化中的作用
    在后端开发中,数据库连接池是一个至关重要的概念,它在保障系统性能、资源利用以及稳定性方面起着重要作用。本篇博客将深入探讨数据库连接池的工作原理,以及在Java应用中如何合理地配置和使用连接池来优化后端性能。什么是数据库连接池?数据库连接池是一个管理数据库连接的技术,它在应用......
  • 深入探究Java中的多线程并发与同步
    在后端开发中,多线程编程是一项关键技术,能够充分利用多核处理器,提高系统性能和响应能力。然而,多线程编程涉及到并发与同步问题,可能引发复杂的线程安全难题。本篇博客将深入探讨Java中的多线程编程,重点关注并发问题和同步机制。并发与多线程并发是指多个任务在同一时间段内执行,而多线......
  • 多线程同步、异步
    1、首先明确一点,对于单核CPU,任意一个时刻只有一个线程在运行。那么既然这样,多线程还有什么意义呢?举例来说,现在只有一个人,要做好几个任务。单线程就是,任务一个一个地做,必须做完一个任务后,再去做另一个任务。多线程就是一会做这个任务,一会做那个任务,每个任务做一会,不停的切换。显然,......
  • MYSQL如何从文件中把数据复制进数据库表中
    。至少有两种修正方法:·编辑文件“mysql.txt”改正错误,然后使用DELETE和LOADDATA清空并重新装载表:·mysql>DELETEFROMpet;·mysql>LOADDATALOCALINFILE'pet.txt'INTOTABLEpet;注:‘***’->是你的文件路径地址然而,如果这样操做,......
  • Mysql之数据库设计
    一、三大范式1、第一范式:消除一个字段包含多个数据库值,消除一个记录包含重复的组(单独的一列包含多个项目),即可满足1NF。2、第二范式:消除部分依赖性即可转化为2NF。部分依赖性表示一个记录中包括的字段只依赖于主键的一部分。解决部分依赖性的最简单方法是将复合主键分成两部分,每......
  • 数据库中字段名的命名规范
    使用有描述性的名称:字段名应该能清楚地描述该字段所代表的含义,尽量避免使用模糊或不具有明确含义的名称。使用小写字母:使用小写字母能提高可读性,并且在某些数据库中,字段名是大小写敏感的。此外,建议使用下划线(_)来分隔单词,而不是使用空格或驼峰命名法。避免保留字和关键字:避免使......
  • 数据库MySQL
     Concat(a,b)连接a,b两个字段                                    MySQL函数       分组之后再插入查询条件不能用Where关键字,而要用HA......