When implementing indexing, what factors should be considered to mitigate the impact on database write performance?
- Selective indexing
- Index maintenance strategy
- Using index-only scans
- Increasing index size
When implementing indexing, factors to consider for mitigating the impact on write performance include selective indexing (indexing only the columns that are frequently queried), choosing an appropriate index maintenance strategy (e.g., periodic maintenance rather than immediate updates), and using index-only scans to reduce disk I/O during reads. Increasing the index size can have a negative impact on write performance, so it should be done judiciously.
Which command is used to install a Node.js package globally?
- npm global install
- npm i -g
- npm install -g
- npm add -g
To install a Node.js package globally, you should use the npm install -g command. This makes the package available for use across different projects. The other options may not work as expected or are not the recommended way to install packages globally.
To override ESLint rules for specific files or directories, you can create a .eslintignore or ______ file with the patterns of the files or directories to be excluded.
- .eslintrc.js
- .eslintignore
- .eslintconfig
- .eslintexclude
To override ESLint rules for specific files or directories, you can create a .eslintignore file with patterns of the files or directories to be excluded from ESLint linting. The other options are not used for this purpose.
Which of the following events is emitted when data is available to read from a readable stream?
- data
- readable
- onData
- available
In Node.js, the 'data' event is emitted when data is available to read from a readable stream. This event allows you to consume the data as it becomes available. The other options are not standard events for this purpose.
In a sharded database architecture, how are Update operations handled across multiple shards?
- Updates are broadcast to all shards
- A central coordinator handles all updates
- Each shard independently handles updates for its data
- Updates are queued and processed sequentially
In a sharded database architecture, a central coordinator (Option 2) often handles updates that affect multiple shards. Each shard (Option 3) independently handles updates for its own data, but coordinated updates across shards typically require a central component. Options 1 and 4 are not common methods for handling updates in sharded databases.
While working on a project, you are required to extract specific properties from objects and assign them to variables. How would you utilize destructuring assignment to efficiently accomplish this task, and what would you do to handle non-existent properties?
- const { prop1, prop2 } = sourceObject;
- const [prop1, prop2] = sourceObject;
- const { prop1, prop2 } = [sourceObject];
- const [prop1, prop2] = { ...sourceObject };
To efficiently extract specific properties from objects using destructuring assignment in JavaScript, you would use the syntax const { prop1, prop2 } = sourceObject;. This assigns the values of prop1 and prop2 from sourceObject to the corresponding variables. To handle non-existent properties, you can provide default values like const { prop1 = defaultValue1, prop2 = defaultValue2 } = sourceObject;. The other options are not correct ways to achieve this task.
A ______ cache stores data in a shared location that can be accessed by multiple application instances.
- Shared
- Distributed
- Local
- In-Memory
A Distributed cache stores data in a shared location that can be accessed by multiple application instances. This allows multiple nodes of an application to share cached data, improving performance and reducing redundancy.
Which of the following stream types is used for reading data in Node.js?
- Writable Stream
- Readable Stream
- Duplex Stream
- Transform Stream
Readable Streams are used for reading data in Node.js. They allow you to read data from various sources, such as files, HTTP requests, and more, in a non-blocking and efficient manner.
What is the primary difference between null and undefined in JavaScript?
- null represents an intentional absence of any value, while undefined indicates a variable has been declared but has not been assigned a value.
- null represents a numeric value of zero, while undefined represents an empty string.
- null is used for variables that are out of scope, while undefined is used for variables with no value.
- null is a boolean value, while undefined is a number.
In JavaScript, null represents the intentional absence of any value, while undefined indicates that a variable has been declared but has not been assigned a value. Understanding this difference is crucial for handling data in JavaScript effectively.
Which of the following is a use case for the rest operator in function parameters?
- Collecting multiple arguments into an array
- Spreading an array into multiple arguments
- Creating a shallow copy of an array
- Combining two arrays into one
The primary use case for the rest operator in function parameters is to collect multiple arguments into an array. It allows a function to accept a variable number of arguments and access them as an array. The other options are not the intended use of the rest operator in this context.
How can developers specify the version of their package when publishing to the NPM registry?
- npm set-version
- npm version
- npm update
- npm publish --version
Developers can specify the version of their package when publishing to the NPM registry using the npm version command followed by the desired version number, e.g., npm version 1.0.0. The other options do not perform this specific task.
You are developing an e-commerce application where multiple API calls are made to fetch product details. How can you efficiently handle multiple Promises to ensure that even if one fails, others continue execution?
- Promise.allSettled()
- Promise.race()
- Promise.all()
- Promise.any()
In this scenario, you can efficiently handle multiple Promises using Promise.allSettled(). This method returns an array of results for all Promises, allowing you to handle both resolved and rejected Promises without stopping the execution of others. Promise.race() would stop execution on the first rejection, Promise.all() requires all to resolve, and Promise.any() stops on the first resolution.