(10) Multi-Tier-Architecture Flashcards

1
Q

What is a naive design of the IT infrastructure and which problems does it have?

A
  • Each PC has all kinds of software and good hardware
  • Data is managed on each PC separately

Problems:

  • Software: administration, updates
  • Hardware: expense factor, administration
  • Data: consistency, redundancy
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How are information systems designed today?

A
  • Distributed Systems

- Reason: used by a large number of software and hardware components

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the three major responsibilities of application architecture?

A
  • Interaction with the user
    Processing the business process
    Storing/ managing the involved data
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Explain N-Tier Architecture

A
  • Software systems are often divided into parts (tiers)
  • Tiers are developed and tested separate from each other
  • Tiers only communicate with its adjacent
  • The single components are interconnected by a network composing a distributed system
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What Tiers does the Three-Tier-Architecture contain?

A
  • Presentation Tier (low cost computer): Interaction with the user, takes input and shows result
  • Processing Tier (The application’s brain): Take input of presentation tier and processes it, seres a number of presentation tiers
  • Data Tier (Persistent storage of data): Stores all necessary data and information, manages access to data and its manipulation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the components of a typical Three-tier-Architecture?

A
  • Workstation which runs a standard user interface (presentation tier)
  • Application Server (processing tier)
  • Database (Data Tier)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the components of the Presentation Tier?

A
  • PC
  • Workstations
  • Mobile Terminals
  • Identification Technology
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the components of the Processing Tier?

A

Application Server: Server in a computer network on which applications are hosted

  • provides services which can be used by network terminals via interfaces
  • knowledge about how the input is to be processed and which data has to be retrieved for the process
  • Business logic is implemented here
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is Business logic good for?

A

Defines a process over actors, activities and relations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

How is a business process realised?

A
  • over workflows

- the state of processes is maintained in a database

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Name two examples where the three-tier system can be applied

A
  • Machine scheduling

- Product distribution

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the task of the Data Tier?

A

The state of the business logic has to be stored and must be accessible for users and the application server.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are responsibilities of the Data Tier?

A
  • Persistent storage of data

- Coordination of concurrent access

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How is the data organised in the Data Tier?

A

Data Tier comprises elements which provide:

  • persistent storage of data
  • reading and writing access to this data

Within a computer system data can be organised in a hierarchical way.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the Data File Approach?

A

Data is stored in the computer’s file system.

  • Often IS-systems were not planned inter-divisional, but separate from each other
  • Sharing of data was not considered
  • The organisation of data was tailored towards division-specific applications (data cannot be used by other applications)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the problems of the Data File Approach?

A
  1. Redundancy and inconsistency
  2. Dependency between application and data
  3. No exchange of data and lack of flexibility
  4. No data security
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Explain the Problem “Redundancy and inconsistency” of the Data File Approach

A
  • Redundancy: multiple copies of a date in different data files
  • Inconsistency: different values are saved for one attribute
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Explain the Problem “Dependency between application and data” of the Data File Approach

A
  • Data in files and software for data processing are strongly connected
  • Change in program code requires change in data structure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Explain the Problem “No exchange of data and lack of flexibility” of the Data File Approach

A
  • Data in files are inflexible with respect to evaluations and relationships
  • Concurrent access to multiple attribute and selection of data element s requires expensive searching and sorting
  • No data exchange between divisional information systems
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Explain the Problem “No data security” of the Data File Approach

A
  • Access to data and their modification cannot be controlled
21
Q

What does a Database System consist of?

A

Database (data) + Database Management System (code to access data)

22
Q

What is a database?

A

A database is a structured collection of data records.

  • It stores data in a way that a computer program may query the database
  • The returned data is the answer to the query
  • The extracted data records are said to be information
23
Q

What is a database schema and what is it good for?

A

The structural description of a database is called the schema of the database.

A database needs a structural description of:

  • the objects which are stored in the database and their characteristics
  • the relationship between these objects
24
Q

Relational Database Definition

A
  • Data is stored in tables
  • Every column is identified by a name
  • Every row is identified by several values composing a data record
  • Every table represents a set of entities of the same type
  • The entity type is specified by a set of attributes (defined by columns names)
  • Specific entity is specified by the attribute values
25
Q

What are advantages of relational databases?

A
  • In contrast to a file, tables allow easy structuring of data
  • Single data records can be retrieved, updated or deleted
  • Primary key for each table is required
26
Q

