百万级数据量,千万级数据量是多少,海量数据的优化方案
百万级数据量,千万级数据量是多少?
这里的百万级,千万级,针对数据库,指的是表的数据条数。有时也指并发事务量。
海量数据的优化方案
Note: 具体优化要结合自身的业务特性
百万级:
这个数据量基本上大家都经历过,也能感知一些性能问题显露出来了,这个阶段的优化几乎是最重要的,因为到后期千万级,甚至亿级别的阶段,数据库几乎无法动弹,可调整性很低。下面主要以字段,索引,sql 编写三方面优化:
- 字段选择优化
- 索引设计优化: 空间换时间的优化策略,基本上根据业务需求设计好索引,足以应付百万级的数据量
- 查询语句优化
千万级:
到了这个阶段的数据量,数据本身已经有很大的价值了,数据除了满足常规业务需求外,还会有一些数据分析的需求。而这个时候数据可变动性不高,基本上不会考虑修改原有结构,一般会考虑从分区,分表,分库三方面做优化:
- 分区: 根据一定的规则,数据库把一个表分解成多个更小的、更容易管理的部分,是一种水平划分
- 分表:
分表分水平分表和垂直分表。
水平分表即拆分成数据结构相同的各个小表,如拆分成 table1, table2...,从而缓解数据库读写压力。
垂直分表即将一些字段分出去形成一个新表,各个表数据结构不相同,可以优化高并发下锁表的情况。
可想而知,分表的话,程序的逻辑是需要做修改的,所以,一般是在项目初期时,预见到大数据量的情况,才会考虑分表。后期阶段不建议分表,成本很大。
- 分库:
分库一般是主从模式,一个数据库服务器主节点复制到一个或多个从节点多个数据库,主库负责写操作,从库负责读操作,从而达到主从分离,高可用,数据备份等优化目的。
当然,主从模式也会有一些缺陷,主从同步延迟,binlog 文件太大导致的问题等等
参考:MySQL 不同数据量的优化方案
百万级数据量,千万级数据量是多少,海量数据的优化方案相关推荐
- oracle百万级数据导入,用Perl从oracle导出百万级数据到excel
Perl从oracle导出百万级数据到excel excel 2007 可以存放1048576行.16384列的数据:excel 2003大概是65535行 我从oracle中导出30万行60列的数据 ...
- MYSQL百万级数据,如何优化
MYSQL百万级数据,如何优化 首先,数据量大的时候,应尽量避免全表扫描,应考虑在 where 及 order by 涉及的列上建立索引,建索引可以大大加快数据的检索速度.但是,有些情况索引是不会起效 ...
- php导出1万条数据excel_PHP快速导出百万级数据到CSV或者EXCEL文件
前言: 很多时候,因为数据统计,我们需要将数据库的数据导出到Excel等文件中,以供数据人员进行查看,如果数据集不大,其实很容易:但是如果对于大数集的导出,将要考虑各种性能的问题,这里以导出数据库一百 ...
- Java代码实现百万级数据XLS文件和XLSX文件的读取(已经过测试, 安心使用)
前言 工作中通常会有XLS和XLSX文件转换成CSV文件的需求,虽然Excel和WPS可以将这两种格式文件很方便的转换,但是不可能将生产上的数据下载下来转换后再上传上去(这真是个疯狂的想法...).目 ...
- 使用POI导出百万级数据到excel的解决方案
使用POI导出百万级数据到excel的解决方案 参考文章: (1)使用POI导出百万级数据到excel的解决方案 (2)https://www.cnblogs.com/hxun/p/11419006. ...
- Java写入大字符串到oracle数据库_java程序如何提高oracle百万级数据的insert效率
业务:需要从一个数据库查询百万级数据,在java程序中插入到另一个oracle数据库中 代码: private final int persize = 1000; /** * 推送数据-流程 * @p ...
- MySQL深度分页的问题及优化方案:千万级数据量如何快速分页
前言 后端开发中为了防止一次性加载太多数据导致内存.磁盘IO都开销过大,经常需要分页展示,这个时候就需要用到MySQL的LIMIT关键字.但你以为LIMIT分页就万事大吉了么,Too young,to ...
- SQLServer千万级数据量多表联查优化查询记录
1.数据分区 1.1 通过时间列将大表分为多个小表,缩小数据范围,减少扫描纪录数,这样添加分区索引后存在多个B+索引,单分区查询时相对应索引树也小 1.1.1 在本地任意盘符下创建存放小表的文件 ...
- mysql 优化实例(百万级数据)
2019独角兽企业重金招聘Python工程师标准>>> MySql 这个数据库绝对是适合dba级的高手去玩的,一般做一点1万篇新闻的小型系统怎么写都可以,用xx框架可以实现快速开发. ...
最新文章
- linux 安装输入法
- 李沐团队新作Gluon,复现CV经典模型到BERT,简单好用 | 强烈推荐
- 01移动端布局基础之流式布局
- android启动第三方应用
- Lucene默认的打分算法——ES默认
- 进程间通信的方式总结
- 远程注入【注入分类】
- C语言实现base64编码,base64解码
- Atitit 简历外语版 英语 日语 1.经历了很多项目实践,具备较为宽广的IT从业与信息化工作背景,具备若干创业历程,道路曲折,初心不改。在相关领域累计了较深的深度(细化度)与高度(抽象度)与广度
- 二维码图片处理换logo,加文字
- vue怎么安装element-ui教程
- linux 命令 下载 sz,linux - rz/sz 命令上传下载
- 【随笔篇】2019全国大学生电子设计竞赛回望与总结
- 【GCC】gcc警告选项汇总--编辑中|gcc编译选项
- 【设计相关】UML类图和时序图介绍
- 我与编程,编程予我。
- 2万字雄文:饿了么核心交易系统 5 年演化史!
- 如何使用 Java Servlet 处理 HTML 表单数据
- 关于个人工作总结的一点浅见
- JAVA中解决输入数据不符合规则问题
热门文章
- Bother, disturb and trouble 三个表示 “打扰” 的词语区分
- 这台计算机上没有安装驱动程序,这台计算机上没有安装‘HP LaserJet Pro M402-403 PLC6'打印机驱动程序,如果不安装...
- larval 数据库迁移
- 关于第十三届蓝桥杯大赛校内选拔赛的通知
- yum是干什么的_yum 安装是什么
- 搭建一个socks5代理 解决狗东对ip限制nolanjdc无法获取短信问题(搬运工unke原创)
- [Unity][FairyGUI]富文本改变颜色
- Mac安装clion教程
- multipartfile获取数据_关于使用Springmvc的MultipartHttpServletRequest来获得表单上传文件的问题,万分感谢~...
- android https握手失败,Android SSL错误握手失败