Infinitree 是具有 3 层缓存的可扩展和加密嵌入式数据库,使用 Rust 编写。
主要特性
Iterator
特征查询而无需完全加载的版本化数据结构使用示例
use infinitree::{
Infinitree,
Index,
Key,
anyhow,
backends::Directory,
fields::{Serialized, VersionedMap, LocalField},
};
use serde::{Serialize, Deserialize};
#[derive(Serialize, Deserialize)]
pub struct PlantHealth {
id: usize,
air_humidity: usize,
soil_humidity: usize,
temperature: f32
}
#[derive(Index, Default, Clone)]
pub struct Measurements {
// rename the field when serializing
#[infinitree(name = "last_time")]
_old_last_time: Serialized<String>,
#[infinitree(name = "last_time2")]
last_time: Serialized<usize>,
// only store the keys in the index, not the values
#[infinitree(strategy = "infinitree::fields::SparseField")]
measurements: VersionedMap<usize, PlantHealth>,
// skip the next field when loading & serializing
#[infinitree(skip)]
current_time: usize,
}
fn main() -> anyhow::Result<()> {
let mut tree = Infinitree::<Measurements>::empty(
Directory::new("/storage")?,
Key::from_credentials("username", "password")?
);
tree.index().measurements.insert(1, PlantHealth {
id: 0,
air_humidity: 50,
soil_humidity: 60,
temperature: 23.3,
});
*tree.index().last_time.write() = 1;
tree.commit("first measurement! yay!");
Ok(())
}
infinitree - 嵌入式加密数据库 Infinitree 是一个嵌入式加密数据库。 默认线程安全 透明地处理热/温/冷存储层;目前支持 S3 兼容的后端 可以使用Iterator trait查询,无需完全加载的版本化数据结构 加密所有磁盘数据,仅在使用时解密 专注于性能和灵活 可扩展的自定义数据类型和存储策略 ReadMore:https://github.com/symmetree-la
我正在构建一个将使用neo4j的web应用程序。我将在Java构建一个REST API,它将使用Neo4j嵌入式版本。这个架构有什么问题吗? 用别的方法好吗?Neo4j服务器? 谢谢!
我有一个Spring Boot和嵌入式Mongo DB的项目,我也想查找存储在那里的数据。我学习了本教程https://springframework.guru/spring-boot-with-embedd-mongoDB/
问题内容: 我打算开发一个小型(Java)应用程序来管理我的财务。我相信我需要使用嵌入式数据库,但是我没有关于此问题的经验。我试图查看一些可用的产品,但是我无法确定哪种产品更适合我。H2,HSQLDB,Derby和Berkeley DB似乎是不错的候选者,但是我仍然看不到它们之间的比较。感谢您的比较,并帮助我决定使用哪个。 我打算将Hibernate用于我的应用程序(除非您建议使用DBMS提供的A
我用RSA加密来加密C#中的一些数据。现在我想用Java解密加密的数据。但是我遇到了一些问题。 主要问题可能是将加密消息从c#获取到java。在c#中,我们有无符号字节,字节序是不同的 因此,为了进行测试,我将c#中加密数据的数组转换为数组并获得它的字符串表示形式。然后我将字节数组的字符串表示形式复制到我的java代码中并将其转换回“字节”数组。之后,我反转数组以匹配java的endianess。
问题内容: 我正在寻找可以用于使用Qt开发的应用程序的良好嵌入式数据库。这些应用程序针对来自一家大型公司的各个站点的桌面用户。该数据库应能够在每个站点分别存储数据,并且该数据应在需要时与其他站点合并。 问题答案: 除了SQLite,以下任何一项都可以与Qt一起用作嵌入式数据库。Qt已经拥有大多数驱动程序,您可以找到其他驱动程序。在“与其他站点”合并数据方面,这完全取决于您的意思。用于SQLite和
我对neo4j很陌生,我想创建一个应用程序。 在远程服务器模式下,似乎只有RESTAPI可以用于连接neo4j。所以我决定使用嵌入式数据库,因为我想使用neo4j提供的JAVA API。 本教程中有一个创建连接的示例: 似乎每次我运行这段代码时,它都会创建一个新的数据库实例,所有现有的数据都会被覆盖。 但是数据需要保存,我不会在代码中将所有数据导入数据库... 如何解决这个问题?我需要的是连接到数