热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Oracle中的ASM文化

从Oracle中ASM的发展来看,到今天的普及使用,应该可以算做一种文化,因为这体现的不仅是ASM技术在实际工作中的成功普及,而且从

从Oracle中ASM的发展来看,到今天的普及使用,应该可以算做一种文化,因为这体现的不仅是ASM技术在实际工作中的成功普及,而且从

从Oracle中ASM的发展来看,到今天的普及使用,应该可以算做一种文化,因为这体现的不仅是ASM技术在实际工作中的成功普及,而且从某种程度来说,都代表了一个新生事物的发展历程,无论是java的发展还是各种开源项目的普及,都有着相似的痕迹。

asm从Oracle 10g版本推出,是作为grid的一部分鼓励使用的。而在这段漫长的时间里面,其实asm就在逐渐完善。

就如同你去公司内部推广一套很新技术的时候,人家肯定得衡量你的东西是不是足够好,如果性能指标能够达到指数级的提升,或者操作能够简化到极致,而且稳定,,那么很多人都会不由自主的去使用。

而从Oracle的发展来说,涉足存储领域,而且直接推出自动化存储管理,着实是一个大手笔。Oracle 10g版本之前,在Linux,unix系统中大体都是在操作系统层面设置逻辑卷LVM,然后把LVM分成多个卷组,在各个卷组上去划分相应的逻辑卷,最后在逻辑卷上安装文件系统,挂载后就可以提供文件的管理。

同时裸设备技术也在大量使用,因为性能确实很好,在磁盘上不用创建文件系统就尅使用Oracle实例来直接读写磁盘。

无论采用文件系统还是裸设备都是实现的方式,但是都有一定的缺点或者限制,文件系统中的更多的是性能的考虑,而在裸设备中则是管理带来的不便,一旦在裸设备上创建文件,文件名和大小都不能再改了。

ASM在这个基础上做了一个折中,即提高性能,抛弃了文件系统,然后又提供了方便的文件管理,当然还有更多的难点和痛点,这些都是已有方案的弊端和不方便不完善之处。

我也搜集了一些。大体有下面的一些方方面面。

1. 对于归档日志和备份,操作系统供应商不提供共享磁盘文件系统。

  2. 逻辑卷管理器隐藏了文件的位置,使得很难管理磁盘I/O和提供良好的统计。

  3. 当磁盘数超过100时,现有的lvm不能工作得很好。

  4. 当数据库有1000以上的数据文件时,操作系统和Oracle不能很好地处理数据库。

  5. 当有大量数据文件时命名就变得很困难了。

如果从技术层面来说有些问题忍了就忍了,可以规避,但是如果把这些缺点都利用起来,当做改进的一些专攻点,这样缺点不足就成为了优势。

说起ASM,不得不提到他的初始架构师bill bridge,对于asm的规划其实在很早就开始了,可以追溯到上个世纪1996年左右,那时候互联网还在起步阶段,sun还是原来的sun,其中肯定也有更多的曲折,最大的障碍应该是挑战权威,让已有的方案存在危机感和改进空间,不管怎么样,最后总算是在1999年正式审批了这个项目。

最初的定位从PSM,ODM,OSM,到了最终的ASM,PSM从字面来看就是parallel storage manager,还是和ops有一定联系,而odm(oracle data manager),OSM(oracle storage manager)到ASM(automatic storage manager),从名字也能看出一个发展的历程,也是逐步在改善,没有一步到位。

从我在10g开始接触到asm,也是带有很多的顾虑,更多的都是矫情。大体的理由如下:

1.asm又做了一层抽象,还是感觉文件系统中的文件踏实

2.老是怕asm有问题,如果出了问题,更加黑盒了。

3.新技术,新风险

4.缺乏了解,会有一种莫名的排斥感。

我觉得很多人应该和我有着差不多的想法,但是技术就是这样与时俱进,最终的目的当然还是简化工作,提高效率,而且ASM确实做到了。

普通文件系统的数据库迁移到ASM下步骤也简化了很多,感觉文件系统中的文件更加踏实,其实实际中我们也很少直接去管理这些文件,就算拿到文件也是二进制文件,我们还是什么都做不了。要说风险,肯定是有的,我记得一个老师曾经这么说过,如果说asm存在风险,损坏的可能性,那么它损坏的可能性和文件系统式一样的。如果说在课余自己接触下新技术,可能心态就很开放,但是到了实际的工作中,就马上严肃认真,就得好好评估,企业数据的安全是DBA存在意义所在。是不是在内心也在打退堂鼓,也是这样也就越来越会存在一些距离感,排斥感。

