`

mysql 亿级数据表查询

阅读更多

场景

平台需要运营数据报表支持运营,因为是平台初建,搭建大数据平台成本较大,故使用零时使用mysql做olap。需求大概单表每日千万,从一张mysql近3亿数据的表里面查询统计一个月的数据。制定营收、留存等每日环比数据报表。
配置
硬盘SSD 6核12g
数据量

每月单表大概生产3亿数据

测试sql

SELECT COUNT(1) FROM

t_app_events_ad_data WHERE

data_key = ‘R’ AND create_date > ‘20221105’ 

同时给data_key+create_date加入组合索引


使用innerdb查询统计时间大概2分59秒,如下图
图片:
在这里插入图片描述

 

使用myisam 查询统计时间大概1分41秒,如下图
在这里插入图片描述
如果是myisam统计全表数据,速度是非常快的,这个是myisam的优势,如下图
在这里插入图片描述

myisam统计20天环比报表,耗时大概14分钟多一点(中间连了另一张亿级数据的表),如下图。
在这里插入图片描述

总结:

很明显,亿级数据存储,myisam查询性能比innerdb快将近一倍,这应该是得益于myisam的存储结构,b+tree叶子存储的是指针。但是一个月生产3亿的数据用mysql查询是有些吃力的,需要做架构上的优化,不可能实时查询这个表,比如说按照大数据的尿性定期出一个报表,把结果保存在数据库表。或者用storm这样的框架实时统计。


我始终觉得初期olap是必要的,这是运营的保障,但olap初期没必要上啥大数据,过了一年半载数据量大了再说(主要是成本大)。大叔据技术比如说使用hive,其实架构可能也一样,定期出一份报表,保存查询结果展示。hive估计性能会更差点,时间估计会更久点,大爷我统计一个月3亿的数据用mysql可能也才15分钟,已经完全可以接受了。也可以用第三方平台,不过这个数据保存在第三方,不安全,而且也没有定制方便。这是一个架构演进升级的过程。





 

分享到:
评论

相关推荐

    45-MySQL单表2000万数据查询慢解决方案1

    MySQL单表2000万数据查询慢解决方案1 本文主要讨论了如何解决MySQL单表2000万数据查询慢的问题,通过将表分区和使用时间触发器来实现数据的优化。 分区设计 在解决方案中,我们使用的是按照8周将单表分为8个区,...

    mysql 千万数据表 t_order.zip

    在数据库管理领域,MySQL是一个广泛使用的开源关系型数据库系统,尤其在处理大量数据时,其性能和效率备受赞誉。本文将深入探讨如何管理和优化存储着千万级别数据的表,以"t_order"为例,该表可能存在于您提供的...

    全球主要国家数据表mysql

    标题 "全球主要国家数据表mysql" 指的是一个专门设计用于MySQL数据库的表格,包含了全球各个国家的主要信息。这个数据表可能包含了各国的基本统计数据,如国家名称、首都、人口、面积、货币、国际电话区号等。这些...

    mysql最新三级省市区数据表

    mysql最新三级省市区数据表

    mysql百万级测试数据下载 300W条

    首先,`test.sql`文件是一个MySQL数据库的SQL脚本文件,通常包含创建表结构、插入数据等操作。在这个场景中,它包含了300万条记录,这对于测试数据库性能、查询优化、并发处理能力等提供了充足的数据基础。 1. **...

    MySQL 多表关联一对多查询实现取最新一条数据的方法示例

    本文实例讲述了MySQL 多表关联一对多查询实现取最新一条数据的方法。分享给大家供大家参考,具体如下: MySQL 多表关联一对多查询取最新的一条数据 遇到的问题 多表关联一对多查询取最新的一条数据,数据出现重复 ...

    省市区街道4级MySQL数据.rar

    标题 "省市区街道4级MySQL数据.rar" 指向的是一个包含中国行政区域划分的数据库资源,特别针对省、市、区、街道这四级行政单位。这些数据通常用于地理信息系统(GIS)、电子商务、物流配送、本地化服务等各种需要...

    mysql 百万级数据测试

    "MySQL 百万级数据测试"这个主题涉及到了在高容量数据环境下的数据库操作,尤其是如何高效地导入和管理大量数据。MySQL是一个广泛使用的开源关系型数据库管理系统,它以其性能、可靠性和易用性而受到青睐。 首先,...

    mysql省市区数据表

    mysql省市区数据表

    mysql快速导入百万级千万级数据.zip

    mysql快速导入百万级千万级数据 mysql快速导入百万级千万级数据 mysql快速导入百万级千万级数据 mysql快速导入百万级千万级数据 mysql快速导入百万级千万级数据 mysql快速导入百万级千万级数据

    MySQL 亿级数据分页的优化

    MySQL在处理亿级数据分页时,可能会遇到性能瓶颈,特别是在使用大偏移量的`LIMIT`语句时。在上述场景中,由于一个名为ApiAutotest的客户端程序通过多线程调用接口,使用了异常大的分页参数(如`offset=1800000`和`...

    中国省市区城市列表mysql数据表,可直接导入数据库、可转JSON数据,带行政区划码和经纬度

    标题中的“中国省市区城市列表mysql数据表”指的是一个包含了中国所有省份、城市、区县的数据表,专门设计用于MySQL数据库系统。这个数据表能够帮助用户快速构建与地理位置相关的应用程序,比如地图服务、物流配送...

    mysql数据查询操作-实验训练2.docx

    本实验训练涵盖了 MySQL 数据查询操作的多个方面,包括单表查询、多条件查询、聚合函数查询、内连接查询、外连接查询、复合查询等。通过对实验内容的分析,可以总结出以下知识点: 1. 单表查询: * 了解如何使用 ...

    mysql数据库全文多库多表查找,查询所有数据库中包含指定字符的数据。

    mysql数据库全文查找,查询所有数据库中包含指定字符的数据。 一、支持功能: 1、支持所有数据库查询字符串,或者指定一个或者多个数据库查询字符串; 2、支持本地使用或者指定远程数据库地址; 3、支持命令行指定...

    mysql全国城市三级联动表

    在IT行业中,数据库设计是至关...综上所述,“mysql全国城市三级联动表”的设计和使用是数据库领域中的常见实践,它涉及到数据结构设计、查询优化、视图使用等多个方面,对于理解和提升数据库管理技能具有重要意义。

    查看MySql数据表

    标题"查看MySQL数据表"暗示我们要讨论的是如何在MySQL环境中检查和浏览已存在的数据表。这通常涉及到以下步骤: 1. **连接数据库**:使用正确的用户名、密码、主机名(可能为localhost)以及数据库名称,通过命令行...

    2019省市区街道4级MySQL数据,整合一个表.zip

    标题中的“2019省市区街道4级MySQL数据,整合一个表.zip”指的是一个包含中国2019年最新省、市、区、街道四级行政区域数据的MySQL数据库文件。这个压缩包提供了完整的四级行政区划信息,并且已经整合到一个单一的表中...

    2020年省市区街道4级MySQL数据.7z

    标题中的“2020年省市区街道4级MySQL数据.7z”表明这是一个包含中国四级行政区域(省、市、区、街道)的数据库文件集合,格式为MySQL,且已压缩成7z格式,方便下载和存储。7z是一种高压缩率的文件格式,能有效地减少...

    MySQL千万数据解决方案

    缺点:有优化瓶颈,数据量过亿就玩完了。 方案二:升级数据库类型,换一种100%兼容mysql的数据库。优点:不影响现有业务,源程序不需要修改代码,你几乎不需要做任何操作就能提升数据库性能,缺点:多花钱 方案三...

    mysql 测试数据集,单表200万条数据

    本测试数据集提供了一张包含200万条数据的单表,这对于数据库性能测试、查询优化、大数据处理以及系统负载测试等方面具有极高的价值。下面将围绕这个主题,详细介绍MySQL数据库的相关知识点。 1. 数据库设计: 在...

Global site tag (gtag.js) - Google Analytics