Aggregation
Notice:
Notice:
ByConity provides a rich set of SQL syntax through ANSI SQL dialect. When using this dialect, SQL statements will be parsed and validated by Apache Calcite and then sent to servers for execution. Apache Calcite supports standard ANSI SQL, please refer to the BNF-grammar here for more details//calcite.apache.org/docs/reference.html.
Notice:
Notice:
ByConity is an open source Data Warehouse system designed for modern IT architecture changes and, it is designed with a Cloud Native architecture. It provides excellent query and write performance while meeting the needs of Data Warehouse users for resource elastic volume expansion and contraction, read and write separation, resource isolation, and strong data consistency.
Start/Stop Merge of tables
Document Type: Tutorial
There are a few ways to get started with ByConity. You have the choice to deploy ByConity through package deployment, using docker wrapper or deploy ByConity in Kubernetes. To get started quickly, we recommend that you use the ByConity Playground with docker-compose/the docker wrapper.
Notice:
In ByConity, when using a Bucket table, the system organizes table data based on one or more columns and expressions specified by the user in the table creation statement. The data with the same value is clustered together and assigned to the same bucket number.
There are some s3 object key and s3 metadata changes after s3's preview version(from pre 0.2.0 version to 0.2.0 version). And we provide some tools to migrate from old version. Only use this if you are using old version of byconity and store data in s3.
Document Type: Tutorial
Document Type: Descriptive
Introduction
Typically, transactional databases use row storage to support transactions and high concurrent reading and writing, while analytical databases use column storage to reduce IO and facilitate compression. ByConity, on the other hand, uses column storage to ensure read and write performance, support transaction consistency, and is well-suited for large-scale data calculations.
Our Pledge
Notice:
Complex query execution model
Notice:
Document Type: Descriptive
The data types provided in ByConity are adapted from ClickHouse. Visit this page for more information on ClickHouse data types.
Tutorial goals:
Document Type: Tutorial
Notice:
This page demonstrates how to deploy a ByConity cluster in your Kubernetes cluster.
This page demonstrates how to deploy a ByConity cluster in your Kubernetes cluster.
The current way to deploy ByConity to physical servers is deployed via a docker wrapper.
ByConity can run on most mainstream commercial servers. We recommend that the deployment of ByConity can comply with the following requirements:
Notice:
Notice:
Document Type: Tutorial
In this guideline, I will set up a Foundation DB cluster on 3 physical machines. They are all using debian OS. I refer to two official guidelines here Getting Started on Linux and Building a Cluster.
ByConity provides two SQL dialects, (1) ClickHouse and (2) ANSI.
Notice:
ByConity is leverage the Github doing the developement. Each contributor and maintainer in ByConity must follow this workflow:
Notice:
Notice:
In this guide I will set up HDFS on 3 machine, 1 machine is for name node and other 2 machines is for data nodes. I refer to the following official document SingleCluster and ClusterSetup. I will install HDFS version 3.3.4 so I need java-8 because this is the recommended java version for this Hadoop
Besides creating tables in CnchHive engine to access external hive tablesl, Byconity also supports visit the external tables using external catalog.
CnchHive is a table engine provided by ByConity, which supports federated query in the form of external tables, and users can directly accelerate data query without importing data. CnchHive supports querying data on both HDFS and S3 Hive table.
Contributing to an open-source project like ByConity can be intimidating, but it can also be a rewarding experience.
Document Type: Tutorial
Currently CNCH supports the following import methods:
Notice:
This guide aims to provide information on how to become a member of the ByConity Technical Steering Committee (TSC).
Notice:
Notice:
This chapter will introduce the main principles of ByConity and it's query execution. ByConity's query execution process is shown in the figure below. First, ByConity will obtain the Metadata information required for the query through the Metadata service. Then ByConity will generate an efficient query plan through the optimizer according to the user's SQL, and schedule it to the corresponding calculation group to read the data and execute it. Finally, the result set is summarized and sent back to the Client.
map
Notice:
Prometheus Monitoring Indicators:
Notice:
MACNumToString
One way to deploy ByConity to physical machines is using package manager.
Preload feature will load data from remote to local disk cache to speed up the coming up queries. After preload is finished, the query will read data from the local disk, rather than the remote storage.
The optimizer is the core of the database system. An excellent optimizer can greatly improve query performance, especially in complex query scenarios. The optimizer can bring performance improvements of several to hundreds of times.
Notice:
ByConity uses a large number of mature OLAP technologies, such as column storage engine, MPP execution, intelligent query optimization, vectorized execution, Codegen, indexing, data compression, mainly used in OLAP query and computing scenarios. It has very good performance in real-time data access, aggregation query of large and wide tables, complex analysis and calculation under massive data, and multi-table associated query scenarios.
The Resource Manager (RM) component is used for unified management and scheduling of ByConity computing resources, and is the core component to achieve resource elasticity and improve resource utilization.
RBAC in Byconity is adapted from the ClickHouse version of RBAC in most aspects other than minor syntax differences and the underlying implementation which will be explained further below.
Environment Dependencies
The supported statements in ByConity are similar to ClickHouse, but it is still recommended to follow the ByConity manual to ensure proper use. Some of the examples below are referenced from ClickHouse Documentation but have been adapted and modified to work in ByConity.
Notice:
Transaction overview
Notice:
Notice:
Notice:
Document Type: Tutorial
ByConity supports the standard syntax of window functions. A list of window related features are explained below.