📄️ Start to deploy & debug a local cluster
This document explains how to start a WeSQL WeScale cluster on your local machine and begin debugging. We have made every effort to make this document intuitive and helpful for a successful deployment, but inevitably, you may encounter some corner cases that lead to failure. If you have any issues, please feel free to open an issue. We also welcome your help in improving the document if you are willing to do so.
📄️ Architecture of WeSQL WeScale
WeSQL WeScale is an open-source database proxy project designed to be highly compatible with MySQL and other MySQL-compatible databases like MariaDB. It supports the MySQL wire protocol, read-write splitting based on SQL parsing technology, read-after-write consistency, load balancing, and connection pooling.
📄️ Life of A Query
* From Client to VtGate
📄️ Read-Write-Split & LoadBalancer
WeSQL WeScale simplifies application logic by automatically routing read queries to read-only nodes and write queries to the read-write node. This is achieved by parsing and analyzing SQL statements, which improves load balancing and ensures efficient use of available resources.
📄️ Read-After-Write-Consistency
When an application writes data to the primary node and subsequently reads it on a read-only node, WeSQL WeScale makes sure that the data that was just written to the primary node can be accessed and read from the read-only node.
📄️ Transparent Failover
Failover is a feature designed to ensure that if the original database instance becomes unavailable, it is replaced with another instance and remains highly available. Various factors can trigger a failover event, including issues with the database instance or scheduled maintenance procedures like database upgrades.
📄️ Authentication & Authorization
This article discusses two issues: User Authentication and Authorization Management.
📄️ OnlineDDL User Guide
Introduction
📄️ Branch
The Branch feature is used to copy a database to another Wescale cluster or a local cluster. In a production environment, you can use Branch to create a database identical to the one in the development environment. This document will explain how to use the Branch function.Branch is an "umbrella" command. The action sub-command defines the operation on the workflow. Each action can have their own options.
📄️ Non-Transactional DML
Use Cases
📄️ Show Tablets Query Plans
Usage Scenario
📄️ Getting Started with Kubernetes
This article describes how to quickly launch a WeScale cluster in a Kubernetes cluster and outlines some basic cluster operations, such as modifying configurations, viewing logs, connecting to the cluster, and more.
📄️ Filters
Filter Pattern is commonly used in API Gateways to intercept and manipulate requests and responses.
📄️ Write a Wasm Plugin In WeScale
Most platform software provides a certain degree of extensibility. Just as MySQL allows users to write UDFs to extend functionality, WeScale also allows users to write Filters to achieve the same purpose. However, this is still not a very user-friendly way for most users because it requires them to compile and distribute their own code along with the code provided by the service provider.