1 SNU OOPSLA Lab. Data Base Management System Overview DBMS 개관 와 정의 DBMS 역사 DBMS 시장 동향 The current DBMS trend
2 SNU OOPSLA Lab. DBMS 란 ? 방대한 양의 데이터를 편리하고 효율적으로 저장, 검색할 수 있 는 환경을 제공해 주는 System Software
3 What is a Database? A large collection of data Data + Programs Database Data STORE SNU OOPSLA Lab.
4 What is a Database? (1) 서울대 40,000 명 학생의 학적 / 수강 정보 –1 명당 10K record : 45 개 과목, 성적, 학기, 재수강, … –10K Byte * 40,000 명 = 400M Byte –Others: 도서관, 보건소, S-card, … 수능시험 관리 정보 –2002 학년도 : 73 만 명 ; 2001 학년도 :87 만 명 –1 명당 8K record: 인적사항, 문항답, 영역점수 / 석차, … –8K Byte * 73 만명 = 6G Byte (10 9 ) SNU OOPSLA Lab.
5 What is a Database? (2) 이동전화 통화 정보 –3000 만 가입자 (2002 년 ) –60 Byte rcord: 통화시간, 통화번호, 기지국, … –3 천만명 * 60 Byte * 5calls/day * 365 일 = 3T Byte (10 12 ) –( 중국 : 136M 가입자 & increasing) 주민등록부 정보 –4 천 7 백만 명 –10K Byte record: 본적, 주소, 주민번호, … –10K Byte * 470 M = 5T Byte SNU OOPSLA Lab.
6 What is a Database? (3) Google database –15 억 Websites, 20 억개의 인덱싱 용어관리 –Usenet archive = 700 Million messages * 20KB/message = 14 TB Hubble Space Telescope Data –2000 년 3 월까지 생성한 data : 7.3 TB 이상 – 매일 3~5 GB 의 데이타를 생성하여 전세계에 전송 Hartwell Bioinformatics Center –Protein Sequencing, Protein Interaction Analysis 등 –12 GB 메모리, 1.8 TB 저장공간의 시스템 –Human Genome Project: 26,000 ~ 40,000 Genes 한국인 의 유전자 맵 – 서울대 의대 벤쳐 마크로젠 – 초기버전 : 900G Byte 완성본 : 15T Byte SNU OOPSLA Lab.
7 What do we do with Database ? (1) Record Search – 주민번호 “ ” 학생의 수학영역 성적 74 만명 * 5 개 records = 3.7 M records 12ms to fetch a record and check content 3.7M * 12ms = 44.4Kseconds = over 12 hours Summarize and Mine for more information – 구역별, 영역별 인구통계 – 특정 병력과 유전자 패턴 – 신용카드 고객군별 구매 패턴 SNU OOPSLA Lab.
8 What do we do with Database? (2) Most (all?) computing applications use some type of a database EDPS MIS, ERP OLTP Data Warehouse ERP CRM Database SNU OOPSLA Lab.
9 창고 Database Management System (DBMS) (1) SNU OOPSLA Lab.
10 창고 창고지기 Database Management System (DBMS) (2) SNU OOPSLA Lab.
11 사용자 주문 배송 관리 DBMS 데이타베이스 급여 관리 경영자 정보 관리 신상 판매 재고 상품 고객 응용 프로그램 Database Management System (DBMS) (3) SNU OOPSLA Lab.
12 Database Management System (DBMS) Collection of interrelated data & Set of programs to access the data DBMS provides an environment that is both convenient and efficient to use. Database Applications: –Banking: all transactions –Airlines: reservations, schedules –Universities: registration, grades –Sales: customers, products, purchases –Manufacturing: production, inventory, orders, supply chain –Human resources: employee records, salaries, tax deductions Databases touch all aspects of our lives! SNU OOPSLA Lab.
13 SNU OOPSLA Lab. DBMS Architecture naive users naive users application programmers application programmers casual users casual users database administrator database administrator application programs application programs system calls system calls query database scheme database scheme file manager file manager application programs object application programs object database manager database manager data manipulation language pre-compiler data manipulation language pre-compiler query processor query processor data definition language compiler data definition language compiler DBMS Disk storage
14 A Sample Relational Database SNU OOPSLA Lab.
15 SQL SQL: widely used commercial query language –E.g. find the name of the customer with customer-id select customer.customer-name from customer where customer.customer-id = ‘ ’ –E.g. find the balances of all accounts held by the customer with customer-id select account.balance from depositor, account where depositor.customer-id = ‘ ’ and depositor.account-number = account.account-number SNU OOPSLA Lab.
16 Major Commercial DBMS in 2004 (1) Market Leader 안정성 대용량 처리 능력 Famous CEO SNU OOPSLA Lab. 10g
17 Major Commercial DBMS in 2004 (2) PC based (Windows NT) Microsoft!!! Window NT/XP 과의 통합 SNU OOPSLA Lab.
18 Major Commercial DBMS in 2004 (3) 안정성 Mainframe Informix 매입 IBM SNU OOPSLA Lab.
19 Database Companies in the World SNU OOPSLA Lab.
20 SNU OOPSLA Lab. Table of Contents DBMS 개관 과 정의 DBMS 역사 DBMS 시장 동향 The current DBMS trend 8
21 SNU OOPSLA Lab. 계층형 및 네트워크 DBMS 1970 년대 초기 이후 IMS (IBM), System/2000(MRA) DMS 1100 (Sperry), Total (Cincom) 장점 : Link 를 통한 빠른 데이터 접근 단점 : Physical Database 에 독립적인 응용을 작성할 수 없음
22 SNU OOPSLA Lab. Network DB Example Query Bronx 에 사는 Mr. Shiver 의 계좌 잔고의 합은 ? LoweryMapleQueensHodgesSideHillBrooklyn Shiver North Bronx Customer records Amount records Root Record
23 SNU OOPSLA Lab. Network DB query example sum:=0 get first customer where customer.name=“Shiver” and customer.city =“Bronx”; while DB_status = 0 do begin sum:=sum+customer.amount; get next customer where customer.name = “Shiver” and customer.city =“Bronx”; end print(sum);
24 SNU OOPSLA Lab. 관계형 DBMS (RDBMS) 1970 년대 후반에서 80 년대 초반 Relational Algebra & Calculus The Spartan Simplicity! SQL: Structured Query Language System/R , 최초의 상업용 RDBMS Ingres , 최초의 연구용 RDBMS E.F.Codd, 1970 CACM Paper, “ The Relational Data Model ”
25 SNU OOPSLA Lab. 관계형 DBMS 의 예 Select sum(amount) from customer where customer.name = “Shiver” and customer.city=“Bronx”; namestreetcityamount LowerlyMapleQueens900 ShiverNorthBronx556 ShiverNorthBronx647 HodgesSideHillBrooklyn801 HodgesSideHillBrooklyn647
26 SNU OOPSLA Lab. RDBMS 의 장단점 장점 수학적 기반 (Relational Data Model) 사용의 편이성 (table & value based) 단점 Join 으로 인한 성능저하 Flat relation: tree & graph 표현의 어려움
27 SNU OOPSLA Lab. RDBMS R&D 의 번성기 1975 년대와 1985 년대 Functional Dependency Theory 연구 SQL query optimization 개발 Concurrency control 에 관한 연구 Semantic data model 에 대한 연구
28 SNU OOPSLA Lab 년 초 새로운 DB 응용의 출현 CAD/CASE/CAM 분야 대용량 design data 인공 지능 분야 : Expert systems Multimedia 분야 : IMAGE, TEXT, AUDIO, VIDEO 등의 데이터 처리 Telecommunication Rich data model & DBMS function 이 요구
29 SNU OOPSLA Lab. 객체지향 (OO) DBMS 의 등장 1985 년 ~ 1995 년 Commercial Products: O2, ObjectStore, Objectivity, Versant 등 Research prototype ORION, POSTGRES, ENCORE/ObServer 등 ODMG-93 OODB standard 17
30 SNU OOPSLA Lab. OODBMS 의 특징 Object-Oriented Paradigm 지원 Semantic Data Model extension Version & Composite object 객체 (object), 객체 식별자 (object identity), 포인터 traversal Network DB 로의 회귀 ? Persistent programming language 클래스 계층구조, 계승 (inheritance) Long-duration transaction Large object
31 Object-Oriented Database 의 예 ISA relationshipIs-part-of relationship namestreetcityamount LowerlyMapleQueens900 ShiverNorthBronx556 ShiverNorthBronx647 HodgesSideHillBrooklyn801 HodgesSideHillBrooklyn647
32 SNU OOPSLA Lab. OO DBMS 의 OQL query select sum(customer.deposit.balance) from Customer customer where customer.name = “Shiver” and customer.deposit.branch.city = “Bronx”; 20
33 SNU OOPSLA Lab. OODBMS 의 장단점 장점 시스템의 안정성 미비 Powerful Data Model 지원 Fast access to frequently referenced objects (object cache) 단점 & 문제점 Big 3 의 의도적인 무관심 !
34 SNU OOPSLA Lab. 객체 관계형 (OR) DBMS 1980 – 1985: ORDBMS Research Prototype Extension within SQL & Tables! System/R Engineering Extension by IBM PostGres by UC Berkeley 객체기능을 갖춘 관계형 DBMS 1990 년 초반 : OODBMS (Illustra, UniSQL, Mattise) 몰락 1997 년, Big3 ORDBMS 일제히 등장
35 SNU OOPSLA Lab. OR Database 의 예 namestreetcityamount LowerlyMapleQueens900 ShiverNorthBronx556 ShiverNorthBronx647 HodgesSideHillBrooklyn801 HodgesSideHillBrooklyn647
36 SNU OOPSLA Lab. ORDBMS 의 주요기능 LOB (large object) 지원 Abstract Data Type 지원 ( 객체 지원 ) Type Inheritance 지원 User defined type & Stored procedure 지원 Application domain specific extension 지원 SQL 프로시저 확장 룰 (rule)/ 트리거 (trigger) 시스템 지원
37 SNU OOPSLA Lab. ORDBMS 의 제품들 ORACLE-8 Universal Server Informix Universal Server IBM DB2 Universal Database Sybase Adaptive Server Microsoft Access
38 SNU OOPSLA Lab. Table of Contents DBMS 개관 과 정의 DBMS 역사 DBMS 시장 동향 The current DBMS trend Oracle 의 진화 27
DBMS Market Share 국 내 시 장 ( 총 1,722 억원 ) 출처 : 시사컴퓨터 2003 년 2 월호
DBMS Market Share 국 내 시 장 (2 천 2 백억원 ) 출처 : 시사컴퓨터 2003 년 8 월호
41 국내 데이타베이스 인지도 조사 출처 : 2004 국내 데이타베이스 산업현황 및 전망 보고서
42 국내 DBMS 시장성장 추이 ( 단위 : 억원 ) 출처 : 시사컴퓨터 월호 679 1,053 1,581 1,767 2,207 1,722
43 국내 DBMS 업체별 매출 성장 추이 ( 단위 : 억원 ) 출처 : 시사컴퓨터 월호
World Market Share 세 계 시 장 ( 7.1 billion dollar=71 억불 =8 조 4 천억원 ) 출처 :IDC (International Data Corporation) Database Market Share Study August 10, 2003
45 Big 3 take 90% in World Market Share RDBMS on UNIX/Linux/Windows combined Market Share 출처 : Gartner Dataquest (May 2004)
46 OS 별 DBMS 분포도 출처 : 시사컴퓨터 2003 년 2 월호
47 SNU OOPSLA Lab. Table of Contents DBMS 개관 과 정의 DBMS 역사 DBMS 시장 동향 The current DBMS trend
48 SNU OOPSLA Lab. Current Database Issues Data Warehousing XML: 비정형 데이터 처리 Knowledge Discovery Data Mining The grand challenges DB R&D Trend
49 SNU OOPSLA Lab. DBMS R&D trend Web 과 Internet 의 발달 기존 DB 연구 방향을 변화시키는 세가지 조류 프로그램과 데이터의 통합 필요 H/W 의 급속한 발달 컴포턴트 방식의 DBMS 기능 추가 인터넷상의 수백만개의 Dabase 의 연결 정형화된 데이터와 비정형화된 데이터의 통합 연구방향
50 SNU OOPSLA Lab. The Grand Challenges !!! Web 과 Internet 의 급속한 보급 H/W 의 급속한 발전 10 년 안에 수백 terabyte 의 database & 1 terabyte 의 main memory 가능 인간 유전자 지도 : 900 Gbyte 방대한 양의 데이터 영화 데이터 : (600M/1hour) ×100year= … 수천만 의 사용자가 Web 에 연결
51 SNU OOPSLA Lab. Bio Technology Data 인체 설계도를 낱낱이 규명 1 개의 염색체 : 수 천개의 유전자 인체 : 조 개의 세포 방대한 데이터 1 개의 세포 : 2 개의 게놈 (46 개의 염색체 ) 유전자 : ACGT
52 SNU OOPSLA Lab. XML XML 의 필요성 ‘ eXtensible Markup Language ’ What is XML ? Developed by the W3C 텍스트와 다른 미디어가 인터넷 상을 이동하는데 통일된 framework 가 필요 A data format for storing structured and semi- structured text for dissemination and ultimate publication, perhaps on a variety of media Self-describing
53 SNU OOPSLA Lab. HTML & XML 이름 고소영 주소 고소영 서울 HTML: 화면 출력 모양 을 지정하기 위한 태그 XML: 문서의 의미 를 지정하기 위한 태 그
54 SNU OOPSLA Lab. Basic Representation Abiteboul Hull Foundations of Data Bases Addison Wesley OEM Model Bib paperbook author reference author title publisher Addison Wesley Foundations Of DataBases HullAbiteboul XML data
55 SNU OOPSLA Lab. Why XML? ■ System, application 들 사이의 문서교환 증가 ■ text 이외의 정보 - image, video, sound 등 기타 media 가 같이 존재하 는 복합문서가 일반화 ■ 문서의 독립성 ( 문서가 system, 언어, 주변기기, 네트워크 등에 종속적 이지 않을 것 ) 에 대한 요구 증가 ■ 문서의 효율적인 저장과 검색이 중요한 issue 로 대두 문서의 구조화 촉구
56 HTML 검색 SNU OOPSLA Lab. What are XML for ? Business to Business 시스템 간 데이터 교환 Electronic Data Interchange 기업간 비즈니스 어플리케이션의 통합 모든 유형의 데이터 통합 관리 Advanced Information Management System Co-Work 지식관리시스템 키워드, 구조, 태그 Advanced Search System 상품 카탈로그 검색 XML XML 검색 1. 일등감자 포카칩 2. 초코칩이 더 좋아 3. 인텔에서 만든 칩 4. 칩샷을 성공해 5. 칩이 우승을 차지 검색 : 인텔에서 만드는 메모리 칩의 도매가는 얼마인가 ? 인텔에서 제공하는 메모리 칩은 크기가 0.3mm 이고 무게 가 0.007g 이며, 도매가는 55,000 원이다.
57 SNU OOPSLA Lab. Knowledge Discovery Database 의사결정 Knowledge Discovery Processing: Data mining Data Warehouse useful, interesting hidden information 응용
58 SNU OOPSLA Lab. Warehouse (1) Data Warehouse (1) Data warehouse 시간 데이터 저장 시간에 따른 경향 분석 요약 데이터 요구 다양한 관점에 의한 데이터 관찰 Non-volatile 질의 위주 새로운 데이터 모델의 필요성 : 차원 모델 (Dimensional model)
59 SNU OOPSLA Lab. Warehouse (2) Data Warehouse (2) Sales Volumes timeProduct Sales person Jan Feb Mar Wong Stonebreaker Dewitt A B C
60 SNU OOPSLA Lab. Data Mining (1) Data Mining 이란 ? 넒은 의미 대상이 되는 데이터를 추출하는 단계에서부터 발견된 패턴을 정제, 해석한 후 사람이 이해할 수 있는 언어 ( 텍스트, 그림, 그래픽 ) 로 표현하는 단계까지를 포함 좁은 의미 대용량 데이터에서 흥미 있고 사람이 이해할 수 있는 패턴과 규칙성을 추출하는 여러 가지 알고리즘 (data mining algorithm) 또는 소프트웨어의 사용
61 SNU OOPSLA Lab. Data Mining (2) 패턴발견 빵과 과자를 사는 사람의 80% 는 우유를 같이 산다 분유와 기저귀를 사는 사람의 74% 는 맥주를 같이 산다 의사결정 맥주 소비는 분유와 기저귀 소비에 영향을 미침 빵과 과자 가격 인상은 우유 소비에 영향을 미침 상품 진열대에 ( 빵, 과자, 우유 ), ( 분유, 기저귀, 맥주 ) 를 같이 진열 우유 소비를 조절하기 위해 빵, 과자 가격을 조정 업무적용