问题标签 [tokumx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2369 浏览

mongodb - Tokumx VS mongodb 读取性能

我通过比较 Tokumx 和纯 Mongodb 来进行读取性能压力测试。

tokumx 和 mongodb 都在同一台机器上运行。

硬件概述:

每个实例中只有一个集合。每个集合中有 100,000 个条目。

对于 tokumx,它被创建为分区集合。但是对于 mongodb,它是作为普通集合创建的:

对于这两种情况,索引如下所示:

我正在使用Tsung进行压力测试。在测试计划中,我通过查找field2和按desc的geo字段顺序进行了简单的搜索。created_at

根据官方文件,交易应该类似于TOKUMX™ BENCHMARK VS。MONGODB – 硬盘

在此处输入图像描述

但在我的测试中:

托库克斯:

在此处输入图像描述

在此处输入图像描述

MongoDB:

在此处输入图像描述

在此处输入图像描述

我在这里问知道是否有人可以对此提供任何提示?我在整个测试中错过了什么吗?


更新:

我在 Linux(CentOS) 机器上又做了一轮测试:

示例数据如下所示:

每个集合有 1,000,000 个条目。

每个集合的索引(创建正常集合):

测试计划也很简单:

每次测试运行 1 小时的 Tsung 压力测试。并发是每秒 1 个请求。

这是屏幕截图中的报告:

托库克斯:

tokumx 总结
tokumx 报告

蒙古数据库:

MongoDB总结 MongoDB报告


更新@2014.12.12 发现这个: https ://github.com/Tokutek/mongo/issues/1014

0 投票
2 回答
280 浏览

tokumx - 无法在 osx 上安装 tokumx:无法执行二进制文件

我从 tokumx 网站下载最新版本。当我开始 mongod 我有一个错误,

任何解决方案。

0 投票
2 回答
359 浏览

tokumx - 如何避免 TokuMX 启动缓慢?

我们运行一个 TokuMX 副本集(2 个实例 + 仲裁器),其中包含大约 120GB 数据(在磁盘上)和大量索引。

自从升级到 TokuMX 2.0 后,我们注意到重启 SECONDARY 实例总是需要很长时间。在切换到正常模式之前,数据库一直卡在 STARTUP2 1 小时以上。当服务器处于 STARTUP2 时,它以持续的 CPU 负载运行 - 我们假设它正在重建其索引,即使它之前已正确关闭。

虽然这很烦人,但由于 PRIMARY 可用,它不会导致停机。但最近在延长维护期间,我们需要重新启动两个实例。我们先停止 SECONDARY,然后是 PRIMARY,然后以相反的顺序启动它们。但这导致两者都占用了完整的 1 小时以上的启动时间,因此此时副本集不可用。

如果不等待这么长时间就无法重新启动可能已关闭的副本集,这是我们不愿承担的风险。

有没有办法避免在启动时(可能的)完全索引重建?

0 投票
3 回答
523 浏览

postgresql - 有什么方法可以使用符合本机 ACID 的数据库来获取 Meteor?

我正在认真考虑未来构建每个 POC 和应用程序的 Meteor 框架......但是,我无法使用符合 ACID 的数据库,因为我很少使用需要这种合规性的多文档原子事务。

Meteor 目前强烈依赖 MongoDB 语法和存储引擎(这意味着没有可用的“事务”相关语法......)

我目前正在评估任何允许这种 ACID 功能的解决方案:

  • 为 Meteor 使用 MySQL 本机驱动程序(与 MongoDB 不同的语法?)
  • 为 Meteor 使用 PostgreSQL 本机驱动程序(SQL 语法)
  • 使用 TokuMX(具有 ACID 合规性的 MongoDB 分支...与需要添加的事务相关命令的 MongoDB appart 语法相同)

这 3 个解决方案非常适合 Meteor 路线图,如下所示

这些解决方案有什么优点/缺点?哪个是最先进的?尽管将文档存储在符合 ACID 的 NoSQL 数据库中时,您会考虑什么作为保留 Meteor 的解决方案?

0 投票
1 回答
2868 浏览

bash - 如何保护 mongodump 从远程机器进行备份?

例如,我有一个mongod正在运行1.2.3.4的实例,并且在100.90.80.1.

我需要使用以下 bash 脚本从1.2.3.4to备份 mongodb 数据:100.90.80.1

但我无法连接到1.2.3.4由于这个选项/etc/mongodb.conf

我知道我可以将上述限制更改为,bind_ip = 0.0.0.0但这并不安全。

使用上面的 bash 脚本与远程 mongod 服务器建立安全连接并将文件备份到另一个服务器的最佳方法是什么?

PS:我运行上面的脚本,如下所示:

0 投票
0 回答
122 浏览

tokumx - TokuMX 升级后不重启

我试图使用 TokuMX,所以我做了:

它只需要永远,没有回应。

我的 TokuMX 曾经运行良好。当我升级 MongoDB 时,一切都崩溃了。

有什么建议么?

- - - - - - - - - - - 编辑 - - - - - - - - - - -

通过按照https://github.com/Tokutek/mongo/wiki/Migrating-Single-Server重新安装 TokuMX 解决了问题

感谢大家!

0 投票
1 回答
232 浏览

java - 在内存中用于读取密集型应用程序的 mongodb

我有一个项目,其中数据是只读的(根本没有写入),并且对于每个请求都会执行数千次读取,因此瓶颈是从数据库中获取数据。

我们在 tmpfs(~12GB 压缩数据库)上运行 tokumx,它仍然很慢,因为序列化和套接字通信需要大量时间,所以我想“缓存”一个关键的 4.5m 文档集合,这些文档通过单个简单查询访问。最终,我们可能会将整个数据库迁移到某个内存数据存储中,因为它会使其更快。

现在,我正在考虑只使用在应用程序启动时加载的普通哈希图,但我不确定这是最好的方法:) 其他选项(如 Fongo)都是为单元测试而设计的,我不是当然,对于这种情况,他们足够快吗

有什么建议可以解决这个问题吗?

0 投票
1 回答
269 浏览

mongodb - 哪些选项可用于将现有 TokuMX 数据库升级到 MongoDB 3.0?

TokuMX 是 MongoDB 2.4 的直接替代品,但我们正在为我们的应用程序开发一些功能,这些功能确实需要 MongoDB 2.6 和 3.0 中引入的一些聚合功能。

我们有一个相当大的(>50GB 未压缩)TokuMX 格式的数据库,因此不必导出数据并重新导入会很好。我们没有使用分片或副本。

这些是我知道的选项:

  1. 升级到 MongoDB 3.0 并安装 TokuMXse 存储引擎(尚未 GA)
  2. 升级到 MongoDB 3.0 并使用 WiredTiger 或 RocksDB(后果?)
  3. 试用新的 Percona Server for MongoDB ( https://www.percona.com/software/mongo-database/percona-server-for-mongodb ),它看起来可以替代 TokuMX,但很难从市场营销。
0 投票
2 回答
250 浏览

mongodb - 锁定在 mongodb 副本集之外

我有一个包含 3 个成员(2.4 版)的 mongodb 副本集,其中“admin”数据库的管理员用户没有“userAdminAnyDatabase”角色。

此角色是管理所有数据库上的用户所必需的。

我目前拥有的角色是:[“readWriteAnyDatabase”、“dbAdminAnyDatabase”、“clusterAdmin”]

我尝试为自己更新角色或创建新用户,但是我无权访问管理数据库中的 db.system.users。

我尝试设置 noauth=true 但这没有帮助。删除 keyFile 时,数据库也无法与其他成员同步(显然)并陷入 RECOVERY 状态。

我发现了一个类似的问题,它指的是一个独立的数据库(没有副本集),所以在这种情况下它并没有真正的帮助。

在系统停机时间最短的情况下添加此角色的最佳方法是什么?

0 投票
1 回答
126 浏览

mongodb - 从 Tokumx 1.5 迁移到 Percona Server For mongodb 3.11

将数据从 Tokumx 迁移到用于 MonoDB 的 Percona 服务器

第 1 步:本指南介绍如何将现有 Percona TokuMX 实例升级到 Percona Server for MongoDB。执行升级需要以下 JavaScript 文件:

您可以从 GitHub 下载这些文件。

第 2 步:运行 allDbStats.js 脚本以记录迁移前的数据库状态: $ mongo ./allDbStats.js > ~/allDbStats.before.out

第 3 步:执行数据库转储: $ mongodump --out /your/dump/path

第 4 步:执行索引转储: $ ./tokumx_dump_indexes.js > /your/dump/path/tokumxIndexes.json

第 5 步:使用“--noIndexRestore”开关恢复没有索引的集合: $ mongorestore --noIndexRestore /your/dump/path

第 6 步:恢复索引(这可能需要一段时间)。此步骤将在插入之前删除集合的聚类选项。

$./psmdb_restore_indexes.js --eval "data='/your/dump/path/tokumxIndexes.json' "

第 7 步:

运行 allDbStats.js 脚本记录迁移后的数据库状态:

这是我在从 Tokumx 迁移到 mongodb 的 Percona 服务器中找到的指南。在第 6 步,当我尝试恢复索引时,我得到下面提到的错误:

加载失败:/tmp/tokumx2_to_psmdb3_migration-master/psmdb_restore_indexes.js

欢迎任何帮助。谢谢