No Description https://ydb.tech/

Ivan Blinkov 1aa688dc19 DOCSTOOLS-2214: update docs_release.yaml 11 months ago
.github 1aa688dc19 DOCSTOOLS-2214: update docs_release.yaml 11 months ago
build a3f03bb9af Automatic release build for ymake, os_ymake 11 months ago
certs 96458ea3c7 External build system generator release 65 11 months ago
cmake ffff7a34e4 add darwin-arm64 CMakeLists 1 year ago
contrib dfbaba0293 Intermediate changes 11 months ago
devtools 914f57e324 Make support_retries() and get_type() methods of object instead of class ones. Reduce get_type_name() usage. 11 months ago
library 914f57e324 Make support_retries() and get_type() methods of object instead of class ones. Reduce get_type_name() usage. 11 months ago
scripts f418bb2f7a Intermediate changes 1 year ago
tools 96458ea3c7 External build system generator release 65 11 months ago
util adb1ae56bc [util] Store policy should preserve constructor's is_constructible trait 11 months ago
vendor b2c749509a Update golang.org/x/* deps for import 11 months ago
ydb e2bd62ba6f description of the "ydb workload transfer topic-to-table" command 11 months ago
yt 81ca8992ff YT-20593: Support Zstd dictionary compression in yt/core 11 months ago
.arcadia.root bf0f13dd39 add ymake export to ydb 1 year ago
.gitignore f37c4c9349 Intermediate changes 11 months ago
.mapping.json e8ee0648c5 ci: add testmo-proxy, split junit into multiple parts, generate summary and post comment after tests logs upload 11 months ago
AUTHORS fa938ab62c Update email for Andrey Satarin 2 years ago
BUILD.md dbcf1188f7 Build instructions focused on stable Server/CLI builds, Test instructions separated 1 year ago
CMakeLists.darwin-arm64.txt ffff7a34e4 add darwin-arm64 CMakeLists 1 year ago
CMakeLists.darwin-x86_64.txt 1ddebddc8a Moved protobuf_udf lib 1 year ago
CMakeLists.linux-aarch64.txt 1ddebddc8a Moved protobuf_udf lib 1 year ago
CMakeLists.linux-x86_64.txt 1ddebddc8a Moved protobuf_udf lib 1 year ago
CMakeLists.txt ffff7a34e4 add darwin-arm64 CMakeLists 1 year ago
CMakeLists.windows-x86_64.txt 1ddebddc8a Moved protobuf_udf lib 1 year ago
CODE_OF_CONDUCT.md dec67df320 fix broken link 2 years ago
CONTRIBUTING.md 6e57ce74e4 Rename CONTRIBUTING to CONTRIBUTING.md 2 years ago
LICENSE a740299e17 Update year in LICENSE 1 year ago
README.md 277df39749 [misc] improve readme 11 months ago
ROADMAP.md da22ba3f04 ROADMAP updates 1 year ago
SECURITY.md db479c3342 added security.md INFRAMARKETING-233 2 years ago
clang.toolchain 60f706936a Make ccache and ordinary options same 1 year ago
conanfile.txt 04a19cc6b6 Intermediate changes 1 year ago
generate_cmake e33befc2c5 Use own copy of actorlib. KIKIMR-20294 11 months ago
go.mod 3f437a5ee5 add go.mod for OSS 1 year ago
go.sum 3f437a5ee5 add go.mod for OSS 1 year ago
ya 55eb3c2ece Revert commit rXXXXXX, Automatic release build for ya_bin3, os_ya, ya_bin, test_tool, os_test_tool_3, test_tool3 11 months ago
ya.conf 9c43d58f75 Intermediate changes 11 months ago

README.md


License Release Discord

YDB

Website | Documentation | Official Repository | Blog | YouTube | Discord | Telegram | LinkedIn | X

YDB is an open source Distributed SQL Database that combines high availability and scalability with strict consistency and ACID transactions.

YDB Product Video

Main YDB Advantages

YDB is designed from scratch as a response to growing demand for scalable interactive web services. Scalability, strict consistency and effective cross-row transactions were a must for such OLTP-like workload. YDB is built by people with strong background in databases and distributed systems, who had an experience of developing No-SQL database and the Map-Reduce system for one of the largest search engines in the world. We found that YDB's flexible design allows us to build more services on top of it including persistent queues and virtual block devices.

Basic YDB features:

  • Fault-tolerant configuration that survive disk, node, rack or even datacenter outage;
  • Horizontal scalability;
  • Automatic disaster recovery with minimum latency disruptions for applications;
  • SQL dialect (YQL) for data manipulation and scheme definition;
  • ACID transactions across multiple nodes and tables with strict consistency.

Fault-tolerant Configurations

YDB could be deployed in three availability zones. Cluster remains available for both reads and writes during complete outage of a single zone. Availability zones and regions are covered in more detail in documentation.

Horizontal Scalability

Unlike traditional relational databases YDB scales out providing developers with capability to simply extend cluster with computation or storage resources to handle increasing load. YDB has desaggregated storage and compute layers which allow you to scale storage and compute resources independently.

Current production installations have more than 10,000 nodes, store petabytes of data and handle millions distributed transactions per second.

Automatic Disaster Recovery

YDB has built-in automatic recovery support to survive a hardware failure. After unpredictable disk, node, rack or even datacenter failure YDB remains fully available for reads and writes and restores required data redundancy automatically.

Multitenant and Serverless Database

YDB has support for multitenant and serverless setups. A user can run a YDB cluster and create several databases that share one pool of storage and have different compute nodes. Alternatively a user can run several serverless databases that share one pool of compute resources to utilize them effectively.

Supported Platforms

Minimal system requirements

YDB runs on x86 64bit platforms with minimum 8 GB of RAM.

Operating Systems

We have major experience running production systems on 64-bit x86 machines working under Ubuntu Linux.

For development purposes we test that YDB could be built and run under latest versions of MacOS and Microsoft Windows on a regular basis.

Getting Started

  1. Install YDB using pre-built executables, build it from source or use Docker container.
  2. Install command line interface tool to work with scheme and run queries.
  3. Start local cluster or container and run YQL query via YDB CLI.
  4. Access Embedded UI via browser for schema navigation, query execution and other database development related tasks.
  5. Run available example application.
  6. Develop an application using YDB SDK.

How to Build from Source Code

How to Deploy

How to Contribute

We are glad to welcome new contributors!

  1. Please read the contributor's guide.
  2. We can accept your work to YDB after you have signed contributor's license agreement (aka CLA).
  3. Please don't forget to add a note to your pull request, that you agree to the terms of the CLA.

Success Stories

Take a look at YDB web site for the latest success stories and user scenarios.