键值数据库 IonDB

简介:

IonDB 详细介绍

IonDB 专为 Arduino 和 IoT 提供开箱即用的,基于磁盘的快速存储功能,为受限系统提供键值存储功能,速度非常快,可以充分提升 Arduino 的性能。

这个项目是英国哥伦比亚的奥肯那根大学 Ramon Lawrence 博士指导项目的一部分,由 Lawrence 博士的分布式数据实验室支持。还有另外一个类似的项目,也是专为嵌入式设备和传感器节点设计的关系型数据库 LittleD。

一般情况下,IonDB 支持:

存储一个键的任意值

重复键支持

范围和等值查询

基于硬盘的持久化数据存储

示例:

#include <SD.h>
#include "dictionary.h"
#include "slhandler.h"
void setup() {
    //Declare the dictionary and handler structs
    dictionary_handler_t    handler;
    dictionary_t            dictionary;
    //Initialize handler
    sldict_init(&handler);
    //Create dictionary: Given handler, dictionary, key type, key size, value size, dict size
    dictionary_create(&handler, &dictionary, key_type_numeric_signed, sizeof(int), 60, 10);
    ion_key_t   key = IONIZE(42);
    ion_value_t value = (ion_value_t) "Hello IonDB";
    dictionary_insert(&dictionary, key, value);
    ion_value_t returned_value = (ion_value_t) malloc(60); //from value_size
    dictionary_get(&dictionary, key, returned_value);
    printf("Returned %s\n", returned_value);
    free(returned_value);
}
void loop() {}

文章转载自 开源中国社区[https://www.oschina.net]

相关文章
|
存储 消息中间件 缓存
键值(key-value)数据库
【4月更文挑战第9天】键值数据库(NoSQL)以键值对形式存储数据,简单灵活,适合任意类型数据。其特点是高性能、高可扩展性,常见应用包括缓存、会话管理、分布式锁、计数统计、配置管理和轻量级消息队列。然而,它不适用于结构化信息存储和复杂查询,选择时需考虑应用场景。
2803 5
|
NoSQL 关系型数据库 Go
更新Navicat Premium 16.2 之 如何使用Navicat连接Redis的新手教程《更新Navicat Premium 16.2并连接Redis:高效管理数据库和键值存储》
更新Navicat Premium 16.2 之 如何使用Navicat连接Redis的新手教程《更新Navicat Premium 16.2并连接Redis:高效管理数据库和键值存储》
2278 0
更新Navicat Premium 16.2 之 如何使用Navicat连接Redis的新手教程《更新Navicat Premium 16.2并连接Redis:高效管理数据库和键值存储》
|
缓存 NoSQL 算法
Redis数据库的键值过期和删除机制
我们需要注意的是,虽然Redis提供了这么多高级的缓存机制,但在使用过程中,必须理解应用的特性,选择合适的缓存策略,才能最大化Redis的性能。因此,在设计和实施应用程序时,理解应用的数据访问模式,以及这些模式如何与Redis的缓存机制相互作用,尤为重要。
456 24
|
存储 前端开发 关系型数据库
鸿蒙开发:实现键值数据库存储
对于数据量比较的小的,我们直接选择轻量级的用户首选项方式即可,而对于数据量比较大的情况下,直接可以使用数据库,而对于相对来说,比较大的数据,我们就可以使用键值型数据库方式
462 2
|
存储 NoSQL 数据库
请解释一下键值存储数据库的工作原理,并提供一个使用键值存储数据库的实际应用场景。
请解释一下键值存储数据库的工作原理,并提供一个使用键值存储数据库的实际应用场景。
505 0
|
存储 关系型数据库 MySQL
|
NoSQL 数据库 Redis
05_NoSQL数据库之Redis数据库:Redis的常用命令,键值相关命令和服务器相关命令
 Redis常用命令 Redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以再Linux终端使用。   键值相关命令: Keys:返回满足给定pattern的所有key 用表达式*表示取出所有的key 127.0.0.1:6379&gt; keys * 1) "age" 2) "n
1505 0
|
SQL 关系型数据库 数据库
不同数据库获取新增加的主键值
获取不同数据库新增记录主键值   数据库  获取新增主键值的SQL语句 DB2 INENTIY_VAL_LOCAL() Informix SELECT dbinfo('sqlca.
1133 0
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
709 158

热门文章

最新文章