AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 290745
Accepted
D-K
D-K
Asked: 2021-04-30 07:58:50 +0800 CST2021-04-30 07:58:50 +0800 CST 2021-04-30 07:58:50 +0800 CST

数据库“管理员”是否应该有能力深入研究运行时查询性能问题?

  • 772

我承认每个人的经验和能力都不同。话虽如此,我想避免通过行动为 DBA 设定过高(或过低)的期望;似乎是“管理员”。

鉴于:

  • 我是一名深入研究 SQL Server 故障排除和性能问题的开发人员。晚上我用一桶爆米花看 Brent Ozar 的视频。
  • 一家有多个部门的公司,这个部门有大约 100 名团队成员
  • 许多客户的数据库拥有数百万行的 ETL
  • 一个小型 DBA 团队,负责处理这些相同的客户。为新客户或升级客户处理 HAG 问题、备份、恢复、创建新部署。

我不是试图证明我自己的观点。我希望调整我或公司其他人的意见。

问题:

鉴于上述情况,是否应该期望 DBA 只是一个“管理员”?这是你经常看到的吗?


我进入这部肥皂剧(请参阅我最近的其他问题),期望 DBA 被“期望”深入研究。我开始相信我误解了,我倾向于成为一名 DBA——成为一名“管理员”。

我欢迎其他人的经验,也许是关于完善这个问题的建议。

sql-server career
  • 5 5 个回答
  • 554 Views

5 个回答

  • Voted
  1. Best Answer
    J.D.
    2021-04-30T11:31:29+08:002021-04-30T11:31:29+08:00

    标题就是这样,只不过是一组单词,其含义的相关性取决于您如何在域的上下文中定义该含义。在这种情况下,该域就是您的公司,因此你们应该定义 DBA 角色以适应业务需求(实际上是在 DBA 可以做什么的范围内)。

    DBA 是我发现的那种角色之一,我发现它会演变为许多帽子或交叉类型的职位。理由是,这是一个由许多人组成的职业,他们在过去的生活中要么是软件开发人员,要么是系统管理员,或者两者都不是。

    作为一个从软件开发人员到常驻 DBA 到另一家公司的实际 DBA 并回到准软件开发人员/DBA 的人,我体验了作为 DBA 而不是服务器的大部分数据库开发和性能调整方面,数据库管理——尽管我已经并且仍然在管理其中的一些方面。这是因为我以前作为开发人员的经验,并且因为我工作的公司需要一个既能编写代码又能从架构和查询调优的角度帮助优化数据库层性能的人。

    因此,总而言之,在本质上只是管理数据库系统并在服务器内部亲自动手的人、纯粹从事数据库设计和性能调整的其他人以及其他混合的人之间存在着各种各样的 DBA 角色实际软件开发(甚至在数据库层之外)的职责,并进行性能调整和数据库管理。

    • 6
  2. MBuschi
    2021-04-30T09:06:24+08:002021-04-30T09:06:24+08:00

    我认为 DBA 应该主要被视为实例的管理员,负责实例的正常运行、数据存储、效率和数据库的可用性,同时也负责验证程序和流程的正确执行,以确保均衡利用资源。

    根据我的经验,程序员必须将它视为必须从项目的最早阶段咨询和参与的盟友。他的观点很有价值,与程序员的观点不同。程序员的核心是他的应用程序,一个依赖于实例的整个应用程序生态系统的 dba。

    他们的关系必须是协同的,而不是冲突的。

    • 4
  3. arthur
    2021-05-01T00:14:53+08:002021-05-01T00:14:53+08:00

    如果您面临浅层问题,则无需进行任何深入研究。

    如果您面临复杂的问题但经验不足,那么您将无法进行深入研究。其他人将主导这些,因为复杂的问题很少,聪明的人会寻找它们。

    如果您是唯一的 DBA,而其他人经验不足(他们会将工作委派给数据库而不考虑自己在做什么),那么您将不得不进行深入研究。这是典型的 Web 开发环境中的情况。即使有人说您应该或不应该,您也应该进行如此深入的研究。

    这种复杂的计算和开发环境有许多利益相关者。如果您的组织达到一定的成熟度级别,那么您将拥有企业开发人员/架构师以及数据库开发人员/架构师。在协作的自我批评环境中,企业开发人员意识到他们解决问题的技巧是有用的,但存在盲点。数据开发者做有用的东西也有盲点,希望这些盲点和企业开发者不一样。深潜将有助于进一步推动前沿。

    • 3
  4. user228900
    2021-04-30T23:30:50+08:002021-04-30T23:30:50+08:00

    答案最初作为评论留下:

    作为一名 DBA,我所做的不仅仅是管理。我确保事情表现得更好,并确保开发人员在与系统交互时不会试图绕过所涉及的规则。我的工作是保护数据免受外部和内部威胁,无论它们是恶意的还是其他的。我教人们有关系统的知识。我回答了企业提出的新问题。这些答案 - 希望 - 会导致更好的决策。“任何人”都可以管理数据库,但不是每个人都可以管理数据库。-马蒂戈


    会因公司而异。Brent Ozar 对此有一个快速的图表,但公司越大/越老,根据我的经验,责任越小。较小的/初创企业将更多地依赖混合数据工程师或站点可靠性工程师来完成经典的 DBA 职责 + 自动化 + 调优 + 代码编写。-lowlydba-约翰-米

    • 2
  5. Aleksey Vitsko
    2021-05-01T09:00:51+08:002021-05-01T09:00:51+08:00

    我进入这部肥皂剧(请参阅我最近的其他问题),期望 DBA 被“期望”深入研究。我开始相信我误解了,我倾向于成为一名 DBA——成为一名“管理员”

    DBA 不一定是“管理员”

    你所指的是一个Production DBA

    但也Development DBA有人专注于性能调优和编写查询。
    在这里你可以阅读更多(这是除了 lowlydba 的链接,也可以查看)

    https://www.brentozar.com/sql/picking-a-dba-career-path/

    贵公司的 DBA 是否应该“深入研究”运行时查询性能问题,我认为这取决于对“他们被聘用的目的是什么?”的问题的回答。和“他们的工作描述是什么?”

    如果某个人的工作描述没有严格说明Production DBA(他们期望执行的唯一功能是备份、HAG、保持服务器上的灯、自动化等),那么“深度潜水”不仅是预期的,而且您有权要求它。优秀的 DBA 不会等待某人提出要求,而是主动提前解决问题,不过

    • 2

相关问题

  • SQL Server - 使用聚集索引时如何存储数据页

  • 我需要为每种类型的查询使用单独的索引,还是一个多列索引可以工作?

  • 什么时候应该使用唯一约束而不是唯一索引?

  • 死锁的主要原因是什么,可以预防吗?

  • 如何确定是否需要或需要索引

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve