Open in app
Home
Notifications
Lists
Stories

Write
Sabyasachi Nayak
Sabyasachi Nayak

Home

Pinned

Design a Key-Value Store

Prologue for our understanding, need not be discussed with the interviewer: What is the difference between a key-value database and a key-value cache? Where a key-value database can be used as a database to persist data, caches are used in conjunction with a database when there is a need to…

System Design Interview

16 min read

Design an In-memory Key-Value Store
Design an In-memory Key-Value Store

May 12

Count-min sketch

The Count-Min sketch is a simple technique to summarize large amounts of frequency data. Count-min Sketch is a probabilistic data structure that uses fixed memory. The Count-Min Sketch is a data structure that is used to summarize data streams. It stores information about how often an item occurs in the…

Count Min Sketch

3 min read

Count-min sketch
Count-min sketch

May 12

Design top -K Trending comments/videos in a Time sliding window

From the coding interview perspective: In the coding interview context, the question is often posed as given an array of elements, find k elements of the highest frequency. We first go through the array and count each element’s frequency, creating a distribution map. We then go through the key-value pairs in the distribution map and…

System Design Interview

13 min read

Design top -K Trending comments/videos in a Time sliding window
Design top -K Trending comments/videos in a Time sliding window

May 11

Design a Rate Limiter

Disclaimer: The design is far from perfect but I have tried to capture things that you can realistically cover in a 25–35 mins interview. General Overview on Rate limiter for our understanding: Rate Limiter: A rate limiter in HTTP world is used to limit the number of client requests allowed to be processed over a specified period. Some…

Rate Limiting

14 min read

Design a Rate Limiter
Design a Rate Limiter

Apr 13

Builder pattern with real-life use cases

👉 The builder pattern is a type of creational design pattern, designed to provide a flexible solution to various object creation problems in object-oriented programming. 👉 The Builder design pattern intends to separate the construction of a complex object from its actual representation so that we can use the same…

Oops Concepts

3 min read


Mar 25, 2021

Second Chapter : De Mystifying Decorators in Python

we have a class that does a lot of very important stuff and we want to time everything it does. Then we should use something like a time_this decorator on every method inside the class: class ImportantStuff(object): @time_this def do_stuff_1(self): ... @time_this def do_stuff_2(self): ... @time_this def do_stuff_3(self): ... That…

Python

3 min read

Second Chapter : De Mystifying Decorators in Python
Second Chapter : De Mystifying Decorators in Python

Mar 23, 2021

De-Mystifying Decorators in Python

What is a decorator ? Types of decorators ? What is the order of execution of a decorator ? Can we pass arguments to the decorators ? Can there be multiple decorators ? What is the order of execution in this case ? What are various built in decorators available…

Python 3

9 min read

De Mystifying Decorators in Python
De Mystifying Decorators in Python

Jan 27, 2021

What is Bounded Knapsack ?

Bounded Knapsack where each item is supplied in limited numbers. We can use the item only once. Problem Statement # Given two integer arrays to represent weights and profits of ’N’ items, we need to find a subset of these items which will give us maximum profit such that their cumulative weight is…

Dynamic Programming

3 min read

Dynamic Programming Tips and Tricks
Dynamic Programming Tips and Tricks

Nov 8, 2020

Speed Up Your Python Program With Concurrency

In Python, the things that are occurring simultaneously are called by different names (thread, task, process) but at a high level, they all refer to a sequence of instructions that run in order. only multiprocessing actually runs these trains of thought at literally the same time. “Threading and asyncio” both…

6 min read


Oct 20, 2020

Protocol Buffer

Protocol Buffers provide an efficient way to encode structured data for serialization. The language’s basic organizational type is a message, which can be thought of as a C-style structure. It is named and contains some number of fields. With protocol buffers, you write a .proto description of the data structure…

6 min read

Protocol Buffer
Protocol Buffer
Sabyasachi Nayak

Sabyasachi Nayak

Following
  • The Educative Team

    The Educative Team

  • Abhishek Gupta

    Abhishek Gupta

  • Bhargav Bachina

    Bhargav Bachina

  • Shiju Varghese

    Shiju Varghese

  • It is Zion

    It is Zion

Help

Status

Writers

Blog

Careers

Privacy

Terms

About

Knowable