Database Management System Definition

A
  • Collection of programs which enable the central and efficient management of data
  • Interface between application and data
  • Separates the physical from the logical data structure (physical: How is data structured, e.g. Hashmap); logical: how is data represented to user -> tables)
27
Q

Which components for creation, manipulation and evaluation of data does a DBMS offer?

A
  • Data Definition Language (DDL)
  • Data Manipulation Language (DML)
  • Data Control Language (DCL)
28
Q

Data Definition Language - Definition

A

Provides means to define the schema of a database (logical view)

29
Q

Data Manipulation Language - Definition

A
  • Used to process the data in the database

- Offers constructs to the user to retrieve, insert, delete, and update data in the database

30
Q

Data Control Language - Definition

A
  • Allows to control the acmes to data in the database
31
Q

What is SQL?

A
  • Most popular computer language for relational databases
  • Provides a set of instructions to define and create databases and manipulate data in databases
  • Originally developed as a DML but provides means to be used as as DDL and DCL
32
Q

What are the advantages of a DBMS?

A

Solves the problems the traditional file approach reveals:

  1. Redundancy and inconsistency control
  2. Independence between application and data
  3. Provides a transaction mechanism
  4. Allows and manages the data access of multiple users
  5. Manages and enforces the access rights to data
33
Q

Explain the Advantage “Redundancy and inconsistency control” of DBMS

A
  • Specific entity should be stored exactly once
  • Additional information for entity may be stored in other tables (use foreign key)
  • DBMS provides means to propagate changes to referencing elements in databases
34
Q

Explain the Advantage “Independence between application and data” of DBMS

A
  • Applications do not directly access or manipulate data

- Data is exclusively managed by DBMS

35
Q

Explain the Advantage “Provides a transaction mechanism” of DBMS

A
  • Besides atomic database operations a DBMS also allows transaction
  • Either the entire group of operations is executed or not a single operation at all
  • If a transaction is executed every single operation has to be performed and the resulting database state has to be consistent (otherwise roll-back)
36
Q

What is a transaction?

A

Group of atomic operations which is executed as a single unit without interference by other database operations.

37
Q

Explain the ACID paradigm

A
  • Atomicity: transaction has to be treated as the smallest, non-dividable unit (either all operations are executed or no operation at all)
  • Consistency: state of the database may be inconsistent during transaction but has to be consistent after completion
  • Isolation: different transactions which are executed in parallel must not interfere with each other; intermediate results of transactions are not visible to any other transaction
  • Durability: effects of a successful transaction on a database are persistent
38
Q

What is the problem regarding the data access of multiple users?

A
  • If data is organised on a central unit, data access has to be coordinated
  • Problem: multiple users may perform operations at the same time but restricting the use of the database to a single user at at time would waste resources
  • > Lost update, Dirty read, Phantoms
39
Q

Lost Update Definition

A
  • The effect of one transaction is overwritten by another transaction (the update gets lost)
40
Q

Dirty Read Definition

A
  • Transaction T2 was processed based on inconsistent data

- Rollback of T1 also requires rollback of T2

41
Q

Phantoms Definition

A
  • While processing transaction T2, transaction T1 generates a date that should have been considered by T2
  • The generated data is called a phantom
42
Q

What are solution to the problems of multiple user data access?

A

DBMS provides means to synchronise multiple users:

  1. Serializability: Controlled execution of a set of transactions -> transactions appear to be performed in isolation
  2. Locking: Data which needs to be accessed is locked for a particular transaction and is unlocked when transaction is executed
43
Q

Example for DDL

A

Create

44
Q

Example for DML

A

Select

45
Q

Example for DCL

A

Grant

46
Q

SQL (DDL): Which different possibilities exist when updating/deleting a row?

A
  1. On Delete No Action: not allowed, rolle-back
  2. On Delete Cascade: row in foreign table is deleted as well (or foreign key is updated for update)
  3. On Delete Set Null: Foreign key is set to null
  4. On Delete Set Default: Foreign key is set to a default value
47
Q

What are the most important SQL statements of the DML language?

A
  • Select
  • Insert
  • Delete
  • Update
48
Q

SQL Query that gives certain rows as output

A

SELECT * FROM course
JOIN room ON (course.room = room.name)
WHERE (room_number = O131);

49
Q

What is the advantage of using foreign keys in relational databases over extending tables by the required columns?

A

Avoiding redundancy and inconsistency