标签: in-memory-database

PDO:无法在内存中创建SQLite数据库

尝试学习一些关于PDO的知识并正在学习本教程.它有以下代码片段:

<?php

try
{
    $db = new PDO('sqlite::memory');
    echo "SQLite created in memory.";

}
catch(PDOException $e)
{
    echo $e->getMessage();
}
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我收到以下异常消息:

SQLSTATE [HY000] [14]无法打开数据库文件

那是什么意思?我怎样才能让它发挥作用?我能够连接到MySQL数据库和常规SQLite数据库文件.所以我知道至少有些东西在起作用......

我在Windows 7 64位上使用Apache 2.2.11和PHP 5.3.0(最新的WampServer安装).phpinfo()报告我启用了SQLite Library 3.6.15的pdo_sqlite.

php sqlite pdo in-memory-database

25
推荐指数
1
解决办法
8675
查看次数

为什么有人需要内存数据库?

我读到一些数据库可以在内存中使用,但无法想到有人想要使用此功能的原因.我总是使用数据库来保存数据和内存缓存以便快速访问.

database in-memory-database

24
推荐指数
2
解决办法
8338
查看次数

Python中的内存数据库

我在Python上对大型数据库进行一些查询,以从数据库中获取一些统计信息.我希望这些统计数据在内存中,以便其他程序可以使用它们而无需访问数据库.

我正在考虑如何构造它们,并且在尝试设置一些复杂的嵌套字典之后,我意识到一个好的表示形式将是一个SQL表.但是,我不想将数据存储回持久数据库.是否有支持使用SQL语法查询数据的SQL数据库的内存实现?

python sql database in-memory-database

23
推荐指数
2
解决办法
2万
查看次数

实体框架4的内存数据库

有没有人知道一个适用于.NET 4/EF 4的良好内存数据库?具体来说,我正在考虑单元测试,这样每个设置都可以轻松创建数据库,并使用默认值填充它,每次拆卸都可以快速破坏它.

我听说SQLite 还不支持.NET 4,其他人在使用它作为SQLServer的替代品时遇到了麻烦(这是应用程序将在发布模式下运行的).

在过去,我使用了DevExpress XPO ORM,它有一个内置的内存数据库,可以很好地进行单元测试.

.net-4.0 in-memory-database entity-framework-4

20
推荐指数
2
解决办法
5802
查看次数

ubuntu14.04中的redis-server:绑定地址已在使用中

我在ubuntu上启动了redis服务器,方法是在终端上输入:$ redis-server

这导致以下> http://paste.ubuntu.com/12688632/

aruns ~ $ redis-server
27851:C 05 Oct 15:16:17.955 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
27851:M 05 Oct 15:16:17.957 # You requested maxclients of 10000 requiring at least 10032 max file descriptors.
27851:M 05 Oct 15:16:17.957 # Server can't set maximum open files to 10032 because of OS error: Operation not permitted.
27851:M 05 Oct 15:16:17.958 # Current maximum open files is 4096. …
Run Code Online (Sandbox Code Playgroud)

port in-memory-database redis server

19
推荐指数
8
解决办法
4万
查看次数

如何使用带有事务的内存数据库进行单元测试时,如何抑制InMemoryEventId.TransactionIgnoredWarning?

我正在使用EF Core内存数据库,我正在尝试对使用事务的方法运行单元测试:

    using (var transaction = await _context.Database.BeginTransactionAsync())
    {
        _context.Update(item);
        result = await _context.SaveChangesAsync();

        // some other stuff

        transaction.Commit();
    }
Run Code Online (Sandbox Code Playgroud)

但是,我从测试运行器中收到此错误:

System.InvalidOperationException:警告为"InMemoryEventId.TransactionIgnoredWarning"的错误异常:内存存储不支持事务.请参阅 http://go.microsoft.com/fwlink/?LinkId=800142要禁止此异常,请使用DbContextOptionsBuilder.ConfigureWarnings API.重写DbContext.OnConfiguring方法或在应用程序服务提供程序上使用AddDbContext时,可以使用ConfigureWarnings.

如何抑制该错误?

c# in-memory-database entity-framework-core asp.net-core

18
推荐指数
2
解决办法
3526
查看次数

为什么Apache Kafka Streams使用RocksDB以及如何更改它?

在Apache Kafka 0.9和0.10的新功能调查期间,我们使用了KStreams和KTables.有一个有趣的事实是,Kafka在内部使用RocksDB.请参阅Kafka Streams简介:流处理变得简单.RocksDB不是用JVN兼容语言编写的,因此需要仔细处理部署,因为它需要额外的共享库(取决于操作系统).

这里有一些简单的问题:

  • 为什么Apache Kafka Streams使用RocksDB?
  • 怎么可能改变它?

我试图搜索答案,但我只看到隐含的原因,RocksDB在每秒大约数百万次操作范围内的操作非常快.

另一方面,我看到一些用Java编码的数据库,也许端到端他们可以做到这一点,而且他们不会通过JNI.

java-native-interface in-memory-database key-value-store rocksdb apache-kafka-streams

17
推荐指数
1
解决办法
1万
查看次数

内存数据库简单可靠,支持JPA的快速Java集成测试

如果我使用内存数据库而不是PostgreSQL,我的集成测试会运行得更快.我使用JPA(Hibernate),我需要一个内存数据库,它很容易切换到使用JPA,易于设置和可靠.它需要支持JPA和Hibernate(或者如果你愿意的话,反之亦然),因为我不想采用我的数据访问代码进行测试.

根据上述要求,哪个数据库是最佳选择?

java database testing jpa in-memory-database

16
推荐指数
1
解决办法
1万
查看次数

为什么大公司使用Mnesia而不是使用Riak或CouchDB

我可以看到像Klarna和Whatsapp这样的两家大公司正在使用Mnesia作为他们的内存数据库(不确定他们如何将数据保持在Mnesia的2GB限制).我的问题是:为什么公司喜欢这些,可能更多我不知道,使用Mnesia而不是Riak或couchDB,两者都是Erlang,两个数据库都支持更快的内存数据库,更好的无痛持久性和更多功能.我在这里想念一下吗?

erlang couchdb erlang-otp in-memory-database riak

16
推荐指数
3
解决办法
1万
查看次数

内存数据库表中的Out of Process,支持高速缓存的查询

我有一个不断访问的SQL表,但很少变化.

表由UserID分区,每个用户在表中有许多记录.

我想保存数据库资源并将此表移近某种内存缓存中的应用程序.

在进程中,缓存过于占用内存,因此需要在应用程序外部进行缓存.

像Redis这样的Key Value商店由于与Redis之间序列化和反序列化表的开销而被证明是低效的.

我正在寻找可以将这个表(或数据分区)存储在内存中的东西,但是让我只查询我需要的信息,而不需要为每次读取序列化和反序列化大块数据.

是否有任何东西可以在内存数据库表中提供Out of Process,它支持高速缓存的查询?

搜索显示Apache Ignite可能是一个可能的选择,但我正在寻找更明智的建议.

sql caching in-memory-database redis in-memory-tables

16
推荐指数
1
解决办法
390
查看次数