You are on page 1of 4

Q1 Write research paper summary including:

a. Problem Statement:
In recent years, many attempts have been made to take advantage of byte
addressing, durability, and high performance of persistent memory in particular,
for latency-critical transactions in storage systems, it may be beneficial to store a
small number of bytes for permanent memory. Although a large number of
previous studies have improved index tree structures for byte-addressable
persistent memory, only a few have attempted to adapt hash-based index structures
to memory. In memory, hash tables in key and value stores act as a fixed size
buffer cache, with recent key value entries replacing older entries. Hence, they
have set the size of the hash table a priori based on the available memory space.
However, not all applications can estimate the size of the hash table in advance,
database systems and file systems are typical examples. One of the main issues
with hash-based indexing for PM is achieving efficient dynamic re-hashing under
penalty. The thin unit of persistent memory input and output has sparked interest in
redesigning block-based data structures.
b. Objective:
The objective in which they present the context and issues of extensible hashing on
PM. They present the Cache line Conscious scalable hash and show how it
provides atomic failure while reducing the number of PM writes. They have
present the CCEH recovery algorithm. they are discussing CCEH competition and
consistency issues. they are evaluating the performance of PM based hash tables
They present Extensible Cache Line Hashing (CCEH), which is a variant of
Extensible Hashing optimized for PM to minimize cache line access and satisfy the
atomicity of failures without explicit logging. Due to the flat static structure of
hash-based indexes, they can provide constant lookup times. However, static
hashing is not without limits. Such traditional hashing schemes usually require
estimating the size of the hash tables and allocating a sufficient number of shards
ahead of time. For some applications, this is a doable task. For example, in-
memory hash tables in key and value stores act as a fixed-size buffer cache, with
recent key value entries replacing older entries. they can set the size of the hash
table a priori based on the available memory space. However, not all applications
can estimate the size of the hash table in advance, database systems and file
systems are typical examples. If data items are dynamically inserted and deleted,
static hash schemes of fixed size suffer from collisions, overflows, or
underutilization of hash functions. To solve these problems, dynamic resizing
should be used to adjust the size of the hash table in proportion to the number of
records. In a typical situation where the load factor (bucket utilization) becomes
high, a larger hash table must be created, and a rehash that moves existing records
to new bucket locations must be performed. Unfortunately, rehashing is not
desirable as it degrades system throughput as the index is prevented from being
accessed during rehashing, which significantly increases the tail latency of queries.
To mitigate the rehashing overhead, various optimization techniques, such as linear
probing, separate chaining, and cuckoo hashing, have been developed to handle
hash collisions. However, these optimizations do not address the root cause of hash
collisions but defer the rehashing problem. As such, static hashing schemes have
no choice but to perform expensive full table (or 1/3 rehash operations later if the
allocated hash table size is not sufficient)

c. Methodology:
The context and issues of extensible hashing on PM. They present the Cache line
Conscious scalable hash and show how it provides atomic failure while reducing
the number of PM writes. they present the CCEH recovery algorithm. they are
discussing CCEH competition and consistency issues. they are evaluating the
performance of PM based hash tables. To solve these problems, dynamic resizing
should be used to adjust the size of the hash table in proportion to the number of
records. In a typical situation where bucket utilization with a load factor gets high,
you should create a larger hash table and perform a new hash that moves the
existing entries to new bucket locations. Unfortunately, re-hashing is undesirable
because it reduces system throughput because the index is not available during re-
hashing, which greatly increases the request queue latency.
The dynamic hashing process creates a smaller and more adaptable character
string, which makes it faster and easier for users to search for objects in a
dictionary or groups of objects stored in a containing data structure. Dynamic
hashing avoids problems caused by an oversized database and maximizes
performance. In addition, it maximizes the space available for objects, tables, and
other data in the system. A hash function is similar to a find and replace function in
which programmers can specify a specific element and create a system of rules that
change it whenever that element is encountered and specified criteria are met with
dynamic hashing, only a small amount of data is available at a time, which
simplifies the operation of the computer.
Solution Proposed:
The solution that is proposed in the paper was about the design and implementation
of the Extensible and Cache-Line Aware Hash Scheme (CCEH), an atomic variant
of extensible hashing failure that efficiently uses cache lines to get the most out of
byte-address persistence Memory. dynamic hash simplifies the search a large
database for a specific piece of information and the implementation of various
actions with it. By introducing an intermediate level between the directory and
cache line bays, CCEH effectively reduces directory management overhead and
finds an entry with a maximum of two cache line hits. A hash function is similar to
a find and replace function in which programmers can specify a specific element
and create a system of rules that change it whenever that element is encountered
and specified criteria are met with dynamic hashing. Our experience shows that
CCEH eliminates the overhead of hashing the entire table and outperforms other
hash table schemes by a wide margin in both PM and DRAM. The performance is
not affected by an increase in the amount of data in the system, only the size of the
memory never goes unused as it adapts to the size of the data is well suited for
applications where data is constantly changing.
Q2 Write your understanding about Cache-line-Conscious Extendible Hash
(CCEH).
The understanding which it got reading this paper is that in this paper the author
has presented the context and issues of extensible hashing on PM. The Cache line
Conscious scalable hash and show how it provides atomic failure while reducing
the number of PM writes. The CCEH recovery algorithm. they are discussing
CCEH competition and consistency issues. they are evaluating the performance of
PM based hash tables. Extensible Cache Line Hashing (CCEH), which is a variant
of Extensible Hashing optimized for PM to minimize cache line access and satisfy
the atomicity of failures without explicit logging. They present the Cache line
Conscious scalable hash and show how it provides atomic failure while reducing
the number of PM writes. they present the CCEH recovery algorithm.
They are discussing CCEH competition and consistency issues. they are evaluating
the performance of PM based hash tables. To solve these problems, dynamic
resizing should be used to adjust the size of the hash table in proportion to the
number of records. In a typical situation where bucket utilization with a load factor
gets high, you should create a larger hash table and perform a new hash that moves
the existing entries to new bucket locations. Unfortunately, re-hashing is
undesirable because it reduces system throughput because the index is not
available during re-hashing, which greatly increases the request queue latency. The
design and implementation of the Extensible and Cache-Line Aware Hash Scheme
(CCEH), an atomic variant of extensible hashing failure that efficiently uses cache
lines to get the most out of byte-address persistence Memory. dynamic hash
simplifies the search a large database for a specific piece of information and the
implementation of various actions with it. By introducing an intermediate level
between the directory and cache line bays, CCEH effectively reduces directory
management overhead and finds an entry with a maximum of two cache line hits.
A hash function is similar to a find and replace function in which programmers can
specify a specific element and create a system of rules that change it whenever that
element is encountered and specified criteria are met with dynamic hashing. To
resolve the hash conflict, CCEH allocates a new bucket and copies the key-value
entries not only to the conflicting bucket segment, but also to other buckets in the
same bucket based on their hash keys. The performance is not affected by an
increase in the amount of data in the system, only the size of the memory never
goes unused as it adapts to the size of the data is well suited for applications where
data is constantly changing. A hash function is similar to a find and replace
function in which programmers can specify a specific element and create a system
of rules that change it whenever that element is encountered and specified criteria
are met with dynamic hashing, only a small amount of data is available at a time,
which simplifies the operation of the computer.

You might also like