/ByConity

ByConity is an open source cloud data warehouse

Primary LanguageC++Apache License 2.0Apache-2.0

Welcome to ByConity

ByConity Arch 2023

Byconity, an advanced database management system, is a derivative of ClickHouse DBMS, building upon the robust codebase from ClickHouse v21.8. However, Byconity's development path has since diverged, thanks in part to insights gained from Snowflake's architecture.

Our key innovations include the introduction of a compute-storage separation architecture, a state-of-the-art query optimizer, stateless worker, and a shared-storage framework. These enhancements, inspired by both ClickHouse's strength and Snowflake's innovative approach, offer substantial performance and scalability improvements.

We deeply appreciate the profound contributions from the ClickHouse team, with whom we had an early discussion to share our open-source vision and technical implementations. However, given the substantial architectural differences that emerged in our modifications, the ClickHouse team assessed that integrating these changes directly into the original ClickHouse project was not feasible. As a result, we decided to launch Byconity as an independent downstream open-source project. This approach preserves the integrity of both projects while offering distinct solutions for diverse database management needs.

Query Large Scale Data with Speed and Precision When dealing with large-scale data, performance is crucial. Byconity shines in this aspect by providing powerful querying capabilities that excel in large-scale environments. With Byconity, you can extract valuable insights from vast amounts of data quickly and accurately.

Break Down Data Silos with Byconity Data silos pose significant challenges in data management. With different systems and processes often resulting in isolated islands of data, it hampers data analysis and insights. Byconity addresses this issue by seamlessly ingesting both batch-loaded data and streaming data, thus enabling your systems to break down silos for smoother data flow.

Designed for the Cloud, Flexible for Your Needs Byconity is designed with a cloud-native approach, optimized to take full advantage of the cloud's scalability, resilience, and ease of deployment. It can work seamlessly on both Kubernetes clusters and physical clusters, offering you the flexibility to deploy in the environment that best meets your requirements. This broad compatibility ensures that you can leverage Byconity's benefits, irrespective of your infrastructure.

Benefits

  • Unified Data Management: Byconity eliminates the need to maintain separate processes for batch and streaming data, making your systems more efficient.
  • High-Performance Data Querying : Byconity's robust querying capabilities allow for quick and accurate data retrieval from large-scale datasets.
  • Avoid Data Silos : By handling both batch and streaming data, Byconity ensures all your data can be integrated, promoting better insights.
  • Cloud-Native Design : Byconity is built with a cloud-native approach, allowing it to efficiently leverage the advantages of the cloud and work seamlessly on both Kubernetes and physical clusters.
  • Open Source: Being an open-source project, Byconity encourages community collaboration. You can contribute, improve, and tailor the platform according to your needs.

Build and Run ByConity

The easiest way to build ByConity is built in docker dev-env. If you build on your local machine, ByConity executable file depends on Foundation DB library libfdb_c.so. So in order to run it, we need to install the FoundationDB client package. This link tells how to install. We can download client package from FoundationDB GitHub release pages, for example here.

In case you want to build ByConity in metal machine, follow this guide

Using Docker Compose would be convenient for running a ByConity cluster.

Useful Link