备库关联查询的设计思考(r7笔记第41天)

现在有一个需求,目前在开发的同学需要做一些查询,但是涉及的两个表在两个不同的数据库里面。就是下面的形式。从他们的反馈来看还需要做表关联,是统计业务相关,对于数据的实时性要求不是很高。

所以这个需求看起来是需要直接用db link来做关联了,但是两个表都还比较大,一个local,一个remote还是有不少的潜在风险,表的数据量在百万,千万级,所以对于这种关联的统计查询,我是不主张直接在主库用的。所以首先向到了备库。 因为是11g的adg,所以这个问题其实也算是一个不错的思路。 于是实现方式就类似下面的形式。

在db1的备库中创建一个同义词指向db2,使用db link的形式。这种方式看起来还行,但是一个潜在的风险就是这种关联查询在db2中会很可能有较高的负载。 所以这部分压力可以分担开来直接指向db2的备库,类似下面的形式。

基本的读取压力解决了,来看看安全问题。 现在的问题是,目前的这种需求我的主张是不让开发的同学在主库上运行这种查询,从而避免更多的误操作和潜在风险。 那么怎么来实现呢。可以看看下面这个完整的图。

在 这种实现方式中,基本都是备库之间的事儿了,app直接指向两个备库,以db1为基准节点做表关联查询,防火墙在db1,db2之间都是彼此不通的,只在 备库之间开,那么在db1的主库创建了db link之后,因为备库的网路互通,主库网络不互通,所以db link其实只在备库生效。然后在主库创建同义词的ddl会同步到备库去,这样就间接同步了这种结构。 所以备库之间做关联查询大体来看是没有问题的,那么开发的同事需要做什么查询对于DBA来说还是需要做一些改进和审核的,我们也可以提供不少的改进经验进来。

原文发布于微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文发表时间:2015-12-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PingCAP的专栏

性能测试工具的 Coordinated Omission 问题

很早之前就看过 Gil 大神的一篇文章《Your Load Generator Is Probably Lying To You - Take The Red ...

2865
来自专栏java一日一条

测试是浪费时间,我的程序肯定没问题

尽管关于测试驱动开发(TDD)的书和文章有成百上千之多,仍然有很多人从未感受过测试的强大力量。

671
来自专栏张戈的专栏

WordPress后台首页显示RSS错误的解决办法

这两天,麻烦不断,可能是因为我折腾的比较频繁吧!老是出现奇奇怪怪的问题,而且百度、GG 居然搜不到有用的解决办法!折腾了大半天,终于被我搞定,虽然还是很笨的方法...

3986
来自专栏java一日一条

13 年的 Bug 调试经验总结

在《Learning From Your Bugs》一文中,我写了关于我是如何追踪我所遇到的一些最有趣的bug。最近,我回顾了我所有的194个条目(从13岁开始...

1102
来自专栏程序员互动联盟

vim 带你装逼带你飞(一)

前言:逃离windows有很长时间了,特别是当今android盛行的时代,我们没有理由不选择ubuntu作为编译开发android之首选。其实操作系统只是我们使...

3497
来自专栏樊华恒的专栏

海量之道系列文章之弱联网优化 (五)

在客户端接入服务器调度策略的演化过程中,我们最早采用了“就近接入”的策略,在距离客户端更近的地方部署服务器或使用CDN,期望通过减少RTT来提高网络交互响应性能...

7100
来自专栏Java学习网

13 年的 Bug 调试经验总结

编码 下面这些都是我经历过的会导致难点bug的问题: 1.事件顺序。在处理事件时,提出下列问题会很有成效:事件可以以不同的顺序到达吗?如果我们没有接收到此事件会...

3265
来自专栏phodal

微信小程序「官方示例代码」浅析【上】

从某个微信群里,拿到了这个IDE的下载地址,然后就有了这个: ? 根本登不上去,怎么办,怎么办呢? 看代码啊。。。 反正我又没有保密协议,解压缩一看NodeW...

2588
来自专栏Golang语言社区

13 年的 Bug 调试经验总结

在《Learning From Your Bugs》一文中,我写了关于我是如何追踪我所遇到的一些最有趣的bug。最近,我回顾了我所有的194个条目(从13岁开始...

3286
来自专栏Java学习网

测试是浪费时间,我的程序肯定没问题

测试是浪费时间,我的程序肯定没问题 尽管关于测试驱动开发(TDD)的书和文章有成百上千之多,仍然有很多人从未感受过测试的强大力量。 之所以不愿意去写测试程序不...

2625

扫码关注云+社区

领取腾讯云代金券