'DW'에 해당되는 글 2건

  1. 2009.09.25 DB2 특장점과 기업사례 1
  2. 2009.09.21 DBA에도 여러 직종이 있다!!

 

첫 번째, DB에 대해 이해하기

  http://blog.naver.com/bluehj8282/89634193

두 번째, DB2 리눅스에 설치하기

  http://jiwoongs.tistory.com/entry/Ubuntu-에서-DB2-V97-설치하기

세 번째, DB2 윈도우에 설치하기

  http://blog.naver.com/ggoma7/110070201013

네 번째, DB2 클라이언트SW, DB2 Express-C 활용하기

  http://blog.naver.com/rookieangel/140091201086

다섯 번째, DB2의 특장점과 기업사례 살펴보기

  http://blog.naver.com/pieuler/60091439068

 

IBM DB2 ( DB2 특장점 및 기업사례 )

 

요즘엔 정말 많은 DBMS 가 존재하죠. Oracle, MS, Cubrid 등 국내외를 막론하고 정말 많은 벤더에서 DBMS를 만들고 있답니다.

 

여기서 잠깐! 이 DB들의 공통된 특징이 무엇인지 알고 있으신가요?

 

그것은 바로 모두 RDB 라고 말하는 '관계형 데이터베이스 관리 시스템' 입니다. 관계형 데이터베이스는 70년대에 E.F. Codd에 의해 처음 제안되었고,

 

요즘 대부분의 데이터베이스 시스템은 관계형 데이터베이스 모델에 기반하고 있습니다.

 

여기서 두번째 질문!! Codd는 관계형DB 에 대한 이론적 토대를 제시해 주었죠. 그렇다면 이를 구현한, 그러니까 최초의 관계형 DBMS는 무엇일까요?

 

그렇습니다. 바로 지금 이 블로그에서 살펴볼 DB2 가 그 주인공입니다. 1983년 IBM에서 관계형 DB 모델을 구현한 최초의 DBMS를 IBM 자사의

 

메인프레임 기반으로 만들었습니다. 추가로 하나더 말씀드리자면, 여러분들이 현재 배우고 있는 SQL 이라는 것도 사실 IBM 에서 처음 만들어진 것이랍니다.

 

( 뭐... 요즘에야 표준을 정하고 어쩌고 저쩌고 하니깐. SQL 학습에 있어서 IBM을 의식할 필요는 없겠죠.ㅋ )

 

이렇듯 IBM의 DB2는 관계형 데이터베이스 의 시작부터 지금까지 최고의 데이터베이스 시스템으로 꾸준히 성장해 오고 있습니다.

 

그래서 이번에 이글을 통해 DB2 제품의 특장점 그리고 현재 어떤 기업에서 사용하고 있는 지 차근차근 살펴보겠습니다.

 

 

IBM DB2 과연 무엇이 그것을 특별하게 만들었을까?

(DB2 특장점 및 성능)

 

공식적으로 IBM 에서 말하는 DB2의 장점을 위주로 한번 살펴볼까요? 하하하

 

         

 

자가 최적화 , 자가 치유, 자가 구성 , 워크로드 관리, 확장된 자동화 기능 등 다른 여타 DBMS에서는 볼 수 없는 최신기술들이 들어있군요.

 

자가 최적화에 대해서 살펴보자면, 일단 다른 DBMS 들과는 달리 DB2는 각 워크로드(업무)의 특성에 맞게 시스템이 최적화될 수 있군요.

 

하긴 연산이 많은 프로그램을 이용할 때와, 웹과 같이 데이터 보여 주기에만 전념하는 프로그램은 다르니까요.

 

이는 마치 다른 DB들이 포크 숟가락 하나로 밥을 먹는다면, DB2는 젓가락과 숟가락으로 밥을 먹는 것 같다는 생각이 드네요.

 

그외에 가만 보니, self-healing 이 눈에 띄네요. 오라클은 디스크 장애등에 대처하기 위해 별도의 고가 솔루션을 구현해야 하지만,

 

DB2는 기본적으로 제공되는 self-healing 시스템으로 비용을 많이 줄일 수 있겠네요.

 

