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

使用Kafka,如何成功迁移SQL数据库中超过20亿条记录?

使用 Kafka,如何成功迁移 SQL 数据库中超过 20 亿条记录?我们的一个客户遇到了一个 MySQL 问题,他们有一张大表,这张表有 20 多亿条记录,而且还在不断增加。如果不更换基础设施,就有磁盘空间被耗尽的风险,最终可能会破坏整个应用程序。而且,这么大的表还存在其他问题:糟糕的查询性能、糟糕的模式设计,因为记录太多而找不到简单的方法来进行数据分析。我们希望有这么一个解决方案,既能解决这些问题,又不需要引入高成本的维护时间窗口,导致应用程序无法运行以及客户无法使用系统。在这篇文章中,我将介绍我们的解决方案,但我还想提醒一下,这并不是一个建议:不同的情况需要不同的解决方案,不过也许有人可以从我们的解决方案中得到一些有价值的见解。

02

20亿条记录的MySQL大表迁移实战

我们的一个客户遇到了一个 MySQL 问题,他们有一张大表,这张表有 20 多亿条记录,而且还在不断增加。如果不更换基础设施,就有磁盘空间被耗尽的风险,最终可能会破坏整个应用程序。而且,这么大的表还存在其他问题:糟糕的查询性能、糟糕的模式设计,因为记录太多而找不到简单的方法来进行数据分析。我们希望有这么一个解决方案,既能解决这些问题,又不需要引入高成本的维护时间窗口,导致应用程序无法运行以及客户无法使用系统。在这篇文章中,我将介绍我们的解决方案,但我还想提醒一下,这并不是一个建议:不同的情况需要不同的解决方案,不过也许有人可以从我们的解决方案中得到一些有价值的见解。

01

Single-Shot Refinement Neural Network for Object Detection

对于目标检测,两阶段方法(如Faster R-CNN)的准确率最高,而单阶段方法(如SSD)的效率较高。为了在继承两种方法优点的同时克服它们的缺点,本文提出了一种新的单阶段检测器,称为RefineDet,它比两阶段方法具有更好的精度,并保持了与单阶段方法相当的效率。RefineDet由两个相互连接的模块组成,即锚点细化模块和目标检测模块。具体来说,前者的目的是(1)过滤掉负锚点,减少分类器的搜索空间,(2)粗调锚点的位置和大小,为后续回归器提供更好的初始化。后一个模块以改进后的锚为输入,进一步改进回归,预测多类标签。同时,我们设计了一个传输连接块来传输锚点细化模块中的特征,以预测目标检测模块中目标的位置、大小和类标签。多任务丢失功能使我们能够以端到端方式训练整个网络。在PASCAL VOC 2007、PASCAL VOC 2012和MS COCO上的大量实验表明,RefineDet能够以高效的方式实现最先进的检测精度。

01
领券