百万级数据量,千万级数据量是多少?

这里的百万级,千万级,针对数据库,指的是表的数据条数。有时也指并发事务量。

海量数据的优化方案

Note:    具体优化要结合自身的业务特性

百万级:

这个数据量基本上大家都经历过,也能感知一些性能问题显露出来了,这个阶段的优化几乎是最重要的,因为到后期千万级,甚至亿级别的阶段,数据库几乎无法动弹,可调整性很低。下面主要以字段,索引,sql 编写三方面优化:

  1. 字段选择优化
  2. 索引设计优化:  空间换时间的优化策略,基本上根据业务需求设计好索引,足以应付百万级的数据量
  3. 查询语句优化

千万级:

到了这个阶段的数据量,数据本身已经有很大的价值了,数据除了满足常规业务需求外,还会有一些数据分析的需求。而这个时候数据可变动性不高,基本上不会考虑修改原有结构,一般会考虑从分区,分表,分库三方面做优化:

  1. 分区:  根据一定的规则,数据库把一个表分解成多个更小的、更容易管理的部分,是一种水平划分
  2. 分表:  

    分表分水平分表和垂直分表。

    水平分表即拆分成数据结构相同的各个小表,如拆分成 table1, table2...,从而缓解数据库读写压力。

    垂直分表即将一些字段分出去形成一个新表,各个表数据结构不相同,可以优化高并发下锁表的情况。

    可想而知,分表的话,程序的逻辑是需要做修改的,所以,一般是在项目初期时,预见到大数据量的情况,才会考虑分表。后期阶段不建议分表,成本很大。

  3. 分库:

    分库一般是主从模式,一个数据库服务器主节点复制到一个或多个从节点多个数据库,主库负责写操作,从库负责读操作,从而达到主从分离,高可用,数据备份等优化目的。

    当然,主从模式也会有一些缺陷,主从同步延迟,binlog 文件太大导致的问题等等

参考:MySQL 不同数据量的优化方案

百万级数据量,千万级数据量是多少,海量数据的优化方案相关推荐

  1. oracle百万级数据导入,用Perl从oracle导出百万级数据到excel

    Perl从oracle导出百万级数据到excel excel 2007 可以存放1048576行.16384列的数据:excel 2003大概是65535行 我从oracle中导出30万行60列的数据 ...

  2. MYSQL百万级数据,如何优化

    MYSQL百万级数据,如何优化 首先,数据量大的时候,应尽量避免全表扫描,应考虑在 where 及 order by 涉及的列上建立索引,建索引可以大大加快数据的检索速度.但是,有些情况索引是不会起效 ...

  3. php导出1万条数据excel_PHP快速导出百万级数据到CSV或者EXCEL文件

    前言: 很多时候,因为数据统计,我们需要将数据库的数据导出到Excel等文件中,以供数据人员进行查看,如果数据集不大,其实很容易:但是如果对于大数集的导出,将要考虑各种性能的问题,这里以导出数据库一百 ...

  4. Java代码实现百万级数据XLS文件和XLSX文件的读取(已经过测试, 安心使用)

    前言 工作中通常会有XLS和XLSX文件转换成CSV文件的需求,虽然Excel和WPS可以将这两种格式文件很方便的转换,但是不可能将生产上的数据下载下来转换后再上传上去(这真是个疯狂的想法...).目 ...

  5. 使用POI导出百万级数据到excel的解决方案

    使用POI导出百万级数据到excel的解决方案 参考文章: (1)使用POI导出百万级数据到excel的解决方案 (2)https://www.cnblogs.com/hxun/p/11419006. ...

  6. Java写入大字符串到oracle数据库_java程序如何提高oracle百万级数据的insert效率

    业务:需要从一个数据库查询百万级数据,在java程序中插入到另一个oracle数据库中 代码: private final int persize = 1000; /** * 推送数据-流程 * @p ...

  7. MySQL深度分页的问题及优化方案:千万级数据量如何快速分页

    前言 后端开发中为了防止一次性加载太多数据导致内存.磁盘IO都开销过大,经常需要分页展示,这个时候就需要用到MySQL的LIMIT关键字.但你以为LIMIT分页就万事大吉了么,Too young,to ...

  8. SQLServer千万级数据量多表联查优化查询记录

    1.数据分区 1.1  通过时间列将大表分为多个小表,缩小数据范围,减少扫描纪录数,这样添加分区索引后存在多个B+索引,单分区查询时相对应索引树也小 1.1.1   在本地任意盘符下创建存放小表的文件 ...

  9. mysql 优化实例(百万级数据)

    2019独角兽企业重金招聘Python工程师标准>>> MySql 这个数据库绝对是适合dba级的高手去玩的,一般做一点1万篇新闻的小型系统怎么写都可以,用xx框架可以实现快速开发. ...

最新文章

  1. linux 安装输入法
  2. 李沐团队新作Gluon,复现CV经典模型到BERT,简单好用 | 强烈推荐
  3. 01移动端布局基础之流式布局
  4. android启动第三方应用
  5. Lucene默认的打分算法——ES默认
  6. 进程间通信的方式总结
  7. 远程注入【注入分类】
  8. C语言实现base64编码,base64解码
  9. Atitit 简历外语版 英语 日语 1.经历了很多项目实践,具备较为宽广的IT从业与信息化工作背景,具备若干创业历程,道路曲折,初心不改。在相关领域累计了较深的深度(细化度)与高度(抽象度)与广度
  10. 二维码图片处理换logo,加文字
  11. vue怎么安装element-ui教程
  12. linux 命令 下载 sz,linux - rz/sz 命令上传下载
  13. 【随笔篇】2019全国大学生电子设计竞赛回望与总结
  14. 【GCC】gcc警告选项汇总--编辑中|gcc编译选项
  15. 【设计相关】UML类图和时序图介绍
  16. 我与编程,编程予我。
  17. 2万字雄文:饿了么核心交易系统 5 年演化史!
  18. 如何使用 Java Servlet 处理 HTML 表单数据
  19. 关于个人工作总结的一点浅见
  20. JAVA中解决输入数据不符合规则问题

热门文章

  1. Bother, disturb and trouble 三个表示 “打扰” 的词语区分
  2. 这台计算机上没有安装驱动程序,这台计算机上没有安装‘HP LaserJet Pro M402-403 PLC6'打印机驱动程序,如果不安装...
  3. larval 数据库迁移
  4. 关于第十三届蓝桥杯大赛校内选拔赛的通知
  5. yum是干什么的_yum 安装是什么
  6. 搭建一个socks5代理 解决狗东对ip限制nolanjdc无法获取短信问题(搬运工unke原创)
  7. [Unity][FairyGUI]富文本改变颜色
  8. Mac安装clion教程
  9. multipartfile获取数据_关于使用Springmvc的MultipartHttpServletRequest来获得表单上传文件的问题,万分感谢~...
  10. android https握手失败,Android SSL错误握手失败