下一代查询语言的图形关系数据库edgedb

下一代查询语言的图形关系数据库edgedb

Edgedb是一款开源的对象关系映射数据库(ORM),用于替代传统的SQL数据库。它具有以下主要特征:

800_auto

1. 基于图形模型,而非表结构。Edgedb使用图形数据模型,节点表示实体,边表示关系。这比表结构模型更灵活和强大。

2. 支持丰富的数据类型。Edgedb支持字符串、布尔、整数、浮点数、日期时间、durations、JSON等多种数据类型。

3. 基于树形的查询语言EdgeQL。Edgedb使用自己的查询语言EdgeQL而不是SQL,EdgeQL基于树形结构,更容易理解和使用。

4. 支持ACID事务和MVCC并发控制。Edgedb支持强一致性事务和多版本并发控制,保证数据安全和一致性。

5. 自动迁移和升级。Edgedb可以根据代码模型自动迁移数据库模式,简化使用难度。

6. 具有强大的管理特性。Edgedb集成了用户管理、权限控制、审计跟踪等管理功能。

7. 开源且跨平台。Edgedb是采用Apache 2.0许可的开源软件,支持Linux、macOS和Windows系统。

Edgedb的典型用法如下:

1. 创建项目并安装Edgedb:

edb project init myproject

cd myproject

edb install

2. 定义数据模型:在`schema.esdl`文件中定义实体、关系、属性等。例如:

abstract User {
	required property name -> str;
}

type UserEmail extends User {
	required property email -> str;
}

3. 初始化数据库模式:

edb migrate

4. 创建数据:
insert UserEmail {
	name := 'John',
	email := 'john@example.com'
}
5. 执行查询:
select * from UserEmail;

所以,Edgedb作为一款新...

点击查看剩余70%

{{collectdata}}

网友评论