CS 3710, Assignment 3 Islam Anwar, 201900337 Q1. a. Volume – increasing volume of data in this day and age and how much is being processed Variety – different formats and form factors that data is structured Velocity – the speed at which the data is processed Veracity – the level of reliability of data from inconsistencies to incompleteness b. NoSQL is a mechanism that allows retrieval of data with less constrained consistency models compared to a traditional database. Some of it’s characteristics are that it overlooks ACID transactions, complexity of SQL queries, DBA presence and many others. It also provides and ease and accessibility to the DBA, and large data volumes. c. Key value data model – simplest model that uses hashing and string keys to access data, allows for basic operations like insert, fetch, update, and delete. Document based model – each record is stored as a document in a key-value pair Column family model – data is stored in columns rather than rows, allows for faster data retrieval and compression of data Graph model – based on using nodes as records and relationships to access and retrieve information d. Consistency, Availability and Partition tolerance, NoSQL covers the aspect of availability property e. A transaction is sequential group of DB manipulation operations performed as a single unit of work. A concurrent transaction is when 2 or more transactions are being processed simultaneously to the database. The objective of concurrency control is to ensure no transaction impacts another, that all transactions are independent units of work. f. Atomicity – ensures all operations performed are done successfully, if any fail a rollback is performed Consistency – ensures changes are properly applied to database for correct updating Isolation – No transaction will be affected by another Durability – once a transaction is committed, it remains in the system even if there is an immediate crash following it g. There are differences in the isolation level between them in the aspects of Repeatable Read and Read Committed, some are possible to perform the operations while others cannot. That is the difference between them. h. The user himself, the role, the permissions granted and the object which is being operated on. The security model assigns permissions to user groups not individuals. i. Privileges may be assigned to several user groups such as insert, update, delete data and creating tables, these are distributed according to the user groups. DCL commands are SQL GRANT which gives access rights to chosen group of users, SQL REVOKE withdraws those rights away from users. j. If data isn’t encrypted for sensitive data, isn’t running behind a firewall, poor management of usernames and passwords and many others. Can include SQL Injection attacks. k. - Physical – raw copies of directories and files of contents - Logical – save information represented as logical DB structure and content - Online – take place while server is running to receive information to the DB - Offline – take place while the server is offline not receiving any information - Full – includes all managed data by a MySQL server, restores all data from a full backup - Incremental – backups data given a set time interval or time span l. ODBC allows programmers to code instructions to DBMS products using ODBC standards Driver manager is a link between the application and the DBMS drivers DB Driver ensures ODBC executions are correctly performed and converts error messages to ODBC standard codes and messages Data source is an ODBC data structure that identifies a database and the DBMS that processes it Q2. 1. 2. 3. 4. ii & iii i iii ii