Skip to content

Instantly share code, notes, and snippets.

View debasishg's full-sized avatar
🏠
Working from home

Debasish Ghosh debasishg

🏠
Working from home
View GitHub Profile
@debasishg
debasishg / gist:8172796
Last active June 8, 2025 08:30
A collection of links for streaming algorithms and data structures

General Background and Overview

  1. Probabilistic Data Structures for Web Analytics and Data Mining : A great overview of the space of probabilistic data structures and how they are used in approximation algorithm implementation.
  2. Models and Issues in Data Stream Systems
  3. Philippe Flajolet’s contribution to streaming algorithms : A presentation by Jérémie Lumbroso that visits some of the hostorical perspectives and how it all began with Flajolet
  4. Approximate Frequency Counts over Data Streams by Gurmeet Singh Manku & Rajeev Motwani : One of the early papers on the subject.
  5. [Methods for Finding Frequent Items in Data Streams](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.187.9800&rep=rep1&t

A study on how the Model Context Protocol (MCP) compares to traditional control plane architectures for orchestrating agentic applications. It contains the technical differences, expert and community opinions, and examines any evidence of real-world adoption or use cases for both approaches.

Comparison of Model Context Protocol (MCP) and Traditional Control Planes for Agentic Applications

Introduction

The Model Context Protocol (MCP) is a recently proposed open standard (originating from Anthropic) that defines how AI models (especially LLM-based agents) connect to external tools and data sources in a consistent way. By contrast, traditional “control plane” architectures in agentic AI refer to custom or framework-based orchestrators that manage how one or multiple AI agents invoke tools, coordinate tasks, and enforce policies. This report compares MCP with traditional control-plane designs for orchestrating agentic applications, focusing on technical differences in architecture and communicat

Here’s a reference end-to-end architecture for giving LLMs seamless, MCP-powered access to ClickHouse data and rendering results in a rich web UI.


1. High-level Components

  1. ClickHouse Cluster Your OLAP datastore, hosting raw event or business data.

  2. MCP Server (“ClickHouse Tool”)

@debasishg
debasishg / dod.md
Last active May 7, 2025 14:59
Data oriented design, hardware awareness, cache awareness in data structures & algorithms
@debasishg
debasishg / ocaml-domain-modeling.md
Last active February 27, 2025 04:22
OCaml domain modeling

Abstraction and Parametricity implementing domain models in OCaml

One of my favorite comments on abstraction and parametricity ..

Parametricity can be thought of as the dual to abstraction. Where abstraction hides details about an implementation from the outside world, parametricity hides details about the outside world from an implementation.

When using OCaml as the implementation language, you abstract using ADTs (Abstract Data Types) and make your abstraction parametric using functors. And bind all of the algebras together using Modules.

Abstraction

@debasishg
debasishg / gist:6c13f3f57080a9655463
Last active February 12, 2025 04:28
links to papers / books on succinct data structures ..
From Theory to Practice: Plug and Play with Succinct Data Structures - Simon Gog, Timo Beller, Alistair Moffat & Matthias Petri (http://arxiv.org/pdf/1311.1249v1.pdf)
Succinct Data Structures for Retrieval and Approximate Membership - Martin Dietzfelbinger and Rasmus Pagh (http://www.itu.dk/people/pagh/papers/bloomier.pdf)
Lecture 17 in Erik Demaine's 6.851 (https://courses.csail.mit.edu/6.851/spring12/lectures/L17.html)
Succinct Data Sstructures by Edward Kmett (https://www.youtube.com/watch?v=uA0Z7_4J7u8)
Succinct Trees in Practice by Diego Arroyuelo, Rodrigo Ćanova, †Gonzalo Navaror Kunihiko Sadakane http://users.dcc.uchile.cl/~darroyue/papers/alenex2010.pdf
@debasishg
debasishg / cache-oblivious.md
Last active December 26, 2024 09:12
Papers related to cache oblivious data structures

Cache Oblivious and Cache Aware Data Structure and Algorithms

  1. Cache-Oblivious Algorithms and Data Structures - Erik Demaine (One of the earliest papers in cache oblivious data structures and algorithms that introduces the cache oblivious model in detail and examines static and dynamic cache oblivious data structures built between 2000-2003)

  2. Cache Oblivious B-Trees - Bender, Demaine, Farch-Colton (This paper presents two dynamic search trees attaining near-optimal performance on any hierarchical memory. One of the fundamental papers in the field where both search trees discussed match the optimal search bound of Θ(1+log (B+1)N) memory transfers)

  3. Cache Oblivious Search Trees via Binary Trees of Small Height - Brodal, Fagerberg, Jacob (The data structure discussed in this paper works on the version of [2] but avoids the use o

@debasishg
debasishg / fix.md
Created September 30, 2024 16:10
fix for error in cargo build with rdkafka

The error you're encountering seems to occur during the build process for librdkafka, which is being built and linked statically as part of your Rust project that uses the rdkafka crate. Here's a breakdown of possible causes and solutions:

1. Resource temporarily unavailable (make[1]: *** read jobs pipe: Resource temporarily unavailable.)

This error suggests that the build process is hitting some system resource limits, possibly related to the number of parallel jobs make is trying to run. The default behavior of make is to run jobs in parallel, which can sometimes overwhelm system resources.

Solution: Try limiting the number of jobs make runs in parallel by setting the MAKEFLAGS environment variable:

export MAKEFLAGS="-j1"
@debasishg
debasishg / gist:b4df1648d3f1776abdff
Last active July 27, 2024 14:46
another attempt to organize my ML readings ..
  1. Feature Learning
  1. Deep Learning