Exam (protocols) Flashcards
Which are the different kinds of heterogeneity? Explain each one of them.
- Technical Heterogeneity: how to exchange data (communication protocols (HTTP, SOAP), exchange formats (binary, text, XML), APIs (JDBC, ODBC, proprietary), query mechanisms (forms, query languages), query languages.
- Data Model Heterogeneity (hierarchical, relational, object-relational, XML, etc)
- Syntactic Heterogeneity (binary representation, encoding, separators, textual representation)
- Structural Heterogeneity: modeling identical application concepts differently using the same modelling concepts in the same data model)
- Schematic Heterogeneity: modeling identical application concepts using different modelling concepts in the same data model.
- Semantic Heterogeneity: different representation of identical application concepts OR identical representation of different application concepts.
Which are the two types of information integration?
Materialized Integration: replication, data warehousing.
Virtual Integration: distributed DBMS, federated DBMS, mediator-based systems, multi-database systems.
Which are the architectures for virtual data integration ?
- Distributed DBMS
- Federated DBMS
- Mediator-based Systems
(the above are based on a global schema, supporting location and distribution transparency) - Multi-database Systems
(no global schema, only location transparency)
Which methods wrappers provide to be used by Garlic work requests?
plan_access()
plan_join()
plan_bind()
Which are the two types of replication?
- Eager replication (avoids inconsistencies, update overhead, lack of scalability, cannot be used if nodes are disconnected)
- Lazy replication (low overhead, works if sites are disconnected, stale data, conflicting updates may cause inconsistencies)
Which are the two types of replication methods?
- Target table refresh
- Change-capture
How to detect concurrent update conflicts in change-capture replication?
- timestamp
Which are the two possibilities for ownership of replicas?
- Group
- Master
Which are the two approaches for reconciliation of conflicts?
- automatically, based on rules
- manually
How to represent OLAP in a relational schema?
- Star structure
- Snowflake structure (normalized)
Which are the components of a Data Warehouse Architecture?
- Data Warehouse Manager
- Monitor
- Extractor
- Transformer
- Loader
Which are the four approaches for the monitor of a DW to detect changes?
- log-based
- trigger-based
- audit columns (application-based, don´t support deletion)
- snapshot differentials
What is the main objective of transformers in DW?
Schema and data integration logic
Types of DW refresh?
- Full load vs. Incremental load
- Periodic vs. driven by source updates vs. on request
Which are the two update alternative to avoid conflicts?
- Fragmentation by key
- Fragmentation by time
Alternative to detect conflicts.
- Semantic synchronization (incoming replica transaction update must pass acceptance test)
Which are the 4 alternatives for replication activity?
- continuous
- interval-based
- triggered by DB-events
- one-time snapshot
Which are the two types of queues in TP-Monitors?
- Short-term queue for load control
- Persistent queues
Advantages of stratified transactions?
- less resource contention
- higher throughput
- if all transactions in a stratum execute on the same node, there is no network traffic for 2PC
What to do if client is non-transactional?
- queue operation guarantees message is stored before returning to client
- provide ID of last message of which a request was submitted
- allow client to explicitly acknowledge receiving a reply
Which are the main characteristics of MQS?
- asynchronous transaction processing
- persistent message queues
- loosely coupled (client not blocked, server works when wants, components don´t need to be active)
What can affect the sending order of messages in MQS?
- message priority
- transaction order of messages
What can affect the receiving order of messages?
- selectors (on header and property fields only)
What is the difference between transactional sessions and non-transactional sessions?
- Transactional: messages are automatically acked at TA commit. Queues are recovered automatically at rollback.
- Non-transactional: needs ack:
- lazy acks
- auto-ack (after successful receive)
- client ack (explicitly)