阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

作为大数据时代的DBA,如何防止自己被淘汰

36次阅读
没有评论

共计 2288 个字符,预计需要花费 6 分钟才能阅读完成。

导读 随着大数据时代的到来,DBA 的作用会越来越显著,DBA 的发展前景也会变得越来越明朗。

作为大数据时代的 DBA,如何防止自己被淘汰

一句话对比三大数据库软件

这个世界上 Oracle、SQL Server 和 MySQL 三大数据库软件呈三足鼎立之势,三者之间互有优缺点。网上能查到的内容我不再赘述,我把三者的优缺点对比总结成了三行文字:

Oracle:最贵,功能最多,支持平台数量较多,速度中等,开发和运维比较简便,最安全。
SQL Server:价格适中,功能比较丰富,支持平台单一,速度最慢,开发和运维最简便,比较安全。
MySQL:价格最低廉,功能最少,支持平台最多,速度最快,开发和运维最繁琐,最不安全。

作为大数据时代的 DBA,如何防止自己被淘汰

DBA 选择数据库的方法
1、按性能和安全性来选择

大型国企(银行)、传统企业上市公司(保险)的企业级应用对数据的完整性和安全性要求最高,务必万无一失,因此安全性最佳、功能最齐全的 Oracle 是传统软件的首选。一般来说移动互联网领域的公司对数据的完整性和安全性的敏感程度并不太高,所以互联网行业的从业者可能有入行几年还没见过 Oracle 的,不过电商、金融类的互联网产品对安全性要求同样非常高的软件也应该选择 Oracle 作为数据库。

如果公司是非移动互联网行业的外企,那么一定要选择 Orcale,一来是洋老板普遍财大气粗,二来是外企领导不像国内领导这么依赖对 Windows 系统友好的数据库软件。

2、按开发速度和运维难度来选择

一般国企和事业单位以及传统企业小公司的领导对软件(一般情况下只有展示网站,连 ERP 系统都是买现成的)的要求就是价格低、快点出结果;加上国内的传统的领导对 Windows 系统有说不清的迷恋;如此一来选择 SQL Server 能同时满足这三个要求,不过一般在这样的单位不会存在 DBA 这个岗位——让开发网站的程序员担任 DBA 的一部分职责(其实也就只有备份、恢复、作业管理等几样)。

3、按价格和速度因素来选择

移动互联网时代的创业公司并不需要太纠结数据的万无一失,但很在意成本,并且对数据访问速度要求很高。因此资金不太充裕、为了给移动端提供 API 的服务器选择 MySQL 是最明智的。事实上在互联网领域 MySQL 的市场占有率是最高的,大多数移动互联网公司都用 MySQL 作为数据库。

Oracle 和 SQL Server 都是具备完善功能的数据库生态系统,而 MySQL 仅是一个速度快、兼容性好的关系型数据库软件。但好在 MySQL 是开源的,同时追求速度快和数据安全的公司(移动互联网领域的电商、金融公司)在资金充裕可以专人负责写一个自己的 MySQL 系统,满足系统的高可用和、高并发、高可扩的需求。

尽管 MySQL 的安全性一直为人所诟病,但经过多年改良,安全性已经超越了 SQL Server。

DBA 如何优化 SQL

一个合格的 DBA 会明白无论选择 Oracle、MySQL 还是 SQL Server,SQL 语句的优化都是数据库优化的决定性因素,;而对数据库工具本身的优化只不过是细枝末节,别人的配置方式也很容易从网上查到。

SQLite 是 Android 系统上运行的数据库软件,性能与三大数据库软件不可同日而语,况且在 Java 语言的 IDE 里编写 SQL 还没有自动提示,有时候 Android 程序员对 SQL 语句优化的要求比 DBA 还高,在 SQL 上吃过不少亏的我总结了一些 SQL 语句优化方案,在此抛砖引玉,并非外行指导内行:

(1)在 FROM 语句中包含多个表的情况下,把条目最少的表放在前面。比如表一记录某省人口数据,表二记录全国失学儿童数据,那么查询某省的失学儿童应该把表二放在前面。

(2)在 WHERE 语句中过滤掉最多数据的条件必须卸载前面。列如把性别写在生肖前面的效率是生肖写在性别前面的 6 倍。

(3)避免使用 SELECT * 因为这样会查找所有的列名,耗费更多的时间。

(4)在 SQL 语句的 WHERE 和 JOIN 部分中用到的所有字段上,应该加上索引。

(5)移除不必要的表,可以减少很多数据库的流程。

(6)尽管 SQL 是大小写不敏感的语言,规范的 SQL 语句务必大写。

DBA 在大数据时代的发展前景

成为一个 DBA 表面上“仅”需要 SQL 语言和数据库基础管理的知识,所以造成了从业者良莠不齐,举一个极端的例子,我有一个留级两年的同学勉强拿到毕业证后就从事了 DBA。然而理论跟实际相差甚远,模拟的环境根本达不到线上要求的多用户、高并发等压力,仅在课堂上和自学是不能成为一个合格的 DBA 的,合格的 DBA 必须在企业中的实战中走出来。一个合格的 DBA 必须掌握 Linux 基本命令和操作、数据库备份和恢复、SQL 优化、数据库性能优化和至少一门脚本语言(如 Python)。

移动互联网时代雨后春笋般诞生的创业公司给人一种 DBA 的角色性变弱的错觉,其实任何 IT 公司做大后都离不开 DBA 这个岗位。DBA 的发展前景一直很不错,尤其在大数据的时代里,原本就一直存在的性能问题和安全问题会更加突出,这意味着企业对 DBA 人才的需求会越来越旺盛,同时这也意味着 DBA 会面临比以往更多样化的困难和更严峻的挑战。加上近年来的大规模集群和自动化运维,很多以前手工维护的工作现在都可以通过一系列自动工具来完成,尽管让只会增删改查的 DBA 看到了自己的可替代性,但也给对技术精益求精的 DBA 节约出了钻研新技术和新知识的时间,使他们更加专注于解决所前所未有的困难。

大数据时代是一个以数据驱动决策的时代,数据就是企业的生命,掌握公司命脉的 DBA 的岗位越来越重要,作用也越来越显著,待遇也越来越丰厚,发展前景也越来越明朗。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计2288字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中