DB mid 정리
logical data independence 에 대한 설명으로 적합하지 않는 것은? 1
1) Concerned with internal schema (v)
2) Concerned with conceptual schema
3) It is mainly concerned with the structure or changing the data definition
4) Modification at the logical levels is significant whenever the logical structures of the database are changed
Conceptual schema 에 대한 설명으로 적절하지 않는 것은? 4
1) 전체적으로 통합된 데이터 구조이다.
2) 해당 기관이 필요로 하는 모든 개체, 관계, 제약조건을 포함한다.
3) 데이터베이스 접근권한, 보안정책, 무결정 규칙에 관한 명세를 포함한다.
4) 데이터의 실제 저장방법을 기술한다. (v)
chap2 2.4-5 p7
conceptual level
- a representation of the entire information content of the database
- conceptual view
- multiple occurrence(record 를 의미. table 의 각 row 를 의미) of multiple types of conceptual record
- security and integrity checks
internal level
- internal schema
- define the various types of stored records
- specify
- what indexes exist
- how stored fields are represented
- what physical sequence the stored record are in
데이터베이스에서 데이터에 대한 3단계 뷰(view)를 기술하고 이것을 유지하는 근본적인 목적은 무엇인가?
1. external level(individual user view)
- 응용에 관심있는 data object 의 view
2. conceptual level(community user view)
- 전사 전체 레벨 입장에서 db를 보는것
3. internal level(storage view)
- physical storage structure(flat file, hierarchical/network/inverted file)
유지하는 근본적인 목적 : data 독립성을 위함. 사용자가 보는 view 와 data 가 저장되는 방법에서의 flexibility 와 adaptability
데이터베이스 시스템이 파일시스템에 비해 갖는 장점이 아닌것은? 4
1) 데이터의 불일치(inconsistency) 를 피할 수 있다.
2) 데이터를 여러 사용자가 공유한다.
3) 데이터의 중복성이 감소된다.
4) 해당 응용에 가장 좋은 데이터 구조를 지원한다. (v)
chap1 1.4 why database? p18
advantages that accrue from the notions of centralized control of data
- data sharing
- reduction of redundancy
- avoidance of inconsistency
- transaction support
File system 의 단점이 아닌 것은? 4
1) data isolation
2) data dependence
3) data redundancy
4) data sharing
chap1 p29
drawbacks of using file systems to store data
- data redundancy and inconsistency
- difficulty in accessing data
- data isolation
- integrity problems
- atomicity of updates
- concurrent access by multiple uses
- security problems
고급 수준의 물리적 독립성을 갖는 시스템에서 안전하게 수행할 수 있는 물리적인 변경의 예로 적합하지 않는 것은? 1
1) 새로운 사용자 뷰들을 추가 (v)
2) 새로운 데이터 화일을 추가
3) 하나의 디스크 장치에서 다른 디스크 장치로 화일을 이동
4) 데이터 화일의 이름을 변경
새로운 사용자 뷰를 추가한다는건 물리적인 변경이라 볼 수 없음
한 주문서(order)에 여러 개의 제품(product)을 포함 할 수 있으며, 한 제품은 여러 개의 주문서에 포함될 수 있다고 가정한다. 이것은 어떤 형태의 관계(relationship) 인가? 2
1) one-to-one
2) many-to-many (v)
3) many-to-one
4) one-to-many
DBA 의 기능과 책임이 아닌것은? 4(시스템 감사는 아닌듯)
1) 컴퓨터시스템 운영에 대한 책임
2) 변경 및 불평 해결 -> 말이 좀 이상하긴 한데 완전히 틀린말이라고 볼수도 없고 애매함
3) 데이터베이스 설계와 운영
4) 시스템 감사(audit) 및 성능 분석 (v)
chap1 1.4 why database p17
database administrator(DBA)
- a person responsible for implementing the data administrator's decisions
DBA's job
- to create the actual database and to implement the technical controls needed to enforce the various policy decisions made by the data administrator
chatper2 2.7 DBA responsibilities p9
- deciding the information content of the database
- what information -> entities, replationships
- conceptual schema(using conceptual ddl)
- deciding the storage structure and access strategy
- liaising with users
- defining security and integrity checks
- defining a strategy for backup and recovery
- monitoring performance and responding to changing requirement
chatper2 2.7 DBA utilites p10
- load routines
- to create the initial version of database
- In general, the term "routine" refers to a sequence of instructions or code that performs a specific task within a larger program or system. A "load routine" specifically refers to a set of routines that are executed during the loading process of a program, typically when the program is launched or started up.
- dump/restore routines
- reorganization routines(무중단 서비스 제공을 위한 작업들)
- statistics routine
- analysis routines
데이터 종속성(data dependency) 에 대한 가장 적절한 설명은? 4
1) 응용프로그램에 영향을 미치지 않고 저장구조의 변경이 가능하다.
2) 서로 다른 응용 프로그램이 같은 데이터에 대해 서로 다른 뷰를 필요로 한다.
3) 응용 프로그램에 대한 변경 없이 접근전략을 변경할 수 있다.
4) 데이터의 저장방식과 접근전략이 응용 프로그램의 내부구조에 반영되어 있다. (v)
chap1 1.5 data independence p20
data dependence
- knowledge of that data organization and access technique is built into the application logic and code.
db schema 가 달라졌을 때, app 에 수정이 필요하면 data dependent 하다고 함
data independence 가 왜 중요하냐? 유지보수 비용을 줄이기 위해
two-tier client server 구조의 문제점으로 적절하지 않는 것은? 3
1) scalability
2) a significant client-side administration overhead
3) load balancing
4) fat client
2,4 는 문제점인게 확실하고 1,3 중 헷갈렸음. client/server 구조의 장점으로 말하는게 scalability 라서 답은 1번이지 않을까 했는데, 다시 생각해보니 load balancing 은 two-tier 와 상관없는 주제라서 답인거 같음. 그런데 교재에 three-tier 의 장점으로 load balancing 이라고 되어있음. 사실 load balancing 은 tier 를 나눔으로써 얻는 이득이 아니라 별도로 구축해야 되는 프로세스임. 하지만 너무 깊어지므로 일단 여기서 답은 load balancing 으로.
chap2-1 benefits of client/server computing p6
- dollar savings
- increased productivity
- flexibility and scalability
- resource utilization
- centralized control
- open systems
Client/Server Database Computing 이 제공하는 장점이 아닌 것은? 4
1) Users can stay with the same familiar and favorite tools
2) an opportunity for both horizontal and vertical scaling of resources
3) a more efficient division of labor
4) an expensive and more powerful hardware and software (v)
chap2-1 p15~16
advantages of client/server database computing
- client-server applications provide a more efficient division of labor
- client-server architecture provides an opportunity for both horizontal and vertical scaling of resources to do the job
- applications using client-server architecture generally can be run on smaller client computer configurations with better performance
- users can stay with the same familiar and favorite tools they've grown accustomed to using on the pc
- clients can access more data
- increasingly valuable data can be properly safeguarded against loss or improper access
- less expensive and more powerful pc hw and sw are providing business problem solutions that are cheaper to implement than the database applications they replace
확장된 ERD 에서 specialization 에 대한 내용으로 적절하지 않는 것은? 1
1) normal form (v)
2) subgrouping
3) Attribute inheritance
4) top-down design process
ER2023 p43
Extended E-R Features: Specialization
- top down design process
- subgrouping
- attribute inheritance
ERD 상의 composite attribute 와 multivalued attribute 는 어떻게 처리 하는 것이 적당한가?
composite attribute : 두 개 이상의 attribuete 를 포함 할 수 있는 attribute 를 말한다.
예를들어 name attribute 는 first_name, middle_initial, last_name 들로 이루어진 composite attribute 다.
composite attribute 는 예를들어 name attribute 가 있을때, first_name, last_name 들이 composite attribute 가 될 수 있다. 그래서 name.first_name, name.last_name 이렇게 처리하면 된다.
multivalued attribute : 여러개의 값을 가질 수 있는 attribute다. ERD 에서 이중선으로 표시된 타원이다. 예를들어 employee(이하 E) relation 이 있을 때 그의 multivalued attribute 로 department_name(이하 M) 이 될 수 있다. 그래서 EM schema 로는 E 의 pk 와
M 의 value 를 tuple로 묶어서 처리하면 된다.
cf) derived attribute : 예를들어 data_of_birth attribute 를 통해 age 를 계산해 알 수 있다. 그 age 라는 attribute 를 derived attribute 라고 한다.
ERD 상의 specialization 은 어떻게 처리 하는 것이 적당한가?
top down 방식의 process 이고, 상속개념이 있어서 상위 attribute 는 하위에서 사용 가능하다. ERD 에서 ISA 라고 써진 삼각형 모양으로 표시한다.
다음은 Entity Relationship Modeling 에 대한 설명이다. ( ) 에 적당한 용어는?
가) Suppose employees of a bank may have jobs at multiple branches, with different jobs at diffenet branches. Then there is a ( ternary ) relationship set between entity sets employee, job, and branch.
나) A ( key ) of an entity set is a set of one or more attributes whoses values uniquely determine each entity.
다) We need to consider ( semantics ) of relationship set in selecting the primary key in case of more than one candidate key
라) ( total ) participation : every entity in the entity set participates in at least one relationship in the relationship set
마) The ( discriminator ) of a weak entity set is the set of attributes that distinguishes among all the entities of a weak entity set.