Featured Post

Python Set Operations Explained: From Theory to Real-Time Applications

Image
A  set  in Python is an unordered collection of unique elements. It is useful when storing distinct values and performing operations like union, intersection, or difference. Real-Time Example: Removing Duplicate Customer Emails in a Marketing Campaign Imagine you are working on an email marketing campaign for your company. You have a list of customer emails, but some are duplicated. Using a set , you can remove duplicates efficiently before sending emails. Code Example: # List of customer emails (some duplicates) customer_emails = [ "alice@example.com" , "bob@example.com" , "charlie@example.com" , "alice@example.com" , "david@example.com" , "bob@example.com" ] # Convert list to a set to remove duplicates unique_emails = set (customer_emails) # Convert back to a list (if needed) unique_email_list = list (unique_emails) # Print the unique emails print ( "Unique customer emails:" , unique_email_list) Ou...

SAP HANA In-memory Real Usage

Below are the list of questions on SAP HANA In-memory. That explains the real usage.

1. What is in-memory computing?

A1) In-memory computing is a technology that allows the processing of massive quantities of data in main memory to provide immediate results from analysis and transaction. 

The data that is processed is ideally real-time data (that is, data that is available for processing or analysis immediately after it is created).

2. How in-memory computing works?

A2) Keep data in main memory to speed up data access. Minimize data movement by using the columnar storage concept, compression, and performing calculations at the database level. 

Divide and conquer. Use the multi-core architecture of modern processors and multi-processor servers (or even scale out into a distributed landscape) to grow beyond what can be supplied by a single server.

3. What is the benefit of keeping data in memory?

A3) Data accessing from main memory is much faster than accessing data from Disk.

4. If data is in memory(i.e RAM), what will happen in loss of Power?
  • In database technology, atomicity, consistency, isolation, and durability (ACID) is the following set of requirements that ensures that database transactions are processed reliably:
    • A transaction must be atomic. If part of a transaction fails, the entire transaction must fail and leave the database state unchanged.
    • The consistency of a database must be preserved by the transactions that it performs.
    • Isolation ensures that no transaction interferes with another transaction.
    • Durability means that after a transaction is committed, it remains committed. Although the first three requirements are not affected by the in-memory concept, durability is a requirement that cannot be met by storing data in main memory alone. Main memory is volatile storage. It loses its content when it is out of electrical power. To make data persistent, it must be on non-volatile storage, such as HDDs, solid-state drives (SSDs), or flash devices.

5. How SAP HANA will store data in non-volatile storage?

A5) The storage that is used by a database to store data (in this case, main memory) is divided into pages. When a transaction changes data, the corresponding pages are marked and written to non-volatile storage in regular intervals. 

In addition, a database log captures all changes that are made by transactions. Each committed transaction generates a log entry that is written to non-volatile storage, which ensures that all transactions are permanent.

6. How SAP HANA minimizes data movement?

A6) Although today's memory capacities allow keeping enormous amounts of data in-memory, compressing the data in-memory is still preferable. 

The goal is to compress data in a way that does not use up the performance that is gained while still minimizing data movement from RAM to the processor.

Related: SAP Hana Best Selected Interview Questions (Part 2 of 3)

Comments

Popular posts from this blog

SQL Query: 3 Methods for Calculating Cumulative SUM

Big Data: Top Cloud Computing Interview Questions (1 of 4)

Python placeholder '_' Perfect Way to Use it