620 likes | 929 Views
Data Base Management System Overview. DBMS 개관 와 정의. DBMS 역사. DBMS 시장 동향. The current DBMS trend. http://www.oopsla.snu.ac.kr. SNU OOPSLA Lab. DBMS 란 ?. 방대한 양의 데이터를 편리하고 효율적으로 저장, 검색할 수 있 는 환경을 제공해 주는 System Software. http://www.oopsla.snu.ac.kr. SNU OOPSLA Lab. Data. Data.
E N D
Data Base Management System Overview DBMS 개관 와 정의 DBMS 역사 DBMS 시장 동향 The current DBMS trend http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
DBMS란? 방대한 양의 데이터를 편리하고 효율적으로 저장, 검색할수 있 는환경을 제공해주는 System Software http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data Data What is a Database? • A large collection of data • Data + Programs STORE Database http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
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 (109) http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
What is a Database? (2) • 이동전화 통화 정보 • 3000만 가입자 (2002년) • 60 Byte rcord: 통화시간, 통화번호, 기지국, … • 3천만명 * 60 Byte * 5calls/day * 365 일 = 3T Byte (1012) • (중국: 136M 가입자 & increasing) • 주민등록부 정보 • 4천 7백만 명 • 10K Byte record: 본적, 주소, 주민번호, … • 10K Byte * 470 M = 5T Byte http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
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 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
What do we do with Database ? (1) • Record Search • 주민번호 “840101-1212121”학생의 수학영역 성적 • 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 • 구역별, 영역별 인구통계 • 특정 병력과 유전자 패턴 • 신용카드 고객군별 구매 패턴 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
What do we do with Database? (2) • Most (all?) computing applications use some type of a database CRM ERP Data Warehouse MIS, ERP OLTP EDPS Database Database Database Database http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Database Management System (DBMS) (1) 창고 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Database Management System (DBMS) (2) 창고 창고지기 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Database Management System (DBMS) (3) 데이타베이스 상품 주문 배송 관리 신상 고객 DBMS 사용자 급여 관리 판매 재고 경영자 정보 관리 응용 프로그램 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Database Management System (DBMS) • Collection of interrelated data & Set of programs to access the data • DBMS provides an environment that is both convenientand efficientto 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. http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
DBMS Architecture naive users application programmers casual users database administrator application programs system calls query database scheme data manipulation language pre-compiler query processor data definition language compiler application programs object database manager DBMS file manager Disk storage http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
A Sample Relational Database http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
SQL • SQL: widely used commercial query language • E.g. find the name of the customer with customer-id 192-83-7465 select customer.customer-name from customerwhere customer.customer-id = ‘192-83-7465’ • E.g. find the balances of all accounts held by the customer with customer-id 192-83-7465 select account.balance from depositor, accountwheredepositor.customer-id = ‘192-83-7465’ anddepositor.account-number = account.account-number http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Market Leader 안정성 대용량 처리 능력 Famous CEO Major Commercial DBMS in 2004 (1) 10g http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Window NT/XP과의 통합 PC based (Windows NT) Microsoft!!! Major Commercial DBMS in 2004 (2) http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
안정성 Mainframe Informix 매입 IBM Major Commercial DBMS in 2004 (3) http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Database Companies in the World http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
8 Table of Contents DBMS 개관 과 정의 DBMS 역사 DBMS 시장 동향 The current DBMS trend http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
계층형 및 네트워크DBMS 1970년대 초기이후 IMS (IBM), System/2000(MRA) DMS 1100 (Sperry), Total (Cincom) 장점 : Link 를 통한 빠른 데이터 접근 단점 : Physical Database 에 독립적인 응용을 작성할 수 없음 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Network DB Example Root Record Customer records Lowery Maple Queens Hodges SideHill Brooklyn Shiver Bronx North Amount records 900 647 801 556 647 Query Bronx에 사는 Mr. Shiver의 계좌 잔고의 합은? http://www.oopsla.snu.ac.kr 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); http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
관계형 DBMS (RDBMS) 1970년대 후반에서 80년대 초반 E.F.Codd, 1970 CACM Paper, “The Relational Data Model” Relational Algebra & Calculus The Spartan Simplicity! SQL: Structured Query Language System/R - 1976, 최초의 상업용 RDBMS Ingres - 1976, 최초의 연구용 RDBMS http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
관계형 DBMS의 예 Select sum(amount) from customer where customer.name = “Shiver” and customer.city=“Bronx”; http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
RDBMS의 장단점 장점 수학적 기반 (Relational Data Model) 사용의 편이성 (table & value based) 단점 Join으로 인한 성능저하 Flat relation: tree & graph 표현의 어려움 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
RDBMS R&D의 번성기 1975년대와 1985년대 Functional Dependency Theory 연구 SQL query optimization 개발 Concurrency control 에 관한 연구 Semantic data model 에 대한 연구 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
80년 초 새로운 DB응용의 출현 CAD/CASE/CAM 분야 대용량 design data 인공 지능 분야 : Expert systems Multimedia 분야 : IMAGE, TEXT, AUDIO, VIDEO등의 데이터 처리 Telecommunication Rich data model &DBMS function 이 요구 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
17 객체지향 (OO) DBMS의 등장 1985년 ~ 1995년 Research prototype ORION, POSTGRES, ENCORE/ObServer 등 Commercial Products: O2, ObjectStore, Objectivity, Versant 등 ODMG-93 OODB standard http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
OODBMS의 특징 Object-Oriented Paradigm 지원 객체(object), 객체 식별자(object identity),포인터 traversal Network DB로의 회귀? 클래스 계층구조, 계승(inheritance) Semantic Data Model extension Version & Composite object Persistent programming language Long-duration transaction Large object http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Object-Oriented Database 의 예 Is-part-of relationship ISA relationship
20 OO DBMS의 OQL query select sum(customer.deposit.balance) from Customer customer where customer.name = “Shiver” and customer.deposit.branch.city = “Bronx”; http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
OODBMS의 장단점 장점 Fast access to frequently referenced objects (object cache) Powerful Data Model 지원 단점 & 문제점 시스템의 안정성 미비 Big 3 의 의도적인 무관심! http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
객체 관계형 (OR) DBMS 1980 – 1985: ORDBMS Research Prototype PostGres by UC Berkeley System/R Engineering Extension by IBM 객체기능을 갖춘 관계형 DBMS Extension within SQL & Tables! 1990년 초반: OODBMS (Illustra, UniSQL, Mattise) 몰락 1997년, Big3 ORDBMS 일제히 등장 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
OR Database 의 예 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
ORDBMS의 주요기능 LOB (large object) 지원 Abstract Data Type 지원(객체 지원) Type Inheritance 지원 User defined type & Stored procedure 지원 Application domain specific extension 지원 SQL 프로시저 확장 룰(rule)/트리거(trigger) 시스템 지원 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
ORDBMS의 제품들 ORACLE-8 Universal Server Informix Universal Server IBM DB2 Universal Database Sybase Adaptive Server Microsoft Access http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
27 Table of Contents DBMS 개관 과 정의 DBMS 역사 DBMS 시장 동향 The current DBMS trend Oracle의 진화 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
2002 DBMS Market Share 국 내 시 장 (총1,722억원) 출처: 시사컴퓨터 2003년 2월호
2003 DBMS Market Share 국 내 시 장 (2천2백억원) 출처: 시사컴퓨터 2003년 8월호
국내 데이타베이스 인지도 조사 출처: 2004 국내 데이타베이스 산업현황 및 전망 보고서
국내DBMS시장성장 추이 (단위:억원) 2,207 1,767 1,722 1,581 1,053 679 출처: 시사컴퓨터 2004. 2월호
국내 DBMS 업체별 매출 성장 추이 (단위:억원) 출처: 시사컴퓨터 2004. 2월호
2003 World Market Share 세 계 시 장 ( 7.1 billion dollar=71억불=8조4천억원) 출처:IDC (International Data Corporation) Database Market Share Study August 10, 2003
Big 3 take 90% in World Market Share • RDBMS on UNIX/Linux/Windows combined Market Share 출처: Gartner Dataquest (May 2004)
OS별 DBMS분포도 출처: 시사컴퓨터 2003년 2월호
Table of Contents DBMS 개관 과 정의 DBMS 역사 DBMS 시장 동향 The current DBMS trend http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
Current Database Issues DB R&D Trend The grand challenges XML: 비정형 데이터 처리 Knowledge Discovery Data Warehousing Data Mining http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
DBMS R&D trend 기존 DB 연구 방향을 변화시키는 세가지 조류 Web과 Internet의 발달 프로그램과 데이터의 통합 필요 H/W의 급속한 발달 연구방향 컴포턴트 방식의 DBMS기능 추가 인터넷상의 수백만개의 Dabase의 연결 정형화된 데이터와 비정형화된 데이터의 통합 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.
The Grand Challenges !!! Web과 Internet의 급속한 보급 수천만 의 사용자가 Web에 연결 방대한 양의 데이터 인간 유전자 지도: 900 Gbyte 영화 데이터: (600M/1hour) ×100year=… H/W의 급속한 발전 10년 안에 수백terabyte 의 database & 1 terabyte의 main memory 가능 http://www.oopsla.snu.ac.kr SNU OOPSLA Lab.