问题标签 [vldb]
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.
database - 200 亿行/月 - Hbase / Hive / Greenplum / 什么?
我想利用您的智慧为数据仓库系统找到正确的解决方案。这里有一些细节可以更好地理解问题:
数据以星型结构组织,具有一个 BIG 事实和约 15 个维度。
每月 20B 个事实行
10 个维度,百行(有点层次)
5 个维度,数千行
2 个维度,约 200K 行
2 个大维度,50M-100M 行
针对此数据库运行两个典型查询
dimq 中的顶级成员:
针对元组的措施:
问题:
- 执行此类查询的最佳平台是什么
- 需要什么样的硬件
它可以托管在哪里(EC2?)
(请暂时忽略导入和加载问题)
Tnx,
哈盖。
sql-server - SQL Server VLDB 的大小是多少
是最小 1TB 还是 2?
我当前的客户有低于 1 TB 的容量,我想知道我是否写他们由于其大小而处于重新分类的边缘,他们应该考虑这些问题。
:)
TIA
sql-server - 大型数据库表的 SQL Server 自动分区
我正在处理具有数千万行的数据库表(随着时间的推移可能会达到数亿行),并且正在考虑实施数据库分区以尝试在行数增加时保持性能稳定。这就是我想做的:
假设我有一张存放动物的桌子。字段之一是AnimalType(即Bird/Fish/Cat/Dog)。我希望每个 AnimalType 都是一个单独的分区,因为 99% 的查询只与一个 AnimalType 相关,并且表中的 AnimalType 数量大致相等(即 1000 条鱼、1000 只鸟、1000 条狗),所以这意味着分区应该很好并且均匀分布。但是,动物类型很多,我不想去手动为每个AnimalType创建数百个分区,然后每次输入一个新的AnimalType都必须创建一个新分区。
因此,我想要的是某种方式告诉 SQL Server 基于 AnimalType 进行分区。如果 AnimalType 已经有一个分区,请使用该分区,否则 SQL Server 将自动创建一个新分区。
这听起来很简单,但我似乎无法找到一种方法来做到这一点。可能吗?
或者,还有哪些其他方法可以保持表访问速度又快又快?我想避免任何只是手动将内容移动到更多表中的事情,例如将旧记录移动到历史样式表中,因为查询可能需要来自完整数据集的数据,因此这实际上不会帮助。我已经有一些基本的索引,它们有很大帮助。
sql-server - 巨表中ALTERING列NOT NULL对NULL的影响
SQL Server 2005:2.4 亿行表。列要求从 NOT NULL 更改为 NULL。
在处理这么大的表时使用 ALTER 语句通常是不好的做法(而且通常是不可能的),但是,如果可能的话,尽量避免重建表。
针对包含 20m 行的开发表测试 ALTER 语句,该语句在 <1 秒内成功执行。
问题:这似乎应该对巨大的生产表起作用......但是那里的任何人都可以根据经验(除了明显的)指出风险或影响吗?
非常感谢。
database - TimeSeries 数据库的建议
最好是用于存储刻度信息的开源。
com - 如何为 com/atl dll 项目使用可视泄漏检测器 ( vld )?
我在我的 activex dll 项目中包含了 vld.h 文件。当我尝试从 Visual Studio 2008 编译我的项目时,出现以下错误,
1>注册输出...
1>项目:错误PRJ0050:无法注册输出。请确保您具有修改注册表的适当权限。
如何为 com/activex dll 项目使用视觉泄漏检测器?
hadoop - hadoop之上的列存储?
是否有一个类似于 Vertica 的列存储,它是建立在 Hadoop 之上的。我不是在谈论 HBase,因为它是稀疏矩阵存储,并且无法获得像 Vertica 这样的东西可以实现的压缩级别?
谢谢
sql - RBAR 与具有不同事务大小的基于集合的处理的性能
传统观点认为,基于集合的表处理应始终优于 RBAR - 特别是当表变大和/或您需要更新许多行时。
但这总是成立吗?我经历过很多情况——在不同的硬件上——基于集合的处理显示时间消耗呈指数增长,而将相同的工作负载分成更小的块会产生线性增长。
我认为被证明完全错误会很有趣——如果我遗漏了一些明显的东西——或者如果没有,那么知道什么时候分担工作量是值得的,这将是非常好的。随后确定哪些指标有助于决定使用哪种方法。我个人希望以下组件很有趣:
- 工作量大小
- 日志文件的大小和增长
- 内存量
- 磁盘系统的速度
任何其他?CPU/CPU 核心数?
示例 1:我有一个 1200 万行的表,我必须使用另一个表中的数据更新每行中的一个或两个字段。如果我在一个简单的 UPDATE 中执行此操作,我的测试箱需要大约 30 分钟。但是如果我把它分成十二块,我会在大约 24 分钟内完成 - 即:
示例 2:是一个 200+ 百万行的表,还需要对几乎所有行进行多次计算。如果一个做全套,我的盒子会运行三天,甚至不会完成。如果我编写一个简单的 C# 来执行完全相同的 SQL,但附加了 WHERE 子句以一次将事务大小限制为 100k 行,它将在大约 14 小时内完成。
记录一下:我的结果来自相同的数据库,基于相同的物理硬件,更新了统计信息,索引没有变化,简单的恢复模型等。
不,我还没有尝试过“真正的”RBAR,尽管我可能应该尝试过——尽管这只是看看真正需要多长时间。
oracle - 优化 Oracle 11g 过程
我有一个程序可以在一个按日期、对象名称和代码组织的非常大的表中找到一系列交易的第一个、最后一个、最高和最低价格。我还需要交易数量的总和。表中有大约 30 亿行,这个过程需要很多天才能运行。我想尽可能地缩短那段时间。我在 trans 表中的不同字段上有一个索引,并查看查询选择部分的解释计划,正在使用该索引。我愿意接受有关替代方法的建议。我使用 Oracle 11g R2。谢谢你。
php - 如何优化超大 MySQL 数据库的性能?
我正在开发 PHP-MySQL 中的 Web 应用程序。我是用于数据库访问的 MySQLi API。我大致有两个问题:
- 如何提高 MySQL 数据库的性能?
- MySQL 对于大型企业级数据库的安全性和适用性如何?
对于问题1,请注意以下几点:
预计数据库的主要中央表每年将接收大约 50 万到 100 万行。如何加快从这些表中检索?我已经在这些表上创建了索引。
我正在将存档的行移动到一个新表中,并且只在主表中保留当前正在使用的行。但是在任何时候,主表仍然会有非常多的行数。
提前致谢