问题标签 [large-data-volumes]
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.
java - 处理大数据量的建议
所以我有一个“大量”的“非常大”的数字数据 ASCII 文件(总共千兆字节),我的程序需要至少按顺序处理整个文件一次。
关于存储/加载数据的任何建议?我曾考虑将文件转换为二进制文件以使它们更小并加快加载速度。
我应该一次将所有内容都加载到内存中吗?
如果不是,那么打开部分加载数据的好方法是什么?
有哪些与 Java 相关的效率提示?
c++ - 绘制大量数据
在我从事的产品中,有一个迭代循环,可以有几百到几百万次迭代。每次迭代计算一组统计变量(双精度),变量个数最多可达 1000 个(一般为 15-50 个)。
作为循环的一部分,我们绘制了变量在迭代中的变化,因此 X 轴是迭代,而 y 轴是变量(按颜色编码):
http://sawtoothsoftware.com/download/temp/walt/graph.jpg
目前,数据存储在一个文件中,其中包含:
用于变量
的 4 字节整数,用于迭代的 4 字节整数,
以及用于值的 8 字节双精度。
y 轴的总比例随时间变化,并且希望图形调整大小以适应当前比例(这可以在图片中看到)。
以大约 5 秒的间隔,读取数据并将其绘制在位图上,然后将其显示给用户。我们尝试做一些优化来避免重新绘制整个东西,但是如果迭代次数或变量数量变大,我们最终会得到一个需要超过 5 秒才能绘制的巨大文件。
如果可能的话,我正在寻找有关如何更有效、更快速地处理这么多数据的想法。
mysql - 如何在 MySQL 表上拆分数据
我有一个网站,其中的成员互相发送消息。会有一些成员,他们喜欢发送消息 - 我相信你可以看到这是怎么回事。
目前我已经说过消息存储在一个很好的关系表中,巧妙地命名为“消息”,具有不同的状态 ID 来表示,呃,状态(未读,已保存等)。我知道这是事后的事,但我认为我真的需要将此表拆分为其他几个表(例如,每种状态类型不止一个)而且我不确定最好的方法是什么关于它。
我有几个想法,但都不是火箭科学,但我很好奇这是否有“标准解决方案”。谷歌不建议这样做,但我想这些问题在像 stackoverflow 这样的地方之外并不常见。
有人已经做过了吗?
mysql - 大型 MySQL 表
对于我正在开发的 Web 应用程序,我需要存储大量记录。每条记录将包含一个主键和一个(短)字符串值。我希望有大约 100GB 的可用存储空间,并希望能够全部使用。
记录会被频繁地插入、删除和读取,我必须使用 MySQL 数据库。数据完整性并不重要,但性能才是。我可能会遇到哪些问题和陷阱,以及哪种存储引擎最适合该任务?
非常感谢,J
mysql - 大主键:1+ 十亿行 MySQL + InnoDB?
我想知道 InnoDB 是否是格式化表格的最佳方式?该表包含一个字段,主键,并且该表每天将获得 816k 行(估计)。这将很快变得非常大!我正在研究一种文件存储方式(这会更快吗)?该表将存储已处理的 Twitter ID 的 ID 号?
SELECT min('id')
此外,对语句的任何估计内存使用情况?非常感谢任何其他想法!
mysql - 如何限制mysqldump使用的带宽
我必须通过没有那么多带宽并且其他人需要同时使用的网络管道转储一个大型数据库。如果我尝试它,它会吸收所有的带宽,延迟会飙升,其他人都会搞砸。
我知道 mysqldump 的 --compress 标志有点帮助。
如何在不占用此连接的所有带宽的情况下做到这一点?
更新:
使用带有 -l 标志的 scp 复制转储文件的建议是一个很好的建议,但我应该注意我没有对数据库服务器的SSH访问权限。
java - 如何在所有缩放级别实时准确地绘制大数据向量?
我有需要实时绘制的大型数据集(10 Hz 数据,因此每 24 小时有 864k 个点)。这个想法是用户可以缩放和平移到高度详细的散点图。
数据不是很连续,有尖峰。由于数据集如此之大,我无法在每次绘图刷新时绘制每个点。
但我也不能只绘制每个第 n 个点,否则我会错过大而短的尖峰等主要特征。
Matlab 做得对。您可以给它一个全零的 864k 向量,只需将任意一点设置为 1,它就会通过缩放和平移实时正确绘制。
Matlab是如何做到的?
我的目标系统是 Java,所以我将在 Swing/Java2D 中生成该图的视图。
.net - 哪种数据验证方法最适合大型数据集
我有一个大型数据库,并希望实现一个允许用户批量更新信息的功能。用户下载一个 excel 文件,进行更改,系统接受该 excel 文件。
- 用户使用 Web 界面 (ASP.NET) 将数据从数据库下载到 Excel。
- 用户修改 Excel 文件。仅允许将某些数据作为其他映射修改到数据库中。
- 一旦用户对他们的更改感到满意,他们就会通过 ASP.NET 界面上传更改后的 Excel 文件。
- 现在服务器的工作是从 Excel 文件中提取数据(使用 Gembox)并根据数据库验证数据(这是我遇到问题的地方)
- 验证完成后,验证结果将显示在另一个 ASP.NET 页面上。验证是软的,因此只有在缺少映射到 DB 的索引时才会发生硬失败。(缺少数据会导致忽略等)
- 用户可以决定将要采取的行动是否适当,在接受这些行动时,系统将应用更改。(添加、修改或忽略)
在应用用户所做的更改和/或添加之前,必须验证数据以避免用户出错。(他们无意删除的日期)
对于需要更新以达到超过 65k 的行来说,这并不遥远。
问题是:解析数据以进行验证并建立更改和添加集的最佳方法是什么?
如果我将必须验证 excel 数据的所有数据加载到内存中,我可能会不必要地影响已经占用大量内存的应用程序。如果我对 excel 文件中的每个元组进行数据库命中,我将看到超过 65k 的数据库命中。
帮助?
mysql - mysql表结构 - 一个非常大的表或单独的表?
我正在从事一个与网站访问者分析性质相似的项目。它将被数百个网站使用,每个网站平均每天有 10,000 到 100,000 次页面访问,因此数据量将非常大。
我应该使用带有 websiteid 的单个表还是为每个网站使用单独的表?
对拥有 100 多个网站的实时服务进行更改,每个网站都有单独的表格,这似乎是一个大问题。另一方面,性能和可扩展性可能会成为如此大数据的问题。欢迎任何建议、意见或建议。
sql - 有效存储 7.300.000.000 行
您将如何解决以下存储和检索问题?
每天(365 天/年)将添加大约 2.000.000 行,每行包含以下信息:
- id(唯一的行标识符)
- entity_id(取值介于 1 和 2.000.000 之间)
- date_id(每天递增一个 - 取值在 1 到 3.650 之间(十年:1*365*10))
- value_1(取值介于 1 和 1.000.000 之间)
- value_2(取值介于 1 和 1.000.000 之间)
entity_id 与 date_id 结合是唯一的。因此,每个实体和日期最多可以添加一行到表中。数据库必须能够保存 10 年的每日数据(7.300.000.000 行 (3.650*2.000.000))。
上面描述的是写入模式。读取模式很简单:所有查询都将针对特定的 entity_id 进行。即检索所有描述 entity_id = 12345 的行。
不需要事务支持,但存储解决方案必须是开源的。理想情况下,我想使用 MySQL,但我愿意接受建议。
现在 - 你将如何解决所描述的问题?
更新:我被要求详细说明读写模式。每天将在一批中完成对表的写入,其中将一次性添加新的 2M 条目。读取将连续进行,每秒读取一次。