1 / 43

한국형 DBMS 개발 어떻게 할 것인가?

한국형 DBMS 개발 어떻게 할 것인가?. 김 형주 교수 서울대학교 컴퓨터공학과 객체지향시스템 연구실 1999년 5월. 목차. History of DBMS DBMS 시장 동향 국내 DBMS 개발 동향 Motivation Various Efforts SNU OOPSLA Lab. 국산 Software 의 개발 지난 10년간의 교훈 우리의 현실 SW 분야를 위한 제안. History of DBMS. DBMS 란?.

ratana
Download Presentation

한국형 DBMS 개발 어떻게 할 것인가?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 한국형 DBMS 개발 어떻게 할 것인가? 김 형주 교수 서울대학교 컴퓨터공학과 객체지향시스템 연구실 1999년 5월

  2. 목차 • History of DBMS • DBMS 시장 동향 • 국내 DBMS 개발 동향 • Motivation • Various Efforts • SNU OOPSLA Lab. • 국산 Software의 개발 • 지난 10년간의 교훈 • 우리의 현실 • SW 분야를 위한 제안 SNU OOPSLA Lab.

  3. History of DBMS DBMS 란? • 방대한 양의 데이터를 편리하고 효율적으로 저장, 검색할 수 있는 환경을 제공해 주는 시스템 소프트웨어 • 지원되어야 할 기능 • 효율적인 스토리지(storage) 관리 • 동시성 제어(concurrency control) 및 고장 회복(recovery) • 효율적인 질의 도구 • 응용 프로그램 개발 환경 SNU OOPSLA Lab.

  4. History of DBMS DBMS Architecture naive users application programmers casual users database administrator application programs system calls query database scheme data manipulation language precompiler query processor data definition language compiler application programs object database manager DBMS file manager data files data dictionary disk storage SNU OOPSLA Lab.

  5. History of DBMS 계층형 및 네트워크 DBMS • 초기의 DBMS • 1970년대 초기이후 • IMS (IBM), System/2000(MRA) • DMS 1100 (Sperry), Total (Cincom), IDMS, IDS II • 장점 • 링크 (pointer) 를 통한 빠른 데이터 접근 • 단점 • Weak Physical Data Dependence SNU OOPSLA Lab.

  6. History of DBMS 관계형 DBMS • 1970년대 후반에서 80년대 초반 • E.F.Codd, 1970 CACM Paper “The Relational Data Model” • 선언적(비절차적)인 질의어 사용 • 질의 최적화 (query optimization) 가 필요 • System/R (IBM San Jose) • 1976 • 최초의 상업용 관계형 DBMS • Ingres (UC Berkely) • 1976 • 최초의 연구용 관계형 DBMS SNU OOPSLA Lab.

  7. History of DBMS 계층형 및 네트워크 DBMS와의 비교 • RDB 장점 • 수학적 기반 (Relational Data Model) • 사용의 편이성 (value based) • RDB 단점 • 성능저하 (질의 최적화 기법으로 극복) • value base연산 • 조인 • Flat relation • 계층형 및 네트웍 데이터 구조의 직접적 표현 불가 SNU OOPSLA Lab.

  8. History of DBMS 관계형 DBMS의 번성 • 1970년대와 1980년대 말 까지 • 최적의 관계형 데이터베이스 스키마를 구하기 위한 functional dependency theory 연구 • 성능향상을 위한 SQL문 최적화 알고리즘 개발 • 동시성 제어 및 deadlock detection 알고리즘 연구 • 관계형 데이터 모델의 표현력을 높이기 위한 semantic 데이터 모델에 대한 연구 수행 SNU OOPSLA Lab.

  9. History of DBMS 새로운 응용분야의 출현 (1980-85) • CAD/CASE/CAM 분야 • 인공 지능 분야 • 전문가 시스템(expert systems) • Multimedia 분야 • IMAGE, TEXT, AUDIO, VIDEO등의 데이터 처리 • Telecommunication • Rich data model과 데이터베이스 기능들이 요구됨 SNU OOPSLA Lab.

  10. History of DBMS 객체지향 DBMS의 등장 • 1985년 ~ 1995년 • Research prototype • ORION, POSTGRES, ENCORE/ObServer, AVANCE 등 • Commercial Products: • O2, ObjectStore, Objectivity, Versant 등 • ODMG-93 SNU OOPSLA Lab.

  11. History of DBMS 객체지향 DBMS 특징 • 객체지향 데이터 모델 지원 • 객체(object), 객체 식별자(object identity) • 클래스 • 클래스 계층구조, 계승(inheritance) • Semantic 데이터 모델 확장 • Composite object • Version • Persistent 프로그래밍 언어 • Long-duration transaction • Large object • ODMG-93 SNU OOPSLA Lab.

  12. History of DBMS 객체 관계형 DBMS의 등장 배경 • 객체 DBMS의 장점 • 빈번한 동일 객체 접근 시 빠른 접근 제공 (object cache) • 복잡한 데이터 모델 지원 • 객체 DBMS의 제약 점 • 효율적인 질의 처리 미비 • 시스템의 안정성 미비 • 새로운 응용에 대한 지원(복잡한 데이터 모델 등)과 효율적인 질의 처리 요구됨 SNU OOPSLA Lab.

  13. History of DBMS 객체 관계형 DBMS의 시대개막 • 객체기능을 갖춘 관계형 DBMS • 1996년, 상용 객체 관계형 DBMS 등장 • ORDBMS의 주요 기능 • LOB(large object) 지원 • 사용자 정의 데이터 타입 지원(객체 지원) • 타입 계승 지원 • 사용자 정의 함수 및 저장 프로시저 지원 • Application domain specific extension 지원 • SQL 프로시저 확장 • 룰(rule)/트리거(trigger) 시스템 지원 SNU OOPSLA Lab.

  14. DBMS 시장 동향 DBMS 세계 시장 동향 • 관계형 DBMS - Oracle • 1997년 70억$ • 1998년 85억$ • 1999년 100억$ (Orcale 8i: ORDBMS) • 객체지향형 DBMS 전체 시장 • 1997년 2억$ • 1998년 3억$ 내외 SNU OOPSLA Lab.

  15. DBMS 시장 동향 DBMS 국내 시장 동향 • 관계형 DBMS • 92년도: 260억원(2,700 copy -- informix 110억원, Oracle 115억원) • 93년도: 310억원(1,800 copy -- informix 87억원, Oracle 117억원) • 94년도: 470억원(2,800 copy -- informix 160억원, Oracle 200 억원) • 95년도: 600억원(3,200 copy -- informix 200억원, Oracle 300억원) • 96년도: 880억원 • 97년도: 1,200억원(Oracle 1000억원, …) • 98년도: IMF 로 상당히 고전 • 99녀도: ERP 와 EC 등의 강세 로 회복세 SNU OOPSLA Lab.

  16. 국내 DBMS 개발 동향 한국형 DBMS 개발의 Motivation • 88 올림픽 이후 Software 분야의 활성화 • 한국형 “Something”의 논리 • DBMS seemed “EASY” • SI 분야의 활성화에 따른 로열티의 문제 • 국내 전산학 Ph.D. 중 DB 분야 최다 인력 SNU OOPSLA Lab.

  17. 국내 DBMS 개발 동향 다양한 노력들 SNU OOPSLA Lab.

  18. 국내 DBMS 개발 동향 Fail, Fail and Another Fail ! SNU OOPSLA Lab.

  19. 국내 DBMS 개발 동향 SNU OOPSLA-Lab.의 DBMS 개발 논리 • SI 업체의 DBMS 개발팀 보유 • 최소 20~30명의 연구원 • 연구원 1인당 6000만원/년 • 최소 1년 예산 20억원 소요 • 서울대 개발 후 Source Licensing(컨소시엄) • 대기업 5000만원/년 • 중소기업 3000만원/년 • 30 명의 서울대 석,박사 연구원의 R&D • 향후 10년 동안의 version-up • 연구원들의 졸업 후 컨소시엄 업체에 진출 SNU OOPSLA Lab.

  20. 연혁 1991. OOPSLA Lab. OPEN 1993. 2. 첫 석사 배출 안 정호, 이 강우, 이 상원, 조 은선 1995. 3. 관계형 DBMS SRP 발표 1995. 11. 객체지향 DBMS SOP 발표 1998. 8. 첫 박사 배출 안 정호, 조 은선 연구원 현황 졸업생 현황 국내 DBMS 개발 동향 OOPSLA Lab.소개 SNU OOPSLA Lab.

  21. OO Database SOP/WE SOP SRP/OE WWW OO Technology SRP Relational Database SWeSS OO Case Tools VIRON SCARLET TIVRON Software Engineering Multimedia 국내 DBMS 개발 동향 OOPSLA Lab. 연구 조직도 SNU OOPSLA Lab.

  22. 국내 DBMS 개발 동향 SNU OOPSLA Lab. 연구 활동 • 논문 발표 실적 (최근 3년간) • International journal paper : 2 ~4 articles/year • International conference : 2 ~ 4 articles/year • 정보과학회 논문지 : 10 편/년 • Object technology web site(wwwoopsla.snu.ac.kr) • 각종 object technology 관련 article • SRP source 공개 • SOP source 공개 SNU OOPSLA Lab.

  23. 특징 객체지향 개념에 기반하여 설계 및 구현 객체지향 언어인 C++ 언어를 이용하여 구현 개발 일지 1991년 개발 착수 1994년 프로토타입 완성 1995년 SRP 컨소시엄 구성 1995 - 6 : 각종 프로젝트 수행을 통한 SRP 안정화 1997 - 8 : 정통부 프로젝트를 통한 SRP기능 제고 현황 다중 사용자 환경 지원 : Multi-Thread형 RDBMS 서버 클라이언트/서버 아키텍쳐 레코드 단위 잠금 기능과 로깅 지원 LOB/View/Authorization/Auditing 지원 Windows용 개발환경을 위한 DLL interface 지원 Static/Dynamic SQL 질의 최적화 기능 지원 지원 플랫폼 : SunOS, Solaris, Linux, HP-UX 사용 도구 : GNU C++ compiler, gdb, flex, bison, purify 국내 DBMS 개발 동향 SRP (SNU RDBMS PLATFORM) SNU OOPSLA Lab.

  24. 국내 DBMS 개발 동향 SRP 내부 구조 SRP Client Multi-threaded SRP Server SQL Evaluation System User Query SQL Evaluator SRP Physical Relational Operators Parsing Validation File System Transaction System Execution Block (Query Graph) B+ tree Thread Mgr Lock Mgr Log Mgr Struct, Seq File Page File Optimization Low- level storage system Plan generation Volume Disk Mgr LOB Disk Mgr SQL Plan Disk SNU OOPSLA Lab.

  25. 국내 DBMS 개발 동향 SRP 시스템 규모 모듈 SRP 서버 SRP 클라이언트 모듈 ESQL/C QBE Spatial Query Text Retrieval ER-Modeler 계 클래스 수 130 140 38 4 25 7 50 394 라인 수 82,900 30,700 15,600 3,500 5,500 6,000 10,000 153,200 SNU OOPSLA Lab.

  26. 국내 DBMS 개발 동향 SRP 컨소시움 • 연구 기간: 1995.7~1996.6 • 참여 기업 • 엘지정보통신, 현대정보기술, 한국정보과학 • 연구 내용 • SRP 성능향상 & 안정화 • SRP 관련 기술 이전 • Pilot 프로젝트 수행 • “SRP RDBMS를 이용한 인사관리 프로그램” • “미래로 와 SRP 연동” • “IntraOffice 와 SRP 연동” SNU OOPSLA Lab.

  27. 국내 DBMS 개발 동향 SRP 응용 프로젝트(1) • “미래로/DB 통합 소프트웨어를 위한 SRP 확장” • SRP와 Windows와의 연동 • ODBC를 이용한 응용 프로그램 개발 • 참여 기관 • 산학연 과제 • (주)한국 정보공학 Report Designer/Viewer (Windows 프로그램) SRP WINAPI (ODBC 클라이언트 모듈) Windows SRP WINAPI 서버 (ODBC 서버 모듈) Unix SRP 서버 SNU OOPSLA Lab.

  28. 국내 DBMS 개발 동향 SRP 응용 프로젝트(2) • “웹 기반 그룹웨어 개발” • SRP와 웹의 연동 • JAVA와 JDBC를 통한 웹-데이터베이스 응용 프로그램 개발 • 참여 기관 • 통상 산업부 과제 • 웹 인터네셔널(현, 한국디지탈라인) Intra Office (Java Applet) JDBC 클라이언트 모듈 Web Browser JDBC 서버 모듈 Unix SRP 서버 SNU OOPSLA Lab.

  29. 특징 ODMG 표준 지원 다중 사용자용 클라이언트/서버 구조 OODBMS 개발 일지 1992년 개발 시작 1995. 11. 프로토타입 개발 1995. 12. SOP 컨소시엄 구성 1996 ~ 8. 프로젝트를 통한 SOP 안정화, 기능 제고 주요 개발 내용 Soprano: 다중 사용자용 Client/Server 객체 저장 시스템 및 객체 관리자 OQL 처리기: ODMG OQL 객체 질의어 처리기 LOD* 처리기: ODMG C++ 바인딩 지원 OODB PL 객체 스키마 편집기 Visual OQL 도구: 그래픽 OQL 도구 OOER 모델링 도구: DB 설계 도구 RDB 접근 라이브러리 Multimedia GUI 도구 국내 DBMS 개발 동향 SOP (SNU OODBMS PLATFORM) SNU OOPSLA Lab.

  30. 국내 DBMS 개발 동향 SOP 시스템의 구성 Schema Editor Application Program Visual OQL Tool OOER Modeler Multimedia Application TCP/IP UNIX Server Schema Manager RDB Access Library SOP DBPL Preprocessor Soprano(Object Storage System) OQL Run-time Library Object Base Object Base SNU OOPSLA Lab.

  31. 국내 DBMS 개발 동향 SOP 시스템 규모 모듈 객체저장시스템(Soprano) OQL 처리기 LOD* 처리기 Visual OQL 도구 OOER 모델링 도구 RDB 접근 라이브러리 멀티미디어 질의 처리기 계 클래스 수 200 40 230 30 25 30 25 680 라인 수 80,000 15,000 50,000 10,000 16,000 6,000 10,000 187,000 SNU OOPSLA Lab.

  32. 국내 DBMS 개발 동향 SOP 컨소시움 • 연구 기간: 1996.1~1996.6 • 참여 기업 • LG정보통신, 미원정보통신 • 주요 활동: • SOP 성능 향상 및 테스트 • SOP 관련 기술 이전 • Pilot 프로젝트 • “Web을 이용한 인사정보 검색” • “SOP 를 근간으로 WTS 개발” SNU OOPSLA Lab.

  33. 패키지 프로세스 전 달 자 SOP 웹 브 라 우 저 웹 서 버 대 기 자 패키지 프로세스 WTS 국내 DBMS 개발 동향 SOP 응용 프로젝트 • WTS 프로젝트 • SOP와 WWW 연동 • 웹 상에서의 멀티 페이지 트랜잭션 제공 • 스케줄링을 통한 성능 향상 • 패키지/컴포넌트 단위의 손쉬운 응용 개발 • 참여기관 • 과기처 “특정연구” 사업 • SNU OOPSLA Lab.,포스데이터,대교 컴퓨터,CSG LinkWare SNU OOPSLA Lab.

  34. RDBMS들의 ORDBMS로의 발전 추세 SRP 시스템에 객체기능 추가 SRP/SOP 개발 기술 기반 현재 진행중인 개발 내용 사용자 정의 함수 SQL 프로시저 확장(IF/WHILE/BLOCK문 지원) Stored 프로시저 SRP/OE 국내 DBMS 개발 동향 SRP/OE(Object Extension) SNU OOPSLA Lab.

  35. 1단계 (1999년) LOB 개선 Stored procedure 제공 Web 지원을 위한 prototype 설계 2단계 (2000년) UDT(User Defined Type) UDF(User Defined Function) Web 전용 UDF/Stored function 제공 Web gateway 확장 3단계 (2001년) Procedural extension to SQL Java를 이용한 UDF 작성 기능 제공 UDT/UDF에 대한 CORBA 접근 지원 UDF를 고려한 질의어 최적화 기능 제공 국내 DBMS 개발 동향 SRP/OE 개발 계획 SNU OOPSLA Lab.

  36. XML 저장장치로서의 ODBMS 객체 지향 모델을 통한 데이터 저장 구조적 데이터 접근이 가능 문서 버전 지원 높은 동시 사용성 고속의 전문검색(Full Text Retrieval) 가능 고속성(조인을 사용하지 않음 ) CORBA를 통한 분산 프로그램 Java client와 서버의 통신 CORBA 객체에 대한 지속성 신속한 객체 접근 가능 3 계층 구조 프로그램 개발 국내 DBMS 개발 동향 SOP/WE (Web Extension) 자바 애플릿 IIOP(CORBA) 응용서버 (OODBMS 클라이언트) ODBMS 서버 Middle Tier SNU OOPSLA Lab.

  37. 국내 DBMS 개발 동향 SOP/WE 장점 • 객체지향 프로그램 언어(C++)에 의한 웹 응용프로그램 개발 지원 • 사용자 정의 데이터 타입 지원 • 클라이언트 캐슁에 의한 고속의 데이터처리 웹서버 웹서버 응용 서버 응용 서버 데이터 캐쉬 RDBMS를 이용한 경우 ODBMS를 이용한 경우 데이터베이스 서버 데이터베이스 서버 데이터 캐쉬 디스크 디스크 SNU OOPSLA Lab.

  38. 국산 SW의 개발 지난 10년간의 교훈 (1) • 한국형 “Something” 과 한국시장의 “대체효과”운운하는 것은 어리석다 • 한국 IT 시장규모 < 미국 Bay Area IT 시장 규모 • 큰 회사도, 작은 벤처도 Silicon Valley에서 Survival 하지 않으면, 국내에서 잘 나가도 결국은 fail! • 한국 시장 중요성의 강조 -> 망하는 지름길 • 외국 SW 사서 쓰니 비싸다, 대체하자 -> 잘못된 생각 SNU OOPSLA Lab.

  39. 국산 SW의 개발 지난 10년간의 교훈 (2) • Academic Perspective와 Commercial Perspective의 Gap은 생각보다 훨씬 크다! • 예 : SQL3 Support • 예 : OR-DBMS 시장의 형성과 3 Big Giant의 역할 • 대기업 도 system software 개발 에 소극적일수 밖에 없다 • 중소기업 이 system software 개발 에 덤비다간 망한다 SNU OOPSLA Lab.

  40. 국산 SW의 개발 지난 10년간의 교훈(3) • 선진 Major Vendor의 벽은 정말 높다 • Oracle : 4만명(world wide) • Outsourcing은 중요한 전략이며 채택해야 할 전략이다 • Oracle 1 year revenue : 85억불 • Oracle V.A.R. : 1억불 매출 100여개 업체 SNU OOPSLA Lab.

  41. 국산 SW의 개발 우리의 현실 • 넌센스 1: • 국내 굴지의 모업체, UniERP, UniWARE, UniCAD, UniPDM, KWAVE, etc. • 넌센스 2: • “초,중,고에 사용되는 Windows95, Word, Excel 등의 구입 비용이 만만치 않으니 “PC 기반 SW 센터”를 통해 50% 기능만 있는 국산을 개발하여 대체합시다” • 넌센스 3: • 정보통신 벤처를 2000년까지 2만개를 만들어 IMF 하의 국가 경제의 회생을 도모하고 …. SNU OOPSLA Lab.

  42. 우리의 현실 (2) • Fact (1): • Yahoo 주가 총액 (50조), Amazon 주가총액(30조) • 삼성전자 주가총액 (15조), 한국전력 주가총액 (20조) • 일본 NTT 주가총액 200조 • 한국 전체 증시 주가 총액 200조 • Fact (2): • 삼성 그룹 부채 (30조), 주가총액 (30조) • 대우그룹 부채 (60조), 주가 총액 (6조) SNU OOPSLA Lab.

  43. 국산 SW의 개발 SW 분야를 위한 제안(Suggestions!) • 성공한 SW Product와 SW Company의 Critical Success factor를 면밀히 고찰하자 • Out-Sourcing과 Strategic-Alliance에 적극적으로 임하자(벤처, 대학, 연구소도) • 경쟁력있는 SW Engineer를 양성하자 • 벤쳐, 대학, 연구소 등: Silicon-Valley에 진출하자 • 어느 때보다 좋은 여건 • 도전적 과제 SNU OOPSLA Lab.

More Related