首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

记录一次MySQL表拆分和迁移

背景# 最近遇到一个关于MySQL单表过大的问题,该表存放的主要是日志文件,且其中有一个字段存放的数据过大,导致占用空间过大以及查询效率的降低,这种设计其实是不合理的。...解决方案# 根据上面的背景,可得出以下这些问题,也给出了解决方案: 问题 解决方法 1 某字段占用空间较大,在MySQL中为text类型,存储的是json格式的数据,该字段平均占用空间为5KB 对字段进行压缩...该表中很多不使用的数据导致查询效率降低 对该表按年份分表,本年的数据为热数据,之前的数据为冷数据 3 RDS服务器容量不足且无法扩容 考虑到以后业务数据的增长,我们决定直接买另一台RDS服务器,把冷数据迁移到新...RDS服务器 具体步骤:在原先的数据库批量压缩字段 —> 批量迁移数据到新数据库 2.1 压缩代码# 由于数据库一直在业务上被使用着,无法停下来专门给我们做这些处理,那么为了降低对业务的影响,我们只能选择在节假日或者晚上凌晨时候操作...经过实验,查询+压缩+更新 1万条数据共花费4s左右时间,那么3亿条数据需要花费大概33小时 2.3 迁移具体步骤# 迁移主要包括查询和插入两个步骤,查询和上面的查询方法一样;经过比较,批量插入的时候每

1.3K10

20亿条记录的MySQL迁移实战

我们的一个客户遇到了一个 MySQL 问题,他们有一张表,这张表有 20 多亿条记录,而且还在不断增加。如果不更换基础设施,就有磁盘空间被耗尽的风险,最终可能会破坏整个应用程序。...而且,这么的表还存在其他问题:糟糕的查询性能、糟糕的模式设计,因为记录太多而找不到简单的方法来进行数据分析。...在评估了几个备选解决方案之后,我们决定将数据迁移到云端,我们选择了 Google Big Query。...MySQL 服务器版本太老了,Debezium 不支持,升级 MySQL 升级也不是办法。...在迁移了所有记录之后,我们部署了新版本的应用程序,它向新表进行插入,并删除了旧表,以便回收空间。当然,为了将旧数据迁移到新表中,你需要有足够的空闲可用空间。

4.5K10

618技术揭秘:弹窗搭投实践

Tech 导读 弹窗作为非常重要的营销触达手段被各业务广泛应用,本文主要介绍 “XView 营销弹窗搭投系统” 关于快速搭建、投放配置营销弹窗能力的实现原理,以及在 618 等重要场景中的应用和实践...618 来了,对于业务团队来说,最重要的事情莫过于各种营销。如会场、直播带货、频道内营销等等。...而弹窗作为一个极其重要的强触达营销工具,通常用来渲染氛围、引流主会场、以及通过频道活动来提升频道复访等。...通过以上分类的梳理,从业务视角来看,功能性的弹窗在中的重要性是其次的,而主要是营销类的弹窗,它们往往具备以下特点: 突发创意/需求:偶然的创意玩法,或突发的外部业务需求,时效性要求高,即上线时间不可逾期...尤其后续一些考虑 h5 实现的弹窗,完全可以迁移到这套搭投系统中,通过对比 h5 弹窗开发(图左侧)及搭投的方式(图右侧),可以大致看到使用搭投系统的优势: 图14.

23220
领券