$29
1. [noSQL] (40) This set of questions get you to engage discussion related with noSQL systems.
a. Explain the concept of noSQL
b. Describe the 4 types of noSQ systems; for each category, give an example noSQL system (try to give different system from what we introduced in the class).
c. Pick one type of noSQL system you give in b, give a real-world application that can make best use of the system, and an application that may not be well-suited for the system. Explain your reasons.
2. [CAP and ACID] (20) This set of questions are related to data consistency
a. What is CAP Theory? Consider a toy example of a cluster that contains two servers S1 and S2. Use the example cluster to explain the CAP theory. You can simply use the proof I explained in class.
b. Consider the relation Accounts(acctNo, balance), and two SQL statements that conduct a request “transfer $200 from account 123 to 456”. In a DBMS, this usually includes two steps: i. Add $200 to account 456:
UPDATE Accounts SET balance=balance+200 WHERE acctNo = 456 ii. Subtract $200 from account 123:
UPDATE Accounts SET balance=balance‐200 WHERE acctNo=123
Use this example and necessary scenarios to show when Atomicity, Consistency, Isolation and Durability can be violated.
3. [Column Store] (20) We take a closer look at Column Store
a. Explain the major features of column stores in terms of data storage and storage key.
b. We introduced three techniques to optimize column-oriented databases: compression, late materialization and block iteration. Please explain how they work.
4. [newSQL] (20)
a. Describe the definition of NewSQL systems and design principles.
b. For in-memory DBMS, describe the set-associative cache for block placement and LRU block replacement policy.