问题标签 [monetdb]
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.
monetdb - monetdb 错误 - 格式错误 ( )
我在 monetdb 中运行了一个长 SQL 查询,以从规范化表创建一个平面表。我把它开始了,然后离开了一天。今天早上查询已经死了,如下: sql>\< flat.sql wrong format () sql>
日志中没有其他信息,我不知道它在死前运行了多长时间。该 sql 需要将多个表连接在一起,并且最后确实有一个 order by。任何可以帮助您从哪里开始寻找的信息都会很棒。
r - monetdb_check_subquery() 过于严格
此功能继承自当前的稳定版本dplyr
,但我认为它已迁移到MonetDB.R
它在字符串“limit”和“offset”的任何出现时都会失败,在我的例子中,它们恰好是列名,但也可能是值。也许警告会更合适?抱歉,对正则表达式的了解不够好,无法提出更精确的建议。
并感谢您提供了一个非常方便的包裹。
r - R > Monetdb,dbConnect 错误(包 Monetdb.R)
尝试从 R 中连接 (dbConnect()) 到 MonetDB(使用 MonetDB.R)时出现错误。有一个(相关的 SO 问题),我也尝试了那里的建议((a)使用 MonetDB.R 测试版 0.9.5 或(a)使用常规的 MonetDB.R,但将 DBI 包替换为早期版本(0.2-7 )) 没有成功。
这是代码和错误:
系统详细信息:Windows 8.0,在 RStudio 上,版本 0.98.1062
尝试的解决方案和相应的错误:
a) 尝试安装 MonetDB.R_0.9.5.zip(测试版)
b)保留 MonetDB.R 常规版本(cran),但将 DBI 更改为早期版本(也建议在 SO 上):
# 给出与上面相同的错误,断言失败!Program: C:Program Files\RStudio\bin\x64\rsession.exe File: mapi.c, Line 91 Expression: IS_INTEGER(port) #然后RStudio显示错误:“R Session Aborted”
join - MonetDB - 左/右连接比内连接慢
我一直在比较 MySQL 和 MonetDB。显然,在 MySQL 中需要几分钟的查询在 Monet 中只需几秒钟即可执行。
但是,我发现了一个真正的连接封锁。
我有 2 张桌子——每张桌子有 150 列。在这些 (150+150) 列中,大约有 60 个是 CHARACTER LARGE OBJECT 类型。这两个表都填充了大约 50,000 行 - 所有 150 列中都有数据。CLOB 类型列中数据的平均长度为 9,000(从 2 个字符到 20,000 个字符不等)。两个表的主键具有相同的值,并且连接始终基于主键。默认情况下,这些行按主键的升序插入。
当我用大约 5 个条件和限制 1000 对这两个表运行内部连接查询时,莫奈在 5 秒内处理了这个查询,这与 MySQL(19 秒)相比是完全令人印象深刻的。
但是当我使用左连接或右连接以相同的条件和限制运行相同的查询时,Monet 花了大约 5 分钟,这明显落后于 MySQL(仅 22 秒)。
我使用 trace 语句查看了日志,但内部和左连接的跟踪或多或少相同,除了左连接跟踪中每个操作的时间要高得多。
此外,当以多个时间间隔运行时,相同的连接查询执行所花费的时间会相差 2 或 3 秒。
与传统的基于关系行的数据库相比,阅读了很多关于莫奈的速度的信息,我觉得我错过了一些东西,但不知道是什么。
谁能告诉我为什么这样的查询执行时间会有如此大的差异以及如何防止它?
非常感谢有任何帮助。提前非常感谢。
PS:我在 Macbook Pro 上运行 Monet - 2.3 GHz Core i7 - 具有 8 GB RAM 的四核处理器。
sql - 在 MonetDB 中创建表时出现语法错误
这让我发疯,我正处于我认为我必须错过一些非常明显的东西的地步。我们正在使用 SQiurrel 设置 MonetDB 环境。我虽然挑战在于将所有这些连接起来并让驱动程序工作,但事实证明它正在运行,我可以看到数据库的所有荣耀。
我在 MySQL 中有一个需要重建的数据库,所以我只生成了代码:
唯一的区别是我更改了列名和表名。我不确定这是否一开始就兼容,但我想我会解决它,因为它会抛出错误。第一个是关于使用`。MonetDB 似乎不喜欢你。
我删除了这些,现在我得到了:
对于“关键”列,我也将 int(11) 变为红色并告诉我我有一个“预期 EOF”
如果我快速输入我自己的 CREATE TABLE 语句,我可以创建一个类型为 varchar 的表。一旦我添加一个 int 类型,它就会再次发疯。
例如,我刚刚在 MonetDB 中创建了这个表:
那工作得很好。只要我添加一个 int 类型:
又有点精神了:
所以我的问题是我设置错了吗?MonetDB 似乎运行良好,我可以像在 SQiurrel 中所期望的那样探索一切。我可以使用 varchar 创建基本表,但只要我输入一个 int,计算机就会拒绝。我也不明白EOF是什么意思?我以为它期待一个,但它有吗?
提前致谢。我希望我只需要一个了解 MonetDB 的新思维来告诉我为什么我错过了显而易见的事情!
sql - 使用 monetdb 运行 sql 脚本时如何获取完整时间
当我在输入“mclient -dmydatabase”后使用sql的命令行界面时,如果我直接输入“select ....”指令,我会得到这样的完整时间
(查询结果)
7 个元组(15.4 秒)
但是如果我将相同的指令放入像 default_22.sql 这样的 sql 脚本中,在我运行脚本之后,我只会得到答案,而没有这样的时间:
(查询结果)
7 个元组
所以我希望知道当我使用 monetdb 运行脚本时如何获得完整的时间?谢谢你。
sql - 我想在再次安装之前卸载 monetdb
我应该怎么办?只删除bin目录?或者我需要一些额外的操作?
sql-server - 如何将表从 MS SQL Server 2012 复制到 MonetDB
表转储文件大约 30Gib。因此,当我将其内容加载到 MonetDB 中时,我得到了几个异常(“输入中的空字节”、“意外打开,期望 '=' in:set ansi_nulls on”、意外的 '[' in:“create table [”等.),因为这个文件是以 mssql 方式格式化的。如何从 mssql 复制到 monetDb?
UPD:要从 csv 复制,我在 SQuirreL 中使用这些脚本
接着
当我使用 MonetDb 客户端时,我收到:
database - Monetdb 是否支持像 PG/SQL 这样的服务器端脚本?
嗨,我在这里读到MonetDB 支持服务器端脚本(如 Oracle 的 PG/SQL)。但是我无法在MonetDB 网站上找到任何相关文档
有人可以在 monetdb 中提供有关服务器端脚本的任何指针、文档和教程吗?
sql - 优化用于删除 Monetdb 中重复项的 sql 查询
我有一个问题,我有一个超过 100,000,000 行的市场数据表,我需要搜索并删除 symbol 和 totvol 列匹配但 serial_no 不同的重复项。
我已经在单个表上尝试了下面的查询,也使用表的副本作为参考,但不幸的是它占用了大量的堆空间(> 100G并且还在计数,有时会将硬盘驱动器填满并崩溃我的数据库)和时间(> 30 分钟)并使我的服务器陷入爬行状态(32 核上的 CPU 使用率为 60-95%!)这是不可接受的。如果我想定期执行这样的事情,有没有一种有效的方法来编写这个查询来优化 sql 执行?
通常我会以某种方式对表进行分区,因为大部分重复项是相邻或相邻插入的,但由于 monetdb 是列存储数据库,因此这种分区方式也会占用大量堆空间。我发现减少堆的唯一有用的方法是创建一个包含数据子集的全新表(即按字母顺序按符号拆分),这会导致更小的列 bat 文件,然后在小表上运行操作,是否存在有什么方法可以让大表保持完整并编写一个查询,一次可以处理 1,000,000 行?
查询:
一些示例数据,第 2 行和第 3 行是彼此重复的,第 4-7 行都是重复的 = 根据我的标准,请注意 exseq 可能相同或不同,删除重复项时我们保留哪个 exseq 值并不重要: