标签: embedded-database

最佳嵌入式SQL DB的写入性能?

有没有人对流行的开源嵌入式SQL数据库进行任何基准测试/评估以获得性能,特别是写性能?我对sqlite,Firebird Embedded,Derby和HSQLDB(其他我缺少的?)进行了1:1的比较,但没有全面的比较......另外,我对这些中的任何一个开发人员的整体体验感兴趣(对于Java应用程序).

java database sqlite firebird embedded-database

5
推荐指数
2
解决办法
4975
查看次数

是否可以在 Web 应用程序中嵌入数据库?

是否可以在小型 Web 应用程序中嵌入数据库?我需要的是不需要在服务器计算机上安装任何数据库。只需在文件夹中添加一个 jar 即可使数据库正常工作。

我使用 Java EE 和 Netbeans 作为我的 IDE。如果可以的话,可以嵌入哪些开源数据库。

任何指向一些好的教程的指示都会更有帮助。

java netbeans embedded-database

5
推荐指数
2
解决办法
2762
查看次数

Web应用程序中嵌入式Derby的JDBC连接URL

我有一个与我的webapp一起部署到WEB-INF/classes/myDb的derby数据库

我的jdbc.connection url应该连接什么才能写入数据库?

我在尝试

jdbc:derby:myDb;
Run Code Online (Sandbox Code Playgroud)

它找不到数据库.我需要能够修改数据库.如果我把classpath:myDb,它找到了它,但不幸的是只读取了derby docs.

java web-applications jdbc derby embedded-database

5
推荐指数
1
解决办法
1865
查看次数

具有许可免费软件许可证的非关系嵌入式数据库?

非常感谢您花时间看我的问题.

(我知道这个问题非关系数据库的C++,但我的需求有点不同,它只有一个答案.)

我正在开发一个商业C++库,除其他外,它必须保留消息.我想通过编写自己的DBMS来避免重新发明轮子.不幸的是,我有以下限制标准:

  1. 它必须可以从C++中使用 - 我正在编写一个C++库.如果使它们工作的努力程度不是太高,那么绑定是可能可接受的.
  2. 我需要一个嵌入式数据库.独立无效.
  3. 我想避免使用关系数据库.除了对性能开销的担忧之外,作为不鼓励关系数据库的开发人员,还有我无法控制的技术政治.
  4. 我需要一个宽松的免费软件许可证.购买许可证很难,但客户不想让他的消息来源.
  5. 我想要一个已经建立的解决方案(至少有一段时间,超出实验阶段,已被多个项目使用).

遗憾的是,由于上述原因,这两个选择不起作用:-SQLite是关系型的-BerkeleyDB是GPL或商业

再次感谢您的帮助.

c++ database berkeley-db embedded-database

5
推荐指数
1
解决办法
1096
查看次数

Mongoid:嵌入式文档在父级构造时自动初始化

有没有办法让嵌入式文档在mongoid中自动初始化?我的意思是给用户嵌入车库文件.我必须编写以下代码来完全设置带有车库的用户:

user = User.create!(name: "John")
user.build_garage
user.garage.cars << Car.create!(name: "Bessy")
Run Code Online (Sandbox Code Playgroud)

有没有办法可以跳过电话user.build_garage

谢谢

initialization ruby-on-rails embedded-database mongodb mongoid

5
推荐指数
2
解决办法
2059
查看次数

适用于Android和iOS的无服务器嵌入式noSQL

我正在为(主要)Android和iOS搜索无服务器的嵌入式noSQL文档存储数据库.
为简化起见,我需要一个基于SQLite的文档:P

MongoDB很棒,并且有很多驱动程序,但它需要一台服务器......
也许它的精简版可能很好......

android embedded-database nosql ios document-store

5
推荐指数
1
解决办法
1726
查看次数

Spring + Hibernate + H2嵌入式数据库.如何保存数据?

我是嵌入式数据库的新手,但我至少运行它.令我困惑的是我的数据没有在运行之间保存.我的意思是测试不是很好吗?每次运行应用程序时,我都不想将数据添加到我的数据库中

所以我搜索了一种方法来做到这一点,我发现我将配置一个hibernate连接URL,我尝试这样做

props.put("hibernate.connection.url", "jdbc:h2:~/test");
Run Code Online (Sandbox Code Playgroud)

在我的HibernateConfiguration.java中.虽然没有成功,但没有错误但也没有保存,我没有找到应该从该URL创建的测试文件.(运行Windows并检查我的用户文件夹)

我也看到它可以像这样做

<jdbc:embedded-database id="dataSource" type="H2">
    <jdbc:script location="classpath:db-schema.sql"/>
    <jdbc:script location="classpath:db-test-data.sql"/>
</jdbc:embedded-database>
Run Code Online (Sandbox Code Playgroud)

