0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Neon--AWS Aurora Postgres的无服务器开源替代品

jf_wN0SrCdH 来源:Rust语言中文社区 2023-08-21 10:46 次阅读

Neon -- AWS Aurora Postgres 的无服务器开源替代品

简介

Neon 是 AWS Aurora Postgres 的无服务器开源替代品。它将存储和计算分开,并通过跨节点集群重新分布数据来替代 PostgreSQL 存储层。 尝试使用 Neon免费套餐创建无服务器 Postgres 实例。然后使用您首选的 Postgres 客户端(psql、dbeaver 等)连接到它或使用在线 SQL 编辑器。有关连接说明,请参阅从任何应用程序连接。或者,在本地编译并运行该项目。

架构概述

Neon 由计算节点和 Neon 存储引擎组成。计算节点是由 Neon 存储引擎支持的无状态 PostgreSQL 节点。

Neon 存储引擎由两个主要组件组成: Pageserver - 计算节点的可扩展存储后端。 Safekeepers - Safekeepers 形成一个冗余的 WAL 服务,从计算节点接收 WAL,并将其持久存储,直到它被 Pageserver 处理并上传到云存储。

167b7488-3ea7-11ee-ac96-dac502259ad0.png

  • https://github.com/neondatabase/neon


Rusqlite 使用 Rust 的 SQLite 包装器


Rusqlite 是一个使用 Rust 的 SQLite 的符合人体工程学的包装器。从历史上看,该 API 是基于 rust-postgres. 然而,两者在很多方面存在分歧,并且两者之间不存在兼容性。


使用


在您的 Cargo.toml 中:

	
		[dependencies] # `bundled` causes us to automatically compile and link in an up to date # version of SQLite for you. This avoids many common build issues, and # avoids depending on the version of SQLite on the users system (or your # system), which may be old or missing. It's the right choice for most # programs that control their own SQLite databases. # # That said, it's not ideal for all scenarios and in particular, generic # libraries built around `rusqlite` should probably not enable it, which # is why it is not a default feature -- it could become hard to disable. rusqlite = { version = "0.29.0", features = ["bundled"] }


简单示例用法:


	use rusqlite::{Connection, Result}; #[derive(Debug)] struct Person { id: i32, name: String, data: Option<Vec<u8>>, } fn main() -> Result<()> { let conn = Connection::open_in_memory()?; conn.execute( "CREATE TABLE person ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, data BLOB )", (), // empty list of parameters. )?; let me = Person { id: 0, name: "Steven".to_string(), data: None, }; conn.execute( "INSERT INTO person (name, data) VALUES (?1, ?2)", (&me.name, &me.data), )?; let mut stmt = conn.prepare("SELECT id, name, data FROM person")?; let person_iter = stmt.query_map([], |row| { Ok(Person { id: row.get(0)?, name: row.get(1)?, data: row.get(2)?, }) })?; for person in person_iter { println!("Found person {:?}", person.unwrap()); } Ok(()) }


支持的 SQLite 版本


基础 rusqlite 包支持 SQLite 版本 3.14.0 或更高版本。如果您需要旧版本的支持,请提出问题。一些货物功能需要更新的 SQLite 版本;请参阅下面的详细信息
审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    8120

    浏览量

    82522
  • 编辑器
    +关注

    关注

    1

    文章

    788

    浏览量

    30199
  • AWS
    AWS
    +关注

    关注

    0

    文章

    393

    浏览量

    23931
  • Rust
    +关注

    关注

    1

    文章

    223

    浏览量

    6387

原文标题:【Rust日报】2023-08-16 Neon 基于 rust 的 AWS Aurora Postgres 的无服务器开源替代品

