#byte-string #big-decimal #numeric #big-query #google #encode-decode

big-decimal-byte-string-encoder

Google BigQuery的BigDecimalByteStringEncoder的Rust实现

1个不稳定版本

0.1.0 2024年7月31日

#585 in 编码

Download history 103/week @ 2024-07-26 28/week @ 2024-08-02 7/week @ 2024-08-09

每月138次下载

Apache-2.0

13KB
179

big-decimal-byte-string-encoder

Crates.io Documentation License

NUMERIC数据类型的Google BigQuery的BigDecimalByteStringEncoder的Rust实现。

这个crate提供了将BigDecimal值编码和解码为与BigQuery NUMERIC类型兼容的字节字符串的功能,如BigQuery Write API中使用的那样。

它与gcp-bigquery-client配合得很好。

功能

  • 将BigDecimal值编码到BigQuery NUMERIC字节。
  • 将BigQuery NUMERIC字节解码回BigDecimal值。

安装

将以下内容添加到您的Cargo.toml

[dependencies]
big-decimal-byte-string-encoder = "0.1.0"

用法

use bigdecimal::BigDecimal;
use big_decimal_byte_string_encoder::{decode_bigquery_bytes_to_bigdecimal, encode_bigdecimal_to_bigquery_bytes};
use std::str::FromStr;

let decimal = BigDecimal::from_str("123.456").unwrap();
let encoded = encode_bigdecimal_to_bigquery_bytes(&decimal).unwrap();
let decoded = decode_bigquery_bytes_to_bigdecimal(&encoded).unwrap();
assert_eq!(decimal, decoded);

API文档

有关详细的API文档,请访问 docs.rs

许可证

本项目采用Apache License,版本2.0。有关详细信息,请参阅LICENSE文件。

致谢

此实现受到Google BigQuery Write API的启发并移植而来。有关更多信息,请参阅BigQuery Write API文档

贡献

欢迎贡献!请随时提交Pull Request。

依赖项

~1.4–2MB
~44K SLoC