有一个在我们的数据库中的表大约需要25GB。它不再使用当前的代码。
它会给任何性能改进(对表的其余部分),如果我们归档此表,即使它不查询/使用?请提供解释。
我们正在使用MySQL与AWS极光。
存档表不会对极光产生任何影响。未使用的页从缓冲池,最终被驱逐[1],自此之后,他们从来没有得到拉回到数据库实例,除非你是会触及这些网页上查询。
你会继续支付存储成本(和直接,如快照成本等),通过保持其为未使用。更好的选择是将未使用的数据移动到一个新的集群,创建快照出来,并删除集群。当你通过恢复快照需要它,你可以随时恢复数据。原始数据库然后可以丢弃这些未使用的表进行清洗。你落得如此下场只有付出的快照,这是更便宜。
您也可以在数据导出的MySQL的(CSV让说),并将其存储在S3 /冰川。只有caviat是,当你需要访问数据时,它可以最终会被更多的时间费时费力加载它返回到一个现有的或新的数据库集群。
[1]缓冲池使用LRU驱逐。当负载运行时长,你会最终结束了驱逐与未使用的表相关联的所有页面。链接:https://dev.mysql.com/doc/refman/5.5/en/innodb-buffer-pool.html
是的,存档也将提高性能,降低侧面和备份/恢复周期的速度沿。我在最近的全职工作,试图在不同的项目和结果是惊人的。对于那些谁否认我只会说:
YES,归档不常使用的数据将缓解更快,更频繁访问的数据存储系统的负担。旧的数据是不太可能需要经常被放置在不需要拥有的仍然包含在使用数据系统的速度和接入系统
存档数据存储在存储装置的成本较低的层中,作为一种方式,以减少主存储消耗和相关成本。典型地,数据被加倍的数据执行被移动到一个较低的存储层,从而降低了整体存储空间并降低辅助存储成本