一飞开源,介绍创意、新奇、有趣、实用的免费开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
FlashDB 是一款超轻量级的嵌入式数据库,专注于提供嵌入式产品的数据存储方案。与传统的基于文件系统的数据库不同,FlashDB 结合了 Flash 的特性,具有较强的性能及可靠性。并在保证极低的资源占用前提下,尽可能延长 Flash 使用寿命。
FlashDB 提供两种数据库模式:
使用Apache-2.0开源协议
如今,物联网产品种类越来越多,运行时产生的数据种类及总量及也在不断变大。FlashDB 提供了多样化的数据存储方案,不仅资源占用小,并且存储容量大,非常适合用于物联网产品。下面是主要应用场景:
msh />tsl bench
Append 1250 TSL in 5 seconds, average: 250.00 tsl/S, 4.00 ms/per
Query total spent 2218 (ms) for 1251 TSL, min 1, max 2, average: 1.77 ms/per
插入平均:4 ms,查询平均:1.8 ms
msh />tsl bench
Append 13421 TSL in 5 seconds, average: 2684.20 tsl/S, 0.37 ms/per
Query total spent 1475 (ms) for 13422 TSL, min 0, max 1, average: 0.11 ms/per
插入平均:0.37 ms,查询平均:0.12 ms
Module ro code ro data rw data
------ ------- ------- -------
fdb.o 276 232 1
fdb_kvdb.o 4 584 356 1
fdb_tsdb.o 1 160 236
fdb_utils.o 418 1 024
上面是 IAR 的 map 文件信息,可见 FlashDB 的资源占用非常低
通过下面的功能框图,可以大致了解 FlashDB 功能模块划分
使用前,需提前在 PC 上安装下面的开发软件
FlashDB 提供的演示工程默认支持两种工程:
准备 串口调试助手 或 串口终端工具 ,后续需要在查看运行日志时使用
访问一飞开源:https://code.exmay.com/
在项目的 demos 目录下,目前已提供下面一些演示平台,可以选择一个平台,真机体验一下 FlashDB 的运行过程。
更多详细介绍,点击下方表格中的 使用说明 进行查看。
硬件平台 | 路径 | 存储类型 |
stm32f10x | demos/stm32f103ve | stm32 on-chip flash |
stm32f40x | demos/stm32f405rg | stm32 on-chip flash |
stm32f40x + spi flash | demos/stm32f405rg_spi_flash | spi flash |
esp8266 + spi flash | demos/esp8266_spi_flash | spi flash |
linux | demos/linux | posix file |
如果上面没有合适自己的演示平台,也可以先查看一下感兴趣的示例说明。
示例文件 | 说明 |
samples/kvdb_basic_sample.c | KVDB 基础示例 |
samples/kvdb_type_string_sample.c | 字符串类型 KV 示例 |
samples/kvdb_type_blob_sample.c | blob 类型 KV 示例 |
samples/tsdb_sample.c | TSDB 基础示例 |
访问一飞开源:https://code.exmay.com/
留言与评论(共有 0 条评论) “” |