TB级数据库负载如何设计?

业务需求:  需要将生产数据实时传递到副本备库,本来考虑ALWAYS ON 功能,因业务特殊性,需要将生产库历史数据删除,但仍然需要在副本备库中保留,想来想去决定只有用复制分发中的事务发布可用,删除的数据手工再补回副本备库中,但现在数据容量非常大,1.5TB级数量。表有3千多...显示全部

业务需求:  需要将生产数据实时传递到副本备库,本来考虑ALWAYS ON 功能,因业务特殊性,需要将生产库历史数据删除,但仍然需要在副本备库中保留,想来想去决定只有用复制分发中的事务发布可用,删除的数据手工再补回副本备库中,但现在数据容量非常大,1.5TB级数量。表有3千多个。全部做复制分发会对效能产生非常大的影响。如果出问题又需要手工将数据补录回备份库,非常麻烦。请问大家有什么好的其它方案吗?

收起
参与21

查看其它 6 个回答冯帅的回答

冯帅冯帅数据库管理员贝壳金服

问题里并没有提到用的什么数据库。

单纯的在业务需求下我们可以考虑以下几种技术方案:

1.主备数据库可以通过skip一些操作来不同步delete操作。比如oracle的dg。具体可以看官方文档的http://docs.oracle.com/cd/B19306_01/server.102/b14239/toc.htm

2.据我了解还有一些数据库从来就不会因业务做删除操作 任何数据的录入都是有意义存丰的,都是用一些标识字段来做标识,用分区并且定时清洗数据来提升性能。

3.永远做好备份  哪怕真的有丢了数据需要补录也能补的回来

融资租赁 · 2015-10-29
浏览1514

回答者

冯帅
数据库管理员贝壳金服

冯帅 最近回答过的问题

回答状态

  • 发布时间:2015-10-29
  • 关注会员:6 人
  • 回答浏览:1514
  • X社区推广