2020-10-08 11:17:36 +08:00
|
|
|
|
# 快速开始
|
|
|
|
|
|
|
|
|
|
本文档将帮助用户快速的将 FlashDB 在演示平台上使用起来,体验 FlashDB 的实际使用效果
|
|
|
|
|
|
|
|
|
|
## 基本概念
|
|
|
|
|
|
|
|
|
|
- **键值数据库(KVDB)**:是一种非关系数据库,它将数据存储为键值(Key-Value)对集合,其中键作为唯一标识符。KVDB 操作简洁,可扩展性强。
|
|
|
|
|
- **时序数据(TSDB)** :时间序列数据库 (Time Series Database , 简称 TSDB),它将数据按照 **时间顺序存储** 。TSDB 数据具有时间戳,数据存储量大,插入及查询性能高。
|
|
|
|
|
- **时序记录(TSL)** :TSL (Time series log),是 TSDB 中每条记录的简称。
|
|
|
|
|
- **Blob** :在计算机中,blob 常常是数据库中用来存储二进制文件的字段类型。在 FlashDB 中, KV 和 TSL 都使用 blob 类型来存储,该类型可以兼容任意变量类型。
|
|
|
|
|
- **迭代器(iterator)**:它可以让用户透过特定的接口巡访容器中的每一个元素,而不用了解底层的实现。 TSDB 和 KVDB 都支持通过迭代器对数据库进行遍历访问。
|
|
|
|
|
|
|
|
|
|
## 功能框图
|
|
|
|
|
|
|
|
|
|
通过下面的功能框图,可以大致了解 FlashDB 功能模块划分
|
|
|
|
|
|
|
|
|
|
![flashdb_framework](_media/flashdb_framework.png)
|
|
|
|
|
|
|
|
|
|
## 准备开发环境
|
|
|
|
|
|
|
|
|
|
使用前,需提前在 PC 上安装下面的开发软件
|
|
|
|
|
|
|
|
|
|
### 集成开发环境
|
|
|
|
|
|
|
|
|
|
FlashDB 提供的演示工程默认支持两种工程:
|
|
|
|
|
|
|
|
|
|
- **RT-Studio** :免费使用,支持中文,使用方便,下载地址:https://www.rt-thread.org/page/studio.html
|
|
|
|
|
- **Keil MDK** :需安装 MDK v5 版本的集成开发环境
|
|
|
|
|
|
|
|
|
|
### 串口工具
|
|
|
|
|
|
|
|
|
|
准备 `串口调试助手` 或 `串口终端工具` ,后续需要在查看运行日志时使用
|
|
|
|
|
|
|
|
|
|
## 获取源码
|
|
|
|
|
|
|
|
|
|
最新代码目前托管在 GitHub 及 Gitee ,master 分支为开发版本,推荐下载已发布的版本
|
|
|
|
|
|
|
|
|
|
- GitHub 下载:https://github.com/armink/FlashDB/releases
|
|
|
|
|
- Gitee 下载:https://gitee.com/armink/FlashDB/releases
|
|
|
|
|
|
|
|
|
|
## 选择演示平台
|
|
|
|
|
|
2021-01-03 23:09:23 +08:00
|
|
|
|
在项目的 `demos` 目录下,目前已提供下面一些演示平台,可以选择一个平台,真机体验一下 FlashDB 的运行过程。
|
2020-10-08 11:17:36 +08:00
|
|
|
|
|
|
|
|
|
更多详细介绍,点击下方表格中的 **使用说明** 进行查看。
|
|
|
|
|
|
2021-01-03 23:09:23 +08:00
|
|
|
|
| 硬件平台 | 路径 | 存储类型 | 使用说明 |
|
|
|
|
|
| --------------------- | :---------------------------- | :------------------ | ----------------------------------------------- |
|
|
|
|
|
| stm32f10x | `demos/stm32f103ve` | stm32 on-chip flash | [点击查看](zh-cn/demo-stm32f103ve.md) |
|
|
|
|
|
| stm32f40x | `demos/stm32f405rg` | stm32 on-chip flash | [点击查看](zh-cn/demo-stm32f405rg.md) |
|
|
|
|
|
| stm32f40x + spi flash | `demos/stm32f405rg_spi_flash` | spi flash | [点击查看](zh-cn/demo-stm32f405rg-spi-flash.md) |
|
|
|
|
|
| esp8266 + spi flash | `demos/esp8266_spi_flash` | spi flash | [点击查看](zh-cn/demo-esp8266-spi-flash.md) |
|
|
|
|
|
| linux | `demos/linux` | posix file | [点击查看](zh-cn/demo-linux.md) |
|
2020-10-08 11:17:36 +08:00
|
|
|
|
|
|
|
|
|
## 查看示例说明
|
|
|
|
|
|
|
|
|
|
如果上面没有合适自己的演示平台,也可以先查看一下感兴趣的示例说明。
|
|
|
|
|
|
|
|
|
|
| 示例文件 | 说明 | 详解 |
|
|
|
|
|
| ----------------------------------- | ------------------ | ----------------------------------------- |
|
|
|
|
|
| `samples/kvdb_basic_sample.c` | KVDB 基础示例 | [点击查看](zh-cn/sample-kvdb-basic) |
|
|
|
|
|
| `samples/kvdb_type_string_sample.c` | 字符串类型 KV 示例 | [点击查看](zh-cn/sample-kvdb-type-string) |
|
|
|
|
|
| `samples/kvdb_type_blob_sample.c` | blob 类型 KV 示例 | [点击查看](zh-cn/sample-kvdb-type-blob) |
|
|
|
|
|
| `samples/tsdb_sample.c` | TSDB 基础示例 | [点击查看](zh-cn/sample-tsdb-basic) |
|
|
|
|
|
|