1 / 30

Database Overview

Database Overview. What is Database? Database 란 무엇인가. Database Intro: Why & How. Data vs. Information Data is a collection of facts . Information is data processed for knowledge . Changing data into information Organize data so that it can be viewed in a useful form.

fcole
Download Presentation

Database Overview

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. Database Overview What is Database? Database란 무엇인가

  2. Database Intro: Why & How Database Design • Data vs. Information • Data is a collection of facts. • Information is data processed for knowledge. • Changing data into information • Organize data so that it can be viewed in a useful form. • What form will the derived information take? • How will information be extracted? • What data to collect, how & why? • Requirements • Identify the Context of data → Metadata • Organize 정리, 체계화, 조직화 → Structured Data 구조적 데이터 • Summarize 요약→ Information

  3. Data → Information:1.Identify Context Database Design • Data • Obama, Barack H. 19610804 • Bush, George H W. 19240612 • Bush, George W. 19460706 • Clinton, William J. 19460819 • Carter, James E. 19241001 • Context • Living presidents, United States, 2016/1/1 • Name (last name, first name middle initial), birthdate (YYYYMMDD) • Class Roster, Database Design Course, LIS Department, KNU, Spring 2016 • Name (last name, first name middle initial), student ID

  4. Data → Information:2.Organize Data Database Design • Identify metadata (metadata의 식별) • Identify additional data items ( data 식별을 위한 부가적 요소)

  5. Data → Information:3.Summarize Enrollment Pie Chart Enrollment over Time 10% DS 30 Enrollment 15% ACCT 20 45% LIS 15% CS 15 10 15% TCOM 5 ACCT = Accounting CS = Computer Science DS = Data Science LIS = Library & Information Science TCOM = Telecommunication 0s 0f 1s 1f 2s 2f 3s 3f 4s 4f 5s 5f 6s Semester Database Design Patterns, Trends & Visualization

  6. Database Intro: What Database Design • Function • Store 저장/ Retrieve 검색/ View검토data efficiently & effectively. • Characteristics • A collection of organized data relatedto a particular subject/purpose • Structured data 구조적 데이터, Security보안, Control통제 • DataBase Management System (DBMS) • (Data) Storage 저장, Processing 처리/가공, Retrieval 검색 • User Interface • Data Entry 데이터 입력, Search 입력, View/Report 검토/보고

  7. Database: Definitions Database Design • Database  • Collection of related data 관련된 데이터 and its metadata organized in a structuredformat구조적형식 • for optimized information management정보 관리 • Database Management System (DBMS)  • Software that enables easy creation 구축, modification변경, &access 접속 of databases • for efficient and effective database management 데이터베이스 관리 • Database System  • Integrated system 통합 시스템 of hardware, software, data, procedures, & people • that define결정and regulate규제 the collection, storage, management, & use of data within a database environment 데이터베이스 환경

  8. Database Management System • Software that enables easy creation 구축, modification변경, &access 접속 of databases for efficient and effective database management 데이터베이스 관리 • → Manages interaction between end users and database 이용자와 DB사이의 상호 작용 관리 Database Systems: Design, Implementation, & Management: Rob & Coronel Database Design

  9. Database System Environment • Hardware • Software - OS - DBMS - Applications • People • Procedures • Data Database Systems: Design, Implementation, & Management: Rob & Coronel Database System

  10. Database Overview Evolution of Database System

  11. Evolution of Database • Database 발전 1960s 1970s 1980s 1990s 2000+ File-based Hierarchical Network Relational Object-oriented Entity-Relationship Web-based NoSQL NewSQL Database Design

  12. Database: Historical Roots(기원) Database Design • Manual File System • To keep track of data • Used tagged file folders in a filing cabinet • Organized according to expected use • e.g. file per customer • Easy to create, but hard to • locate data • aggregate/summarize data • Computerized File System • To accommodate the data growth and information need • Manual file system structures were duplicated in the computer • Data Processing (DP) specialists wrote customized programs to • write, delete, update data (i.e. management) • extract and present data in various formats (i.e. report)

  13. File System: Example Database Systems: Design, Implementation, & Management: Rob & Coronel Database Design

  14. File System: Weakness Database Design • Weakness • “Islands of data” in scattered file systems 분산된 파일시스템. • Problems • Duplication 중복 • Same data may be stored in multiple files • Inconsistency 불일치 • Same data may be stored with different values/formats • Rigidity 경직성 • Requires customized programming to implement any changes • Cannot do ad-hoc queries 즉석질의 불가 • Implications • Waste of space • Data inaccuracies 오류 • High overhead 간접비용of data manipulation and maintenance

  15. File System: Problem Case CUSTOMER file AGENT file SALES file AGENT (20 char) A_Name (15char) A_Name (20 char) Carol T. Johnson Carol J. Smith Carol Johnson • Inconsistent field name, field size • inconsistent data values • data duplication Database Design

  16. Database System vs. File System Database Systems: Design, Implementation, & Management: Rob & Coronel Database Design

  17. Hierarchical Data Model 계층적 데이터 모델 Database Systems: Design, Implementation, & Management: Rob & Coronel Database Design • Hierarchical Model • To manage large amount of data for complex manufacturing projects • Information Management System developed by Rockwell & IBM • Files connected in Parent-Child (1:M) relationships • 1 Parent - Multiple Children

  18. Hierarchical Data Model 계층적 데이터 모델 Database Design • Strengths • Conceptual Simplicity 개념적 단순성 • Groups of data could be related to each other • Related data could be viewed together • Centralization of data • Reduced redundancy 중복and promoted consistency 일관성 • Weaknesses • Limited representation of data relationships • Did not allow Many-to-Many (M:N) relations • Structural Dependence 구조 의존 • Data access requires physical storage path • Complex Implementation 복잡한 구현 • Required in-depth knowledge of physical data storage • Lack of Standards 표준 부족 • Limited portability

  19. Network Data Model 네트워크 데이터 모델 Database Systems: Design, Implementation, & Management: Rob & Coronel Database Design • Network Model • Extension of Hierarchical Model계층모델의 확장형 • Composed of Owner-Member (Parent-Child) sets • To represent Many-to-Many (M:N) relationships • Multiple Parents – Multiple Children

  20. Relational Data Model 관계형 데이터 모델 Database Design • Problems with legacy database systems • Requiredexcessive effort to maintain • Data manipulation (programs) too dependent on physical file structure • Hard to manipulate by end-users • No capacity for ad-hoc query (must rely on DB programmers). • Relational Model • E. F. Codd’sproposal • Separated the notion of physical representation (machine-view) from logical representation (human-view) • Eliminated pointers and used tables to represent data • Considered ingenious but computationally impractical in 1970 • Dominant database model of today • Separation of design from implementation → Flexible • Ad-hoc queries → Structured Query Language (SQL)

  21. Relational Database: Example • Tables (i.e. Relations) • Provide a logical “human-level” view of the data and associationsamong groups of data • Organize data into rows행(records/tuples) and columns열(attributes) • Are related via shared attribute(s) Database Design

  22. Entity Relationship Model Database Design • PeterChen’s Landmark Paper (1976) “The Relationship Model: Toward a Unified View of Data” • Graphical representation of entities and their relationships • Based on Entity, Attributes & Relationships • Entity → e.g. EMPLOYEE • Thingabout which data are to be collected and stored • Attributes→ e.g. SSN, last name, first name • Characteristics of the entity • Relationships→ i.e. 1:M, M:N, 1:1 • Associationsbetween entities • Complements the relational data model concepts • Helps to visualize structure and content of data groups • Entity Relationship Diagram (ERD)→ Tool for conceptual data modeling→ Formalizes a way to describe relationships between groups of data

  23. E-R Diagram: Chen Model • Entity 개체 • represented by a rectangle with its name in capital letters. • Relationship 관계 • represented by an active or passive verb inside the diamond that connects the related entities. • Connectivity 관계유형 • i.e., types of relationship • written next to each entity box. Database Systems: Design, Implementation, & Management: Rob & Coronel Database Design

  24. E-R Diagram: Crow’s Foot Model • Entity 개체 • represented by a rectangle with its name in capital letters. • Relationship 관계 • represented by an active or passive verb that connects the related entities. • Connectivity 관계유형 • indicated by symbols next to entities. • 2 vertical lines for 1 • “crow’s foot” for M Database Systems: Design, Implementation, & Management: Rob & Coronel Database Design

  25. E-R Model: Pros & Cons Database Design • Advantages • Exceptional conceptual simplicity • Easily viewed and understood representation of database • Facilitates database design and management • Integration with the relational database model • Enables better database design via conceptual modeling • Disadvantages • Incomplete model on its own • Limited representational power • cannot model data constraints not tied to entity relationships • e.g. attribute constraints • cannot represent relationships between attributes within entities • No data manipulation language (e.g. SQL) • Loss of information content • Hard to include attributes in ERD

  26. Object-Oriented Database 객체지향 Database Design • Semantic Data Model (SDM) • Modeled both data and their relationships in a single structure (object) • Developed by Hammer & McLeod in 1981 • Object-oriented concepts became popular in 1990s • Modularity facilitated program reuse and construction of complex structures • Ability to handle complex data types (e.g. multimedia data) • Object-Oriented Database Model (OODBM) • Maintains the advantages of the ER model but adds more features • Object = entity + relationships (between & within entity) • consists ofattributes & methods • methods are all relevant operations that can be performed on an object • Class Template for objects • e.g. EMPLOYEE class = (employ1 object, employ2 object, …) • organized in a class hierarchy • e.g. PERSON > EMPLOYEE, CUSTOMER • Incorporates the notion of inheritance • attributes and methods of a class are inherited by its descendent classes

  27. OO Database Model vs. E-R Model OODBM: - can accommodate relationships within a object- objects to be used as building blocks for autonomous structures Database Systems: Design, Implementation, & Management: Rob & Coronel Database Design

  28. Object-Oriented Database: Pros & Cons Database Design • Advantages • Semantic representation of data • Fuller and more meaningful description of data via object • Modularity, reusability, inheritance • Ability to handle • Complex data • Sophisticated information requirements • Disadvantages • Lack of standards • No standard data access method • Complex navigational data access • Class hierarchy traversal • Steep learning curve • Difficult to design and implement properly • High system overhead • Slow transactions

  29. Web Database Database Server Waits & Responds to Incoming Connections Client Initiates a Connection DBServer (e.g. MySQL) WebServer (e.g. Apache) WebClient (e.g. Chrome) HTTP request Data request Webpage Retrieved data Database Design • Not a database model, but a system • For storing information that can be accessed via Web • That supports complex data types & relationships • In a Client-Serverarchitecture • Server hosts database & DBMS (e.g., MySQL) • Client accesses the server for database use

  30. NoSQL/NewSQL Database Database Design • NoSQL(Not Only SQL) • Non-relational: e.g., objects instead tables • For big (unstructured, distributed) data & real-time Web applications • More scalable & better performance • Flexible & agile development • NewSQL • NoSQL + Relational • Consistent • Scalable • Flexible

More Related