| Hey HN We’re the core engineering team at Caudena (which is used globally by investigative and intelligence agencies, including: Europol, Interpol, BKA, DHS, IRS-CI, FBI, NPA and others), and we just released the technical details behind Prism - our real-time, in-memory C++ database for blockchain analysis. To tackle the massive scale and complexity of blockchain data, we had to get creative with low-level engineering: - We utilize barebone servers with 2TB RAM and 48 Cores. - Implemented lock-free concurrent data structures - Developed a custom memory management system - Leveraging CPU-level vectorization - Built a custom in-memory columnar/graph database from scratch We’d love to AMA about: - the engineering choices we made - crazy optimizations that paid off - pitfalls we hit Ask us anything about scaling, memory trade-offs, building real-time analytics on immutable data, or the crypto-forensics space. Looking forward to a great convo! |
EDIT: Oh and did you implement from scratch? Why not use eg. the RCU implementation from folly?