하지만, 이렇게 다양한 장점이 있다고는 해도 아직 저같은 학생들에게는 피부에 와닿지는 않네요.... 그럼 계속해서 다른 특장점을 살펴볼까요.

 

 

 

         

 

두번째.... 스토리지 비용 절감!!  데이터 압축 기술이 좋기 때문에 스토리지 규모를 줄인다는 이야기 같은데요. 오호~ 이 이야기는 솔깃하네요.

 

게다가 비교적 시간이 많이 드는 디스크 입출력을 최소화 할 수도 있구요. 속도는 빨라지고, 용량은 줄어들고... 이건 좀 좋군요.

 

이렇게하면서 연산이 줄어드니 에너지 낭비도 줄어들것이고, 자연스럽게 환경에도 좋게 되겠군요.

 

이 이야기가 좀 오버라는 생각도 들긴하지만, 실제로 많은 기업에서 이렇게 사소한 것들 하나하나에 신경쓰면서 그린IT를 실현하고 있다고 하니

 

뭐... 괜찮네요.. 좋아요.ㅋㅋㅋ

 

 

 

         

 

오호... TPC 자료를 보니 성능도 타 DBMS에 뒤지지 않네요.

 

TPC 같은 DB 제품 성능을 측정하는 공신력있는 기관의 자료이니 믿을 만하네요.

 

이제 드디어 오라클도 한물가는 판국인가요? ㅋㅋㅋㅋ

 

 

 

         

 

와우 혹하는 이야기들. 저 같이 미래의 개발자를 꿈구는 이에게는 확 와닿는 이야기.

 

동기화 문제에 있어 예전 방식도 가능하다는 것. 흔히 말하는 약타입 언어에도 통한다는 것. 맘에 드는 군요.

 

그리고 덧붙이면, 오라클의 PL/SQL 도 98% 이상 지원이 되기 때문에 얼마든지 오라클에서 마이그레이션도 가능하다고 합니다.

 

 

 

항상 오라클만 봤다가 이렇게 DB2를 알아보니... 생각보다 똘똘한 녀석이었네요.

 

이외에도 하드웨어 서버와 함께 운용하여 하나의 솔루션을 제공하면서 훨씬 씨너지 효과도 낼 수 있고. 굳!

 

 

 

 

그럼 이렇게 많은 장점을 가지고 있는 DB2, 어떤 기업에서 사용하고 있을까요?

( 기업 사례 )

 

인터넷 등을 통해 확인할 수 있는 기업들의 DB2 활용 사례들을 찾아 봤어요. ㅎㅎ

 

 

                             

 

와우 꿈의 기업 삼성 SDS에서도 DB2를 이용했군요. SDS 자체적으로 차세대 지식정보 시스템(KIS)을 구축하면서 SAP ERP 에 DB2를 이용했었군요.

 

기존에 업무별, 인프라 별로 나눠진 모듈 단위의 시스템 구성을 프로세스 단위의 맵핑 형태로 재매치하는 게 프로젝트의 목표였다고 합니다.

 

이때 ERP로 유명한 SAP의 솔루션을 도입하였고, SAP과 함께 30년 이상 지속적인 파트너십을 유지하고 있던 DB2가 최고의 궁합이었다고 하네요.

 

아무래도 지속적인 관계를 유지하면서 DB2가 SAP에 많은 부분에 있어서 최적화가 가능했었겠네요. 그렇다면 당연히 SAP on DB2 !!!

 

최고의 ERP 솔루션 SAP 과 최고의 DBMS DB2 ... 나름 환상 궁합이라눙~ㅋㅋ

 

 

 

                             

 

KTF 역시 IBM의 DB2를 이용하였는데요. 코그노스(cognos) 라는 유명한 비즈니스 인텔리전스(BI) 제품을 활용하여 KTF는 기존의 CRM 시스템에

 

활력을 불어 넣을 수 있었습니다.

 

아이구. 여기저기서 갑자기 당황해 하시는 분들이 많으시네요. 코그노스니 비즈니스 인텔리전스니 CRM 이니 하는 이야기에 많이 들 당황하시는 것

 

