'DBA'에 해당되는 글 1건

  1. 2009.09.21 DBA에도 여러 직종이 있다!!
http://www.neonesoft.com/blog/blogs/cmullins/archive/2009/05/27/The-Many-Different-Types-of-DBAs.aspx

원문은 위에서 참고.

아래는 간단하게 위의 내용을 요약한 것을 쓴다.

System DBA

A system DBA focuses on technical rather than business issues, primarily in the system administration area. Typical tasks center on the physical installation and performance of the DBMS software and can include the following:

    * Installing new DBMS versions and applying maintenance fixes supplied by the DBMS vendor
    * Setting and tuning system parameters
    * Tuning the operating system, network, and transaction processors to work with the DBMS
    * Ensuring appropriate storage for the DBMS
    * Enabling the DBMS to work with storage devices and storage management software
    * Interfacing with any other technologies required by database applications
    * Installing third-party DBA tools

System DBAs are rarely involved with actual implementation of databases and applications. They might get involved in application tuning when operating system parameters or complex DBMS parameters need to be altered.

Indeed, the job of system DBA usually exists only if the organization does not have an official system administration or systems programming department.

1. System DBA
system DBA는 비지니스 이슈보단 테크니컬한 부분에 포커스가 있는데 특히 시스템 관리 부문쪽이다.
물리적인 설치와 DBMS의 성능향상을 위한 업무 이외에도 다음을 포함한다.

- DBMS의 설치와 DBMS의 벤더에서 제공하는 패치나 fix들을 설치하여 유지한다.
- 시스템 파라미터 들을 설정하고 조절한다.
- DBMS와 더불어 OS, network, transaction 프로세서들과의 진행을 위한 튜닝을 한다.
- DBMS를 위한 적절한 스토리지를 구성한다.
- DBMS가 스토리지 디바이스와 관리 소프트웨어들과 같이 협력할 수 있게 설정한다.
- DB의 app들에 의한 다른 기술들과 접목시킨다.
- 3rd party DBA 툴을 설치한다.



Database Architect

Some organizations create a separate position, database architect, for design and implementation of new databases. The database architect is involved in new design and development work only; he is not involved in maintenance, administration, or tuning of established databases and applications. The database architect designs new databases for new or existing applications.

The rationale for creating a separate position is that the skills required for designing new databases are different from the skills required to keep an existing database implementation up and running. A database architect is more likely than a general-purpose DBA to have data administration and modeling expertise.

Typical tasks performed by the database architect include:

  • Creating a logical data model (if no DA or data modeler position exists)
  • Translating logical data models into physical database designs
  • Implementing efficient databases, including specifying physical characteristics, designing efficient indexes, and mapping database objects to physical storage devices
  • Analyzing data access and modification requirements to ensure efficient SQL and optimal database design
  • Creating backup and recovery strategies for new databases
Many organizations do not staff a separate database architect position, instead requiring DBAs to work on both new and established database projects.

2. Database Architect
어떤 조직들은 DB architect 라는 위치를 따로 만드는데, 이는 새로운 db를 디자인하거나 구현하기 위함이다.
db 아키텍트는 유지보수, 관리, 튜닝, db/app 생성 등의 업무가 아닌,
오직 db의 새로운 디자인과 개발에만 매달린다.

- 논리적인 data 모델을 만든다. (DA나 모델러 직업이 없을때)
- 논리적인 data 모델을 물리적인 디자인으로 변경
- 특정적인 물리 특징, 효율적인 인덱스 구조, db의 objects를 물리적인 스토리지 device에 사상하는 등의 기술등을 포함한 효율적인 db를 구현한다.
- data의 접근을 분석하고, 효과적인 SQL과 최적화된 DB의 디자인을 확실시 하게 하기 위한 요구에 대한 분석
- 새로운 db를 위해 백업과 복구 전략을 만든다.



Database Analyst

Another common staff position is the database analyst. There is really no set definition for this position. Sometimes junior DBAs are referred to as database analysts. Sometimes a database analyst performs a role similar to that of the database architect. Sometimes the data administrator is referred to as the database analyst or perhaps as the data analyst. And sometimes a database analyst is just another term used by some companies instead of database administrator.


3. DB Analyst
정확한 정의는 없다. 때때로 신입 DBA를 ,  또는 db 아키텍트와 같은 롤을 하는 애들을 이렇게 부르기도 한다.
그리고, data 관리자를 db analyst 혹은 data analyst 라고 부른다. 다른 회사에서는 db 관리자를 이 용어로 부르기도 한다.


Data Modeler

A data modeler is usually responsible for a subset of the DA’s responsibilities. Data modeling tasks include the following:

  • Collecting data requirements for development projects
  • Analyzing the data requirements
  • Designing project-based conceptual and logical data models
  • Creating and updating a corporate data model
  • Ensuring that the DBAs have a sound understanding of the data models
4. data modeler
모델러는 DA가 하는일의 작은 부분이라 생각하면 된다.
- 프로젝트를 하기 위하여 데이터의 요구사항을 모은다.
- 데이터 요구사항을 분석한다.
- 프로젝트 기반의 개념과 논리적인 데이터 모델을 디자인한다.
- 통합된 데이터 모델을 만들고 업뎃 한다.
- DBA가 데이터모델에 대해서 이해할 만하게 한다.


Application DBA

In direct contrast to the system DBA is the application DBA. The application DBA focuses on database design and the ongoing support and administration of databases for a specific application or applications. The application DBA is likely to be an expert at writing and debugging complex SQL and understands the best ways to incorporate database requests into application programs. The application DBA must also be capable of performing database change management, performance tuning, and most of the other roles of the DBA. The difference is the focus of the application DBA—it is on a specific subset of applications rather than the overall DBMS implementation and database environment.
 
Not every organization staffs application DBAs. However, when application DBAs exist, general-purpose DBAs are still required to support the overall database environment and infrastructure. When application DBAs do not exist within an organization, general-purpose DBAs are likely to be assigned to support specific applications while also maintaining the organization’s database environment.

There are pros and cons to staffing application DBAs. The arguments in favor of application DBAs include the following:

  • An application DBA can better focus on an individual application, which can result in better service to the developers of that application.
  • The application DBA is more often viewed as an integral component of the development team and therefore is better informed about new development plans and changes.
  • Because the application DBA works consistently on a specific set of applications, he can acquire a better overall understanding of how each application works, enabling him to better support the needs of the application developers.
  • With a more comprehensive understanding of the application, an application DBA will have a better understanding of how the application impacts the overall business. This knowledge will likely result in the execution of DBA tasks to better support the organization.

But all is not favorable for application DBAs. There are cons to implementing an application DBA role:

  • An application DBA can lose sight of the overall data needs of the organization because of his narrow focus on a single application.
  • The application DBA can become isolated. Lack of communication with a centralized DBA group (if one exists) can result in diminished sharing of skills.
  • When an application DBA implements useful procedures, it takes more effort to share these procedures with the other DBAs.
  • Due to the application-centric nature of the position, an application DBA can lose sight of new features and functionality delivered by the DBMS group.
In general, when staffing application DBAs, be sure to also staff a centralized DBA group. The application DBAs should have primary responsibility for specific applications, but should also be viewed as part of the centralized DBA group.


Task-oriented DBA

Larger organizations sometimes create very specialized DBAs that focus on a specific DBA task. However, task-oriented DBAs are quite rare outside of very large IT shops. One example of a task-oriented DBA is a backup-and-recovery DBA who devotes his entire day to ensuring the recoverability of the organization’s databases. Security, compliance and data protection are other subjects that could be the focus of a task-oriented DBA.

Most organizations cannot afford this level of specialization, but when possible, task-oriented DBAs can ensure that very knowledgeable specialists tackle very important DBA tasks.

Performance Analyst

Performance analysts are a specific type of task-oriented DBA. The performance analyst, more common than other task-oriented DBAs, focuses solely on the performance of database applications.

A performance analyst must understand the details and nuances of SQL coding for performance and be able to design databases for performance. A performance analyst will have very detailed technical knowledge of the DBMS so that he can make appropriate changes to DBMS and system parameters when required.

However, the performance analyst should not be a system DBA. The performance analyst must be able to speak to application developers in their language in order to help them facilitate appropriate program changes for performance.

The performance analyst is usually one of the most skilled, senior members of the DBA staff, a role that s/he has grown into due to experience and the respect s/he has gained in past tuning endeavors.

Data Warehouse Administrator

Organizations that implement data warehouses for performing in-depth data analysis often staff DBAs specifically to monitor and support the data warehouse environment. Data warehouse administrators must be capable DBAs, but with a thorough understanding of the differences between a database that supports OLTP and a data warehouse. Data warehouse administration requires experience with the following:

  • Business intelligence, query, and reporting tools
  • Database design for read-only access
  • Data warehousing design issues such as star schema
  • Data warehousing technologies such as OLAP (including ROLAP, MOLAP, and HOLAP)
  • Data transformation and conversion
  • Data quality issues
  • Data formats for loading and unloading of data
  • Middleware


Posted by Gwoong
,