Skip to content

Latest commit

 

History

History
109 lines (52 loc) · 5.21 KB

20230605_02.md

File metadata and controls

109 lines (52 loc) · 5.21 KB

开源AWS Aurora for PostgreSQL: neon , 存算分离,server less. program by RUST

作者

digoal

日期

2022-06-05

标签

PostgreSQL , PolarDB , aws aurora , neon , 存算分离 , PITR , rust , server less , 分支 , copy on write , cow


背景

https://neon.tech/

https://github.com/neondatabase/neon

https://zhuanlan.zhihu.com/p/624075600

开源AWS Aurora for PostgreSQL: neon

存算分离架构. server less, 面向开发者设计, RUST语言编写.

支持动态扩展计算节点、计算节点缩小至0节点, 存储支持冷热分离, 妙级新增实例.

非常适合SaaS业务场景.

neon 架构

https://neon.tech/docs/introduction/architecture-overview

A Neon installation consists of compute nodes and the Neon storage engine. Compute nodes are stateless PostgreSQL nodes backed by the Neon storage engine.

The Neon storage engine consists of two major components:

Pageserver. Scalable storage backend for the compute nodes.

Safekeepers. The safekeepers form a redundant WAL service that received WAL from the compute node, and stores it durably until it has been processed by the pageserver and uploaded to cloud storage.

See developer documentation in SUMMARY.md for more information.

https://github.com/neondatabase/neon/blob/main/docs/SUMMARY.md

特性

On-demand scalability 按需扩缩

We separated storage and compute to make on-demand scalability possible. Compute activates on an incoming connection and scales to zero when not in use.

Compute is fully client-compatible with Postgres because a Neon compute is Postgres.

Neon dynamically adjusts the allocation of compute resources based on workload.

Bottomless storage 无限存储

We designed our storage from the ground up as a fault tolerant scale-out system built for the cloud. It integrates with cloud object stores such as S3 to offload cold data for cost optimization. Our storage architecture ensures high availability, scale out, and unlimited capacity that we call "bottomless storage".

Neon storage uses the "copy-on-write" technique to deliver data branching, online checkpointing, and point-in-time restore. This eliminates expensive full-data backup and restore operations required with traditional database-as-a-service systems.

Our storage technology is open source and written in Rust.

Data branching 数据分支

Neon allows you to instantly branch your Postgres database to support modern development workflows. You can create branches for test environments and for every deployment in your CI/CD pipeline.

Branches are created using the "copy on write" technique, making them virtually free.

Reliable 可靠

Neon provides high availability without a maintenance burden or the need for expert advice.

Auto-backup 自动备份

Incremental auto-backup functionality ensures your data remains safe 24/7.

Open source 开源

Explore our GitHub repository where we publicly develop Neon under the Apache 2.0 license.

Perfect for SaaS 适合SaaS

SaaS companies use Neon to maximize engineering velocity and minimize costs. Our serverless architecture reduces compute and storage expenses. Specifically, Neon's autoscaling capabilities prevent over-provisioning and paying for under-utilized instances.

digoal's wechat