并且每次运行应用程序时都执行脚本,但问题是我希望hibernate处理所有表的创建等.

这通常是怎么做的?

我现在搜索了几个小时,但还没有得到它.

PS.如果需要我会发布我的所有配置.

编辑: 更新了我的问题以包含对一个问题的关注并包括我的配置.

HibernateConfiguration.java包com.courseinfo.project;

import java.util.Properties;

import javax.sql.DataSource;

import org.hibernate.dialect.H2Dialect;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.orm.hibernate3.HibernateTransactionManager;
import org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean;

import com.courseinfo.project.model.Course;

@Configuration
public class HibernateConfiguration {

    @Value("#{dataSource}")
    private DataSource dataSource;

    @Bean
    public AnnotationSessionFactoryBean sessionFactoryBean() {
        Properties props = new Properties();
        props.put("hibernate.dialect", H2Dialect.class.getName());
        props.put("hibernate.format_sql", "true");
        props.put("hibernate.connection.url", "jdbc:h2:~/test");

        AnnotationSessionFactoryBean bean = new AnnotationSessionFactoryBean();
        bean.setAnnotatedClasses(new Class[]{Course.class});        
        bean.setHibernateProperties(props);
        bean.setDataSource(this.dataSource);
        bean.setSchemaUpdate(true);
        return bean;
    }

    @Bean
    public HibernateTransactionManager …
Run Code Online (Sandbox Code Playgroud)

spring hibernate spring-mvc h2 embedded-database

5
推荐指数
1
解决办法
7357
查看次数

NodeJS 的嵌入式存储替代方案

我需要为nodejs应用程序实现一个简单的键值存储,由于某些环境限制我只能使用嵌入式存储解决方案,这意味着我不能使用作为单独的服务器/进程工作的引擎(例如Mongodb,mysql等)。

对于某些公司限制,我无法使用sqlite,这是我想到的第一个选择。

我研究了以下 sqlite 的替代方案:

我没有任何使用这些引擎的经验,有人可以提供有关这些引擎的注释或建议吗?当然,我非常欢迎任何其他可供选择的选择。

编辑:

经过进一步调查我发现

看起来更适合 Nodejs。

database sqlite embedded-database node.js

5
推荐指数
1
解决办法
8381
查看次数

通过嵌入式 dll 从多个应用程序连接到一个 firebird 数据库

我对数据库编程比较陌生。我将 firebird 2.5 与 IBPP 一起使用。我至少有两个应用程序使用 sampe firebird 数据库。我想连接嵌入式变体(fbembedded.dll、icudt30.dll、icuc30.dll),因为它将成为客户 PC 上的主机应用程序。我写了一个简单的测试应用,从数据库中读取数据,同时启动这个应用3次。一切正常。

但是现在我不确定这是否总是有效,以及是否稳定运行而不会损坏数据。因为当我使用查看器 ibexpert 与数据库建立连接时,我的测试应用程序无法连接到数据库。此外,文档 sais ( firebirdEmbedded ):

您可以同时运行多个嵌入式服务器,也可以将多个应用程序连接到同一个嵌入式服务器。拥有一个已经在运行的常规服务器也不是问题。 但是,嵌入式服务器在成功连接后会锁定数据库文件以供其独占使用。这意味着您不能同时从多个嵌入式服务器进程(或从任何其他服务器,一旦嵌入式服务器锁定文件)访问同一个数据库。

文档对吗?我的示例应用程序似乎相反。不久前我在我的电脑上安装了一个 firebird 超级服务器,但在测试之前卸载了它。

database firebird embedded-database firebird-embedded

5
推荐指数
1
解决办法
4289
查看次数

使用 Mongodb 版本 4 和副本配置 flapdoodle 嵌入式 mongo

我目前正在开发 Spring Boot 应用程序 2.0.3.RELEASE。我想用 MongoDb 4.0 版配置 Flapdoodle MongoDb,我还想设置一个 mongo 实例并为其创建副本。

到目前为止,我还没有弄清楚使用fladdoodle创建集群和副本的过程。

我在用

         MongodConfigBuilder().version(Version.Main.DEVELOPMENT)
        .replication(new Storage(null, null, 0))
        .build();
Run Code Online (Sandbox Code Playgroud)

我在这里阅读了许多与此配置相关的问题,但没有一个与我的问题有关。eg 如何配置两个实例mongodb 使用spring boot 和spring data

fladdoodle 配置对此有一个实现,但我不确定如何访问它。

https://github.com/flapdoodle-oss/de.flapdoodle.embed.mongo/blob/master/src/main/java/de/flapdoodle/embed/mongo/tests/MongosSystemForTestFactory.java

在应用程序启动之前,有什么方法可以在我的测试类中配置它。谢谢

java spring embedded-database spring-boot spring-mongodb

5
推荐指数
1
解决办法
4203
查看次数