AWS Redshift Interview Question - 1

1. Explain the benefits of Amazon Redshift ?
Amazon Redshift is a fully managed, cloud-based, petabyte-scale data warehouse service by Amazon Web Services (AWS). It is an efficient solution to collect and store all your data and enables you to analyze it using various business intelligence tools to acquire new insights for your business and customers.
The following are some of the major benefits of using the Amazon Redshift:
1. Fast Performance
2. Inexpensive
3. Extensible
4. Scalable
5. Simple to Use
6. Compatible
7. Secured

2. What is Elastic Resize and how is it different from Concurrency Scaling?
Elastic Resize adds or removes nodes from a single Redshift cluster within minutes to manage its query throughput. For example, an ETL workload for certain hours in a day or month-end reporting may need additional Redshift resources to complete on time. Concurrency Scaling adds additional cluster resources to increase the overall query concurrency.

3. What is Amazon Redshift?
Amazon Redshift is a data warehouse product which forms part of the larger cloud-computing. Amazon Redshift is a fully managed, petabyte-scale data warehouse service in the cloud. This enables you to use your data to acquire new insights for your business and customers. The first step to create a data warehouse is to launch a set of nodes, called an Amazon Redshift cluster.

4. Which query language is used by Amazon Redshift?
Amazon Redshift uses queries based on structured query language (SQL) to interact with data and objects in the system.

5. Explain the architecture of Amazon Redshift?
The architecture hierarchy of amazon consists of many layers such as client applications, leader node, compute node, node slice. Every layer is interrelated and has a specific task to do. Lets us see the function of each of these layers in brief.
Client applications:Client applications are used to connect to the Amazon Redshift cluster via JDBC or ODBC drivers.
Leader node:The leader node is responsible for communicating with the client application and compute nodes.
Compute node:Computer node performs functions such as loading data, taking backup and restoring the data.
Node slice:Node slice is used for distributing the data within the node. Whenever the leader node assigns the operations to node slices they start working in parallel to complete the operation.

123456