如果说在10g中asm不够成熟,也有一定的道理,asm是作为grid在10g推出,也算是新特性的试水,但是在11g中开始做了更多的加强和改进,所以使用起来还是会有不少的亮点,比如在10g中asm和oracle用户时放在一起的,可能会造成一些误操作和管理的不够方便,在11g中把asm纳入了grid infrasture这个体系中,原本在10g中的dbca来配置管理asm在11g中就有了新的命令asmca,在11g中把asm和数据库层面做了一种隔离,当然这些都是改进,到了exadata中,就赋予了asm更多的使命,做为exadata的标配,这个时候多个asm就可以管理更多的exadata单元。把原本rac中的共享存储的单点损坏做了加强,可以提供更高更完善的冗余机制,也是对rac的一种补充。

说到接受新事物,让我想起一件事,记得前几天我爸问我说,怎么银行要扣银行卡上的钱,只用发个短信验证码就能直接扣款,自己就感觉卡上的钱不安全了,就想去重新办一张卡,这样应该就安全了。然后我就耐心的给他解释,这是xx公司和银行之间的一个协定,他们会给你发送短信信息进行验证,然后得到本人的确认才能扣款,而且他们扣款也不是直接拿入自己腰包,就跟京东刷卡支付一样,送货员也没法多刷你一分钱,对他们来说就是一个单号。所以换了张卡也不管用,然后又解释了一通,他才明白了,就没有再办卡。

很多时候我们在接受新事物也是这种类似的态度,技术变更再快都是以提高效率和工作方式,如果某个软件再开源,功能复杂不好用,性能提升不高,那么接受它的难度和成本就有些太高了。所以从asm算是成功接受了时间的考验。自己也要多花点精力关注关注,看看我们能够做些什么,在技术发展的道理上能够添砖加瓦。

如何将ASM中的数据文件复制到操作系统中

Oracle 11g RAC ASM磁盘全部丢失后的恢复

Oracle 11g从入门到精通 PDF+光盘源代码

RHEL6 ASM方式安装Oracle 11g R2

Oracle 10g 手工创建ASM数据库

Oracle 10g R2创建ASM实例Step By Step

本文永久更新链接地址

推荐阅读
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 如何评估档案密集柜的承重性能
    档案密集柜是用于存储重要文件和资料的专业设备,广泛应用于档案馆、学校等场所。其结构设计确保了高效安全的存储方式。本文将探讨如何评估档案密集柜的承重能力,并提供专业建议。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • 深入理解Java泛型:JDK 5的新特性
    本文详细介绍了Java泛型的概念及其在JDK 5中的应用,通过具体代码示例解释了泛型的引入、作用和优势。同时,探讨了泛型类、泛型方法和泛型接口的实现,并深入讲解了通配符的使用。 ... [详细]
  • 汇编语言等号伪指令解析:探究其陡峭的学习曲线
    汇编语言以其独特的特性和复杂的语法结构,一直被认为是编程领域中学习难度较高的语言之一。本文将探讨汇编语言中的等号伪指令及其对初学者带来的挑战,并结合社区反馈分析其学习曲线。 ... [详细]
  • 武汉大学计算机学院研究生入学考试科目及专业方向
    武汉大学计算机学院为考生提供了多个硕士点,涵盖计算机科学与技术、软件工程、信息安全等多个领域。考研科目包括思想政治理论、英语一或二、数学一或二以及专业基础课程。具体的专业方向和考试科目详见正文。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
  • 【行业专题报告】 人力资源专题资料
    每项专题报告都是从2019开始更新到至今,后续将持续更新如需查看完整报告和报告下载或了解更多,公众号:参一江湖今天为大家分享专题 ... [详细]
  • 深入理解Java中的Collection接口与Collections工具类
    本文详细解析了Java中Collection接口和Collections工具类的区别与联系,帮助开发者更好地理解和使用这两个核心组件。 ... [详细]
  • 最近团队在部署DLP,作为一个技术人员对于黑盒看不到的地方还是充满了好奇心。多次咨询乙方人员DLP的算法原理是什么,他们都以商业秘密为由避而不谈,不得已只能自己查资料学习,于是有了下面的浅见。身为甲方,虽然不需要开发DLP产品,但是也有必要弄明白DLP基本的原理。俗话说工欲善其事必先利其器,只有在懂这个工具的原理之后才能更加灵活地使用这个工具,即使出现意外情况也能快速排错,越接近底层,越接近真相。根据DLP的实际用途,本文将DLP检测分为2部分,泄露关键字检测和近似重复文档检测。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 如何在局域网内设置电脑间资源共享盘
    本文详细介绍如何在局域网内的不同电脑之间设置资源共享盘,确保文件和资源能够安全、高效地共享。 ... [详细]
  • 本文探讨了 Spring Boot 应用程序在不同配置下支持的最大并发连接数,重点分析了内置服务器(如 Tomcat、Jetty 和 Undertow)的默认设置及其对性能的影响。 ... [详细]
author-avatar
wy
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有