文章出处:【微信号:Rust语言中文社区,微信公众号:Rust语言中文社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    寻找松下TX2-12V的替代品

    松下的效益不行了,要搬场,继电器要涨价,求替代品。哪位大侠可以帮助一下。谢谢。原来用的型号是TX2-12V。附件中是他的数据手册。
    发表于 11-17 11:42

    MMBFJ176替代品??

    如题,需要寻找一个MMBFJ176替代品,用于保证电化学检测在断电的情况下两端电位不会偏差太大。附件为MMBFJ176规格书,望大神回复下,谢谢!
    发表于 07-21 08:33

    100%铅,TPS53355的绿色替代品1V/34A同步降压转换

    描述PMP10770 整合了 TPS53219A 和 CSD87384M,二者是 TPS53355 30A 直流/直流转换的绿色替代品,100% 不含铅。该设计适合 10V-14V 输入电压、1V
    发表于 11-12 17:10

    请问仪表放大器AD624有没有便宜的完全兼容的替代品

    仪表放大器AD624有没有便宜的完全兼容的替代品?市场上这个芯片有点贵,还不太好买到,想找兼容替代品,性能稍低点也可以,能满足要求就行,求大神推荐,谢谢。
    发表于 01-23 09:27

    是否有TDA2003的替代品

    是否有TDA2003的替代品,或者任何人都可以推荐类似的音频放大器,可以驱动低至1欧姆的负载? #TDA2003
    发表于 08-05 10:19

    如何使用ISP1763作为替代品

    已经过时,ST-Ericson提供的下一个系列是ISP1763。 ISP1760采用128引脚配置,具有16地址线和32数据线。但新的ISP1763只是64引脚,有8个地址和32个数据引脚。我们如何使用ISP1763作为替代品?这有什么替代方案吗?-谢谢
    发表于 09-04 07:00

    求XCS20XL-4PQ208C的替代品

    嗨,我为Northrop Grumman工作并支持邮政服务。我正在寻找XCS20XL-4PQ208C的替代品,因为我们无法在任何地方找到它们。谢谢你的帮助。
    发表于 05-13 07:00

    Commodore 6540 ROM的替代品

    的 6540 ROM 芯片组的直接替代品。我发现 D'Asaro 项目非常好且紧凑,但更难构建。此外,他仅以 PCBexpress 格式发布该项目,无法将其导出到 Gerber。由于
    发表于 09-02 07:26

    MC908JL3ECDWE的替代品是什么?

    我正在寻找 8 位 MCU MC908JL3ECDWE 的替代品,因为不建议将其用于新设计(已过时)。为了最大限度地减少工作量,我们希望减少对 28 引脚 SOIC 封装的替换和简单的代码更改
    发表于 06-05 06:17

    AWS发布新一代Amazon Aurora Serverless

    。同时,AWS还发布了一个新的开源项目,帮助更多组织从传统数据库迁移到开源替代方案。对于不想处理自助数据库繁杂工作的客户,Amazon Aurora
    的头像 发表于 12-03 10:38 1698次阅读

    AWS服务器平台

      AWS服务器计算服务支持在 AWS 云上构建和部署应用程序,而无需管理服务器AWS
    的头像 发表于 10-20 17:54 1046次阅读

    AWS上实施无服务器服务架构

    我们之前关于 AWS服务器平台的文章讨论了无服务器多层架构的基本原理和优势。在本文中,我们将解释企业如何使用AWS 云实施无服务器
    的头像 发表于 11-30 15:38 718次阅读
    在<b class='flag-5'>AWS</b>上实施无<b class='flag-5'>服务器</b>微<b class='flag-5'>服务</b>架构

    AWS服务器平台

      AWS服务器计算服务支持在 AWS 云上构建和部署应用程序,而无需管理服务器AWS
    的头像 发表于 11-30 16:30 588次阅读

    AWS服务器平台

      AWS服务器计算服务允许在 AWS 云上构建和部署应用程序,而无需管理服务器AWS
    的头像 发表于 12-08 15:48 498次阅读

    Rust编写的首个Postgres基础Elasticsearch开源替代品问世

    PostgreSQL 的生态确实越来越繁荣了,在基于 PG 的扩展与衍生中,我们已经有了基于 MongoDB 开源替代 —— FerretDB,SQL Server 开源替代 Babe
    的头像 发表于 02-22 11:34 293次阅读
    Rust编写的首个<b class='flag-5'>Postgres</b>基础Elasticsearch<b class='flag-5'>开源</b><b class='flag-5'>替代品</b>问世