Deltix QSRV API Documentation
website·Indexed 32 days ago
https://kb.timebase.info/Technical API reference for deltix.qsrv and deltix.util components. Includes documentation for high-frequency (hf) tickdb, solgen for C++, Python, and Java, as well as utilities for JSON parsing, networking, and security. Features detailed class hierarchies, interface definitions, and specific implementations such as TDBRunner and JavaBeanGenerator.
What's inside Deltix QSRV
- TimeBase Cluster allows a group of TimeBase servers (called Members) to be organized into a logical cluster. This architecture is used to handle datasets that exceed the capacity of a single machine, prevent data loss, and scale the processing of high volumes of incoming and outgoing data. TimeBase Cluster is available exclusively in the TimeBase Enterprise Edition. It utilizes the Raft consensus algorithm to elect a cluster leader, maintain a quorum to avoid split-brain scenarios, and replicate common metadata and data locations across all members.
Overview of TimeBase Web Administrator
TimeBase Web Administrator is a web-based interface used to manage and monitor data stored in TimeBase. It provides capabilities to create, edit, view, delete, export, and import streams, as well as tools for monitoring live data and querying data.Overview of QuantQuery Language (QQL)
QuantQuery Language (QQL) is a query language used in TimeBase Enterprise Edition 5.4 and earlier to extract, filter, aggregate, and transform data in TimeBase streams. While similar to SQL, QQL is specifically designed for polymorphic time-series data, whereas SQL is intended for monomorphic (fixed-structure) data.Overview of deltix.qsrv.hf.pub.util package
Thedeltix.qsrv.hf.pub.utilpackage provides utility classes and interfaces for handling live cursor watching and serialization. Key components includeLiveCursorWatcherfor monitoring cursors,LiveCursorWatcherExfor automated cursor closing, andSerializationUtilsfor serialization tasks.Overview of TimeBase Load Simulator
The TimeBase Load Simulator is a console utility used to test TimeBase performance by simulating various load scenarios over a defined time period. It connects to an existing TimeBase instance, executes the simulation, and then stops. Users can monitor the resulting system metrics in Grafana.
Supported load scenarios include:
- Data connectors: Loading market data to
nstreams at a fixed rate for a specific number of symbols. - Live cursors: Reading live data from
nrandom streams. - Live cursors (all streams): Reading live data from all available streams.
- Historical cursors: Reading random data from a random stream starting from a random timestamp.
- Extra streams: Creating
nadditional streams prior to simulation.
- Data connectors: Loading market data to
Overview of the deltix.qsrv.hf.tickdb.ui.tbshell package hierarchy
Thedeltix.qsrv.hf.tickdb.ui.tbshellpackage contains components for a shell interface related to TickDB. Key functional areas include database management, query execution, real-time playback, and data printing.Overview of deltix.qsrv.testsetup class hierarchy
Thedeltix.qsrv.testsetuppackage provides utilities for test data generation and setup. Key classes includeBaseGenerator(which implementsMessageSource) and its subclassDataGenerator, theCycleIteratorfor iterating over sets of data, andTickDBCreatorfor creating tick databases. It also provides specialized message types for testing, such asFloatMessage,IntMessage, andStringMessage, all of which extendInstrumentMessage.Overview of TimeBase Web Administrator
TimeBase Web Administrator is a web interface used to manage and monitor data stored in TimeBase. Its primary capabilities include creating, editing, viewing, deleting, exporting, and importing streams, as well as monitoring live data and querying data. Additionally, it functions as a REST/WS gateway for the TimeBase Server.Overview of TimeBase Data Partitions (Spaces)
Data Partitions, known asspaces, allow developers to physically distribute Time Slice Files (TSF) based on time ranges or other criteria. This approach maximizes writing performance by increasing throughput and allowing multiple loaders to write concurrently to specific spaces without impacting reading performance. Chronological order is preserved within spaces. By default, all data is written into aNULLspace. A new space is created automatically the first time data is written to it; empty spaces cannot be created.Overview of the DataType class hierarchy
Thedeltix.qsrv.hf.pub.md.DataTypeclass is a public abstract class that implementsjava.io.Serializableandjava.lang.Cloneable. It serves as the base class for various specialized data type implementations used in the system.Overview of the deltix.qsrv.hf.pub.codec.intp package hierarchy
The
deltix.qsrv.hf.pub.codec.intppackage contains implementations for encoding and decoding logic, including various bound and unbound encoders/decoders, field codecs, and value accessors. Key components include:- Encoders/Decoders: Implementations for
BoundDecoder,FixedBoundEncoder,FixedExternalDecoder,UnboundDecoder, andPolyBoundEncoder. - Field Handling:
FieldEncoder(withClassFieldEncoder) andFieldDecoder(withClassFieldDecoder). - Value Access:
ValueGetterandValueSetterinterfaces with Java-based implementations (JavaValueGetter,JavaValueSetterMethod, etc.). - Contexts:
DecodingContextandEncodingContextfor managing state during codec operations.
- Encoders/Decoders: Implementations for
Overview of classes in deltix.qsrv.hf.topic.loader
Thedeltix.qsrv.hf.topic.loaderpackage provides components for loading topic data, including factory classes for loaders, codecs for topic loading, and memory-based output channels for data streams.