Utility functions and shared components for ThemisDB.
Provides shared utility functions and cross-cutting infrastructure components used across all ThemisDB modules, including audit logging, PII detection, text processing, cryptographic helpers, tracing, compression, and pagination.
In scope: Audit logger, cursor/pagination, HKDF key derivation, LEK manager, structured logger, text normalizer, PII detection and pseudonymization, PKI client, retention manager, SAGA logger, serialization helpers, stemmer/stopwords, distributed tracing, ZSTD codec, geospatial utilities.
Out of scope: Business logic, module-specific data models, high-level orchestration.
audit_logger.cpp— structured audit trailpii_detector.cpp— PII detection and pseudonymizationhkdf_helper.cpp— HKDF key derivationtracing.cpp— distributed trace propagationzstd_codec.cpp— ZSTD compressionstemmer.cpp— text stemminglek_manager.cpp— Local Encryption Key management
Maturity: 🟡 Beta — All core utilities operational; streaming PII pipeline and tamper-evident audit chain in progress.
- Audit logger
- Cursor/pagination
- HKDF key derivation helper
- LEK (Local Encryption Key) manager
- Logger
- Normalizer
- PII detection and pseudonymization
- PKI client
- Retention manager
- SAGA logger
- Serialization
- Text processing (stemmer, stopwords)
- Tracing
- ZSTD codec
- Geospatial utilities
- Comprehensive logging infrastructure
- Audit trail generation
- PII detection and redaction
- Text normalization and stemming
- Compression utilities
- Distributed tracing
For comprehensive observability and monitoring documentation, see:
- Observability & Monitoring Overview - Central hub for logging, tracing, metrics, and alerting
For detailed utilities documentation, see:
- Audit Logger
- Cursor
- HKDF Helper
- LEK Manager
- Logger
- PII Detector
- Stemmer
- Tracing
- ZSTD Codec
- And many more in docs/src/utils/
-
Josuttis, N. M. (2012). The C++ Standard Library: A Tutorial and Reference (2nd ed.). Addison-Wesley. ISBN: 978-0-321-62321-8
-
Knuth, D. E. (1998). The Art of Computer Programming, Vol. 3: Sorting and Searching (2nd ed.). Addison-Wesley. ISBN: 978-0-201-89685-5
-
Chazelle, B. (2001). The Soft Heap: An Approximate Priority Queue with Optimal Error Rate. Journal of the ACM, 47(6), 1012–1027. https://doi.org/10.1145/355541.355542
-
Agner Fog. (2023). Instruction Tables: Lists of Instruction Latencies, Throughputs and Micro-operation Breakdowns for Intel, AMD and VIA CPUs. Technical University of Denmark. https://www.agner.org/optimize/instruction_tables.pdf