#互联网计算机 #sqlite # #SDK #数据库

ic-sqlite

ICSQLite 是互联网计算机上的云 SQLite 数据库,为开发者提供 SDK 以使用。

1 个不稳定版本

0.1.0 2023年1月17日

#86#互联网计算机

每月 43 次下载

MIT/Apache

215KB
226 代码行

ICSQLite

ICSQLite 是互联网计算机上的云 SQLite 数据库,为开发者提供 SDK 以使用。
我们的目标是帮助开发者快速将 web2 应用迁移到互联网计算机。

使用方法

在您的 Cargo.toml 中

[dependencies]
ic-sqlite = "0.1.0"

限制和建议 & 建议

调用总周期数限制,如果单个 SQL 查询检索的行数超过一定数量,调用将崩溃。

SQL 语句建议

  • 严格遵循数据库优化的规则
  • 索引构建必须在空表中完成
  • WHERE 查询必须针对主键或索引字段进行过滤
  • 尽量少使用 NOT,!=,<>,!<,!> NOT EXISTS, NOT IN, NOT LIKE, OR,否则将忽略索引并导致全表扫描

SQL 命令性能基准

SQL
命令
性能计数器
1w 单表数据
性能计数器
10w 单表数据
性能计数器
50w 单表数据
性能计数器
100w 单表数据
创建表 1194347 1433766 2565609 4066020
创建索引
(空表)
884588 1122419 2241730 3601724
计数 209847 2995943 15183853 30392494
插入 350256 349635 351731 355381
选择
(WHERE 主键)
265363 265960 265345 268112
选择
(WHERE 索引字段)
312389 314594 314666 319276
选择
(WHERE LIKE 字段)
178263088 1784671532 单条消息执行限制 单条消息执行限制
更新
(WHERE 主键)
385492 389192 391599 394111
更新
(WHERE 索引字段)
239384 237908 237993 240998
删除
(WHERE 主键)
429190 259541 419615 423064

IC Canister 简单示例使用

依赖项

~26–36MB
~559K SLoC