Which ACID property ensures that transactions are isolated from each other to prevent interference?
- Atomicity
- Consistency
- Durability
- Isolation
The ACID property that ensures transactions are isolated from each other to prevent interference is Isolation. Isolation ensures that concurrent transactions do not see each other's intermediate states, thus preventing interference and maintaining data integrity.
The durability aspect of ACID properties often involves techniques such as ___________ to ensure data persistence.
- Redundancy
- Replication
- Recursion
- Regression
The correct option is "Replication." Durability in ACID properties refers to the guarantee that once a transaction is committed, its changes will persist even in the event of system failures or crashes. Replication techniques, such as maintaining multiple copies of data across different storage locations or using backup servers, are employed to ensure data durability. These strategies help in recovering data and maintaining system availability despite hardware or software failures.
What does REST stand for in RESTful APIs?
- Reliable State Transfer
- Remote State Transfer
- Representational State Transfer
- Resource State Transfer
Representational State Transfer (REST) is an architectural style for distributed hypermedia systems. It emphasizes scalability, reliability, and the uniform interface between components. RESTful APIs use HTTP methods like GET, POST, PUT, DELETE to manipulate resources.
In a banking application, you need to implement a SQL query to calculate the total balance for each customer across multiple accounts. How would you approach this problem using SQL?
- Use INSERT INTO to calculate balances
- Use UNION ALL to combine balances
- Use a JOIN statement with GROUP BY and SUM functions
- Use subqueries with WHERE clause
To calculate the total balance for each customer across multiple accounts in a banking application using SQL, you would typically use a JOIN statement with GROUP BY and SUM functions. This approach involves joining the tables that contain customer information and account balances, grouping the results by customer ID, and then summing up the balances to get the total balance for each customer. For example, if you have separate tables for customers and accounts, you would join these tables on the customer ID, group by customer ID, and use the SUM function to calculate the total balance. This method provides an efficient way to aggregate data across multiple accounts for each customer.
What are Git hooks, and how can they be used in a development workflow?
- A branch in Git repository
- A command to create a new repository
- A tool for merging branches
- Scripts triggered by Git events
Git hooks are scripts that can be triggered by various Git events such as pre-commit, post-commit, pre-push, etc. These scripts allow developers to automate tasks or enforce certain rules and policies in the development workflow. For example, a pre-commit hook can be used to run code linting checks before allowing a commit, ensuring code quality standards are met. Similarly, a pre-push hook can be used to trigger unit tests before pushing changes to a remote repository, ensuring that only passing code is pushed. Git hooks provide a powerful way to customize and streamline the development process.
What is the difference between a singly linked list and a doubly linked list?
- Both can traverse forward
- Doubly linked lists allow traversal in both directions
- Singly linked lists allow traversal in both directions
- Singly linked lists have less memory overhead
Singly linked lists only allow traversal in one direction, from head to tail, while doubly linked lists allow traversal in both directions, which enhances flexibility but comes with higher memory overhead.
The ___________ header is used to specify the format of the response accepted by the client.
- Accept-Encoding
- Content-Type
- User-Agent
- Authorization
The correct option is Content-Type. The Content-Type header in HTTP requests and responses specifies the media type of the data being sent or received. For example, it can indicate whether the data is in JSON, XML, HTML, or another format. This header helps the client and server understand how to handle the data appropriately.
You're tasked with redesigning a legacy database system that suffers from numerous anomalies. Explain how you would approach the normalization process to address these issues and improve overall database performance.
- Break down the database into fewer tables to simplify it
- Combine multiple tables into one for faster access
- Identify and eliminate redundant data by dividing tables and using foreign keys
- Use non-normalized data to improve performance
In a legacy system, normalization involves identifying redundant data and dividing tables to eliminate anomalies such as update, insertion, and deletion anomalies. This is achieved by breaking down data into fewer tables, using foreign keys to establish relationships, and ensuring data integrity. Combining tables or using non-normalized data would not address the underlying issues of redundancy and anomalies.
In a file system, the ___________ keeps track of free and allocated disk blocks.
- Allocation Table
- Directory Entry
- File Allocation Table
- File Descriptor
The File Allocation Table (FAT) is a crucial component in a file system that maintains a record of which disk blocks are free and which are allocated to files. It's commonly used in older file systems like FAT32.
What does SSID stand for in the context of wireless networks?
- Secure Socket ID
- Service Set Identifier
- Subscriber Server Identifier
- System Software ID
SSID stands for Service Set Identifier. It is a unique name that identifies a specific wireless network. Devices use SSIDs to connect to the correct network among the multiple networks available in the vicinity.