网站大量收购独家精品文档,联系QQ:2885784924

如何由开发人员和运维人员转型DBA.pdf

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
如何由开发人员和运维人员转型DBA

如何由开发人员和运维人 员转型DBA ?演讲人:宋沄剑 议程 ? 为什么转型DBA很难 ? 转型DBA的优势和劣势 ? 如何转型DBA 为什么转型DBA很难 为什么转型DBA很难 ? 很多网上的数据库调优文章包装过度,故事通常可以抽象出如 下模版 ? 在机场接到客户电话,否则不在机场显不出高大上 ? 客户已经被问题折磨的”这酸爽”,否则显示不出顾问价值 ? 一定不能来得及吃饭,否则问题显得不紧急 ? 还一定要出点状况(堵车、突然断网等),否则没有戏剧性 ? 解决问题方法不能超过篇幅20%且不能写细节,否则没有神秘性 ? 上面的只是一个玩笑 为什么转型DBA很难 ? 但也不能那么简单…… 转型DBA难于开始 ? 在看完调优故事之后….. ? 关键字:DBA 604个 高级DBA:46个 初级/实习DBA: 2个 ? 而打开仅有的2个招聘后,发现: ? 2年以上工作经验 ? 熟悉生产环境的备份、日常维护与优化 ? 梯子的第一节在哪? DBA所需的知识广 ? 数据库处于IT架构的中间层 ? DBA不仅需要懂数据库,还需要 懂下层和上层,甚至还需要了解业 务领域 ? DBA还必须能够与开发人员与管 理层进行交流 DBA学习进展缓慢 ? 开发人员的错误通常可以在编译时 或测试时发现,这意味着可以很快 的学习经验 ? DBA的错误通常都是在上线后,最 终用户反馈过来,所以经验的积累 往往需要很长时间 DBA错误代价惨重 ? DBA犯错相比其他职业的代价更为惨重 ? 业务中断 ? 数据丢失 ? 数据泄露 ? 应用体验差 转型DBA的优势和劣势 优势:薪酬 ? 同样工作经验的DBA薪酬会比开发人员、网络工程师、系 统工程师要高,DBA在IT行业薪酬中上 ? 薪酬会随着经验增长 优势:知识淘汰速度 ? 数据库的功能通常只会新增,很少淘汰旧功能 ? 经验和价值成正比 优势:视野和学习 ? 成熟的数据库系统会高度自动化运维,意味着人可以工作 的更轻松 ? 工作中会和组织中不同的角色打交道,接触不同层面的知 识 劣势:压力 ? DBA又称为Default Blame Acceptor,只有在出问题时大家 才关注你 ? 需要限定时间解决不同原因导致的数据库问题 ? 存储 ? 网络 ? 交换机 ? 程序 ? 虚拟化 ? 操作系统 劣势:工作时间有时不确定 ? 7*24小时的系统,需要在任何时间响应并解决问题 ? 系统的升级、迁移、硬件的替换都需要在系统闲时做(意 味着晚上或者节假日) 劣势:容错性小 ? 工作疏忽导致严重问题(数据丢失、被窃、服务器停机、 人为导致故障)会导致严重后果 ? 频率的定义 如何转型DBA DBA的工作职责 ? 安装升级数据库 ? 为系统和数据库打补丁 ? 数据库健康监测 ? 规划存储 ? 权限控制 ? 备份还原 ? 数据ETL ? SQL脚本审核与部署 ? 灾难恢复 ? 高可用架构设计 ? 文档化 ? 性能调优 ? 沟通 毕业后经过培训成为DBA ? 可能性最小 ? 需要将所学应用到数据库 ? 需要和开发人员打交道 ? 犯错成本较高 ? 公司很难会将至关重要的数据交到新手手里 ? 即使公司有高级DBA希望培养新手,机会往往也会被内部 拿到(这也是为什么初级DBA岗位稀缺的原因) ? 注:目前市场对厂商证书的认可度较差 由开发人员转型DBA ? 可能性较高 ? 优势 ? 通常都有SQL开发经验 ? 容易和开发人员沟通 ? 劣势 ? 对生产环境认识不足 ? 对存储或网络通常知识不够 ? 需要转变思维方式(开发偏向实现,数据库偏向抽象。开 发偏向具体,数据库偏向关系代数和集合) 由开发人员转型DBA ? 转型路径 ? 公司有DBA ? 多向DBA请教,DBA审核不过或调优的脚本细问具体原 因,懂得背后原理。 ? 公司没有DBA ? 学习数据库理论,集合思想,学习数据库的游戏规则, 将所学应用于现有数据库看是否能够按照希望的方面提 升。多承担数据库相关的责任。 由开发人员转型DBA ? 集合思维漫谈 ? 对于表A和B的Join C#实现(循环嵌套方式) static void NestedLoopJoin(ListKeyValuePairint, string people, ListKeyValuePairint, string purchases) { foreach (var n in people) foreach (var i in purchases) if (n.Key == i.Key) Console.WriteLine(Name index {0}, {1}, bought some {2} , n.Key, n.Value, i.Value); } ? SQL实现 ? Select * from tbA in

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档