같으네요.ㅋㅋㅋ  간단하게 설명하자면, CRM은 고객과 관련한 정보와 자료를 수집하여, 통합 및 분석하여 고객 특성에 맞게 마케팅을 계획하고 지원

 

및 평가하는 것을 의미합니다. 비즈니스 인텔리전스 제품이라는 것은 기업이 효율적으로 그리고 정확하게 자료를 분석 및 처리하여 합리적인 비즈니스를

 

가능하게 하는 제품군 이구요. 그리고 코그노스는 BI의 간판 기업 중 하나입니다.

 

다시 이야기로 돌아가자면, IBM은 BI 분야에 진출하기 위해 코그노스를 인수하였고, 국내에서는 합병 이후 첫번째 고객이 되었던 IBM에서는 기념비적인

 

프로젝트였습니다. 그리고 이때 DB2를 적극 활용할 수 있었구요. 아무래도 타 회사 제품보다 같은 회사 제품을 이용하면 훨씬 성능도 좋고, 벤더의

 

지원과 교육에 있어서도 탁월했을 것이라 판단하네요.

 

다시 한번 느끼는 것이지만, DB2 자체만으로도 충분히 최고의 제품일 수도 있지만, 그와함께 IBM에서 보유하고 있는 다양한 제품군 및 솔루션을 동반하여

 

시너지를 내면서 성장하고 있음을 확인할 수 있었습니다.

 

 

 

                             

 

이번엔 LG전자!! 아... 여의도의 쌍둥이 빌딩... 한번 구경이라도 해 봤으면 하는 기업이네요.

(취업 준비생이라... ㅡ.ㅡ;;;;)

 

LG전자. 세계적인 글로벌 기업이죠. 말해 무엇하겠습니까만은 LG전자에게도 고민이 있었으니. 다름 아닌 전세계에 산재되어 있는 지역별,

 

법인별, 사업별 자료들이 얽히고 섥혀있어서 하나로 통합되어 있지 않았다는 것입니다. 이를 잘 관리하여야 좋은 의사결정과 업무 효율성을

 

기대할 수 있었을 텐데 말이죠. 그래서 LG전자는 IBM의 MDM 솔루션을 이용하기로 결정을 했었습니다. 그러면서 동시에 DB2를 이용하게

 

된거죠.

 

아... 역시나 다시 시작되는 IBM의 끼워팔기 수법... 이거이거 좀 심하다 싶을 정도군요.ㅋㅋ SAP ERP 에 끼워 팔고. 코그노스 BI 에

 

끼워팔고, IBM MDM에 끼워 팔고. 이건 뭐... ㅋㅋㅋㅋ; 우연히 선택한 3개 사례 모두가 끼워팔기라니. ^^;;;

 

하지만, 이게 맞는 것일 수도 있다는 생각을 하게 되는군요. 어차피 DB는 혼자 존재해서는 의미를 갖기 힘든 분야이니까요. 이렇게 세계적

 

기업과 파트너십을 유지하거나, 자사의 최고 솔루션과 결합하여 그들을 최고가 될 수 있도록 서포트 하는 모습...

 

생각해 보니 나쁘지 않네요.ㅋㅋ

 

 

 

#. 출처 및 참고자료

http://www.kdug.kr/  한국 DB2 유저 그룹

http://www.DBguide.net  DB 구축.운영 종합정보 사이트  ( http://www.dbguide.net/know/know102001.jsp?idx=3280&mode=view )

http://www-01.ibm.com/software/kr/data/db2/lowerdatabasecosts/index.html IBM DB2 공식 사이트

http://cafe.naver.com/sojw.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=2053 Digit Open Forum (성능 항목별 DBMS 3종 비교 분석)

http://www.tpc.org/tpch/results/tpch_results.asp  Transaction Processing Performance Council

 

 

 

 

 

 

 

IBM developerWorks CampusWizard 5th

 아 이 비 엠      디 벨 로 퍼 웍 스      캠 퍼 스 위 자 드      5

 

http://www.ibm.com/developerworks/kr

Posted by Gwoong
,
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
,