FlashDB/docs/zh-cn/quick-started.md

66 lines
3.8 KiB
Markdown
Raw Normal View History

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) |