122Architecture 全面解读 - 第一篇 全局解析+ADG+IM模块

Oracle自发布12.1之后,就一直声称要全面转云,在之后的三四年里,一直杳无音信,大家都在猜测,Oracle又在憋什么大招,果然,2017阳春三月,大招来了!今年三月份,在广大用户的热切盼望中,Oracle终于发布了12c Release2。

与此同时,云和恩墨专家迅速投入到新特性的研究当中,在12.2发布不到2个月的时间里,并设计出了全球最新版的Oracle 12.2体系架构图。先来一饱眼福吧

很多同学跟我们说,这张图信息量太大看不懂表示很绝望。为了让大家更好地学习,云和恩墨推出系列课程“全面解读Oracle 12.2的体系架构图” ,上周四第一课QQ群火热直播,反响热烈。

接下来我们简要概括一下课时一的内容要点:

体系架构图组成

Oracle 12.2体系架构图基于最基本的Oracle数据库访问模式,延伸出包含Active DataGuard,Sharding,Multitenant,Flex Cluster,Flex ASM等多个解决方案的模块。课时一主要介绍了整个图的内容组成,并展开详细解读了模块一(ADG+IM)的部分。

在第一个模块,我们展开讨论了以下的内容要点:

1、在ADG中,逻辑standby和物理standby的数据同步与应用; 2、12.2中,支持ADG上部署IM列存储,并讨论了三种部署方案;(可参考以下文章:【12.2新特性】在Oracle Active Data Guard上部署列式存储) 3、Oracle的零数据丢失同步方案:Far Sync实例的配置; 4、在12.2中DG上的一些新特性,比如远程AWR,standby上的SQL tuning等,可参考以下文章:Oracle 12.2新特性掌上手册 - 第六卷 ADG的性能与诊断); 5、在12.2中IN-MEMORY的新特性,比如:join group,faststart等。

好了话不多说,想学习的同学请观看视频。原文链接下载。

不少朋友问讲师要ppt,实话实说,讲师(只有脑子)真没有ppt,不过倒有几张经典的参考图送给各位,为大家简单讲解一下。

reference picture1

根据白求恩对中国的Oracle用户使用Oracle数据库现状分析,在10g以前的版本中,有部分用户在使用裸设备作为数据库存储方式,11g以后已经很少见,12c已结没有人使用裸设备了。ASM和文件系统将成为最主要的两种文件存储方式,而ASM则是集群环境下的最佳存储选择。(了解白求恩请点击:Bethune,你最佳的运维小助手。)

reference picture2

在12.2以前,ADG架构中,若有多个节点,则多个节点的RFS进程可以同时接收来自主库的日志,但在日志应用过程中,只有一个MRP进程进行,因此多个节点的日志应用的串行的。

在12.2中,ADG中多节点standby,日志可以并行应用。会在每个节点都启动一个MRP进程。

reference picture3

最简单的Far sync的配置模式:在主库附近(实现同步的距离限制范围内)配置far sync实例,主库与far sync实例之间进行同步传输,far sync与备库之间进行异步传输,这样,即使主备之间的连接出现连接问题,主库的数据都在far sync实例中,实现数据零丢失。

Far Sync的高可用配置:虽然far sync提供零丢失的数据同步,但一切都会出故障,为了避免主库与Far Sync之间的连接出现问题导致数据丢失,在主库上配置两个Far Sync实例,当其中一个连接中断的时候,自动切换到另一个Far Sync实例。

Far Sync的扩展配置:在需要做主备切换的环境中,为了保证切换后的数据传输不受影响,在两个节点上都配置Far Sync实例,当然,在同一时刻,只有一个Far Sync实例处于活动状态,也就是与当前主库靠近的Far Sync实例处于活动状态。

reference picture4

在12.2的IM中,支持三种格式的数据存储:关系型数据,虚拟列和JSON格式。并且可以将JSON对象的虚拟列直接存放在IM的虚拟列,使得针对JSON对象的操作非常方便。

注意,对于JSON的文档,一般要求文件大小不大于32M,否则可能不会带来好的性能提升。

reference picture5

在没有join group的情况下,表的关联查询是如何实现的:

假如vehicles表和sales表需要做关联查询。

1、扫描Vehicles表,并将满足条件的行解压并发送到hash 连接

2、使用vehicles中获取的做连接的列创建hash列表

3、扫描sales表,过滤出符合条件的行

4、解压过滤得到的行,并发送至hash连接

5、使用vehicle表的ID值进行探测,找到匹配的行

使用join group后的连接访问方式如下:

1、扫描vehicles表,将符合条件的以压缩的方式发送至hash 连接

2、对上步中压缩的结果中的不同值创建数组

3、扫描sales表

4、将匹配的行以压缩的方式发至hash 连接

5、对数组中压缩的值做全连接

因此我们看到,没有使用join group的时候,最后在选择行的时候是扫描二维的hash表获得,而使用join group之后只需要扫描一个数组,这样就加快了查询效率。

原文发布于微信公众号 - 数据和云(OraNews)

原文发表时间:2017-05-22

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张戈的专栏

WordPress发布文章主动推送到百度,加快收录保护原创

工作实在太忙,也没时间打理网站。最近公司额外交待了一些网站 SEO 方面的优化任务让我关注(这就是啥都要会、啥都要做的苦逼运维的真实写照了...)。 于是抽空看...

2816
来自专栏進无尽的文章

基础篇-iOS后台运行以及相关

对于APP的前后台运行情况的了解,有助于我们在实际开发中规避一些问题,以及采取稳妥的方法处理和解决问题,是很必须的。

2221
来自专栏影子

springMVC项目国际化(i18n)实现方法

3409
来自专栏北京马哥教育

服务器程序源代码分析之二:php-fpm

php作为排名top2 互联网开发工具,非常流行,可以参考:中国最大的25个网站采用技术选型方案 php这个名称实际上有两层含义 广义的php 是指用后缀名为....

3044
来自专栏FreeBuf

记一次服务器被入侵的调查取证

*本文原创作者:fish1983,本文属FreeBuf原创奖励计划,未经许可禁止转载

5211
来自专栏FreeBuf

更适合作为主系统使用的Parrot Security简介

Parrot 是一个基于Debian的专注于渗透测试和隐私保护的Linux发行版,但是更加方便日常使用,有贴心的使用体验,丰富的工具,更注重隐私保护。 The...

6395
来自专栏即时通讯技术

微信自用高性能通用key-value组件MMKV已开源!

腾讯微信团队于2018年9月底宣布开源 MMKV ,这是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,...

1172
来自专栏北京马哥教育

推荐!国外程序员整理的系统管理员资源大全(一)

备份软件 Amanda -客户端-服务器模型备份工具 Bacula - 另一个客户端-服务器模型备份工具 Backupninja -轻量级,可扩展的元数据备份系...

43210
来自专栏游戏杂谈

PhoneGap Build的使用

      纯粹属于闲折腾的结果,只是这中间还遇到一些问题,记录一下。因为没有IOS的开发key,所以这里只发布成功Android系统的安装程序。之前写过一篇构...

1473
来自专栏FreeBuf

搭建dvwa环境学习从MySql注入到GetShell

是啊,在项目上的系统每周每个月经过几十遍的过滤,平时看到提交参数的地方也就sqlmap跑一跑,对于最基础的手工注入都没有扎实的学会,于是我决定要知道如何搭建环境...

1053

扫码关注云+社区