Crates.io | crypto-message |
lib.rs | crypto-message |
version | 1.1.21 |
source | src |
created_at | 2022-07-08 08:41:49.795463 |
updated_at | 2024-07-05 09:05:55.38558 |
description | Unified data structures for all cryptocurrency exchanges. |
homepage | |
repository | https://github.com/crypto-crawler/crypto-msg-parser/tree/main/crypto-message |
max_upload_size | |
id | 621691 |
size | 108,079 |
Unified data structures for all cryptocurrency exchanges.
This library contains all output data types of crypto-msg-parser
.
The crypto_message::proto
module contains protobuf messages corresponding to message types in lib.rs
.
The crypto_message::compact
module contains compact messages corresponding to message types in lib.rs
.
Differences:
Message types in lib.rs
are output data types of crypto-msg-parser
, and they are designed for JSON and CSV.
Message types in crypto_message::proto
are protobuf messages, which are designed for disk storage.
message types in crypto_message::compact
are suitable for RPC.
Messages types in lib.rs
has string fields such as exchange
, symbol
, which causes a lot of memory allocation and copying, so these types are NOT suitable for high-performance processing.
Message types in crypto_message::proto
are compact, (1) metadata fields such as exchange
, symbol
and pair
are removed to save disk space, because these fields exist in filenames already, and (2) all float numbers are 32-bit to save more disk space.
Message types in crypto_message::compact
are equivalent to message types in lib.rs
, with exchange
changed to enum
, symbol
and pair
changed to u64
hash values.