#database-client #sqlx #ydb #grpc-client #db

ydb-unofficial

Unofficial Ydb client library written on rust

17 releases

0.6.7 Jul 14, 2024
0.6.5 Feb 25, 2024
0.6.2 Sep 10, 2023
0.4.1 Jul 26, 2023

#2611 in Database interfaces

50 downloads per month

Apache-2.0

110KB
2K SLoC

Unofficial Ydb Client library

There is an alternative of ydb

Targets:

  • more usability
  • more freedom to use wrappers or raw objects from grpc bindings
  • ability to create your own implementation of common traits, like Credentials
  • easy to use pool objects

Goals:

  • YQL Query for data (like DML)
  • YQL Query for sheme (like DDL)
  • Connect over grpcs (with tls)
  • Connect over grpc (without tls) - not worked, unknown cause
  • Connection pool (with deadpool) (feature pool)
  • Token authentication
  • Service account key authentication (feature auth-sa)
  • Metadata authentication
  • Query helpers (a lot of)
  • sqlx integration - partially done (feature sqlx):
    • Connection string
    • connection
    • binding parameters
    • preparing statements
    • transaction manager
    • DML (data) operations
    • DDL (scheme) operations
    • primitive types (bool, i8, i32, i64, u8, u32, u64, f32, f64, Vec<u8>, String)
    • date types (Date, Datetime, Timestamp, Interval)
    • json type (Json, JsonDocument)
    • Decimal type
    • connection pool balancing for discovery
    • compile-time checked queries
    • migrations
    • multiple transaction modes
    • log statements
  • operation parameters

Dependencies

~6–20MB
~301K SLoC