Skip to content

events: 8 KiB blocks for the hot store's event data - #1045

Draft
tamirms wants to merge 1 commit into
feature/full-historyfrom
tamirms/events-8k-datacf-blocks
Draft

tamirms wants to merge 1 commit into
feature/full-historyfrom
tamirms/events-8k-datacf-blocks

Conversation

@tamirms

@tamirms tamirms commented Sep 25, 2026

Copy link
Copy Markdown
Contributor

What

Sets the hot store's DataCF block size (dataCFBlockSize) to 8 KiB, down from 32 KiB.

Why

A point read decompresses one block to serve one event of about 250 bytes, so a 32 KiB block made every cache miss decompress about 128 events to serve one. Measured on the events corpus at limit=1000, 8 KiB against 32 KiB:

  • stress density (sac-6000): service p50 −53%, p99 −59%, peak RSS −41%
  • pubnet density: neutral
  • disk +0.8%, ingest unchanged; 4 KiB adds nothing further

Split out of #968.

Known limitations

Hot tier only. RocksDB reads any block size, so existing databases keep working and pick up 8 KiB blocks as compaction rewrites them.

🤖 Generated with Claude Code

A point read decompresses one block to serve one event of about 250
bytes, so a 32 KiB block made every cache miss decompress about 128
events to serve one. Measured on the events corpus at limit=1000, 8 KiB
against 32 KiB: service p50 -53%, p99 -59% and peak RSS -41% at stress
density (sac-6000); neutral at pubnet density; +0.8% disk; ingest
unchanged. 4 KiB adds nothing further.

This is the hot tier only. RocksDB reads any block size, so existing
databases keep working and pick up the new size as compaction rewrites
them.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QHnF5BhsuoxpWxGmatQzmt
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant