我想对〜1m +个文档进行分类,并为相应模型的输入和输出提供一个版本控制系统。
数据随时间变化:
因此,基本上“一切”都可能发生变化:观测值,特征和值。我们感兴趣的是使ml模型构建在不使用10/100 +
GB磁盘卷的情况下可重现,因为我们保存了输入数据的所有更新版本。目前,数据量约为700mb。
我发现的最有前途的工具是:https :
//github.com/iterative/dvc。当前,数据存储在数据库中,并从那里加载到R
/ Python中。
问题:
使用dvc可以节省多少磁盘空间(非常大)?
如果可以粗略地估计这一点。我试图找出是否仅保存数据的“差异”。通过阅读以下内容,我没有发现太多信息:https : //github.com/iterative/dvc#how-dvc-
works或其他文档。
我知道这是一个非常模糊的问题。 而且它将高度依赖于数据集。但是,我仍然会对获得一个非常近似的想法感兴趣。
让我尝试总结一下DVC如何存储数据,希望您能从中得出在您的特定情况下将节省/消耗多少空间的信息。
DVC在单个 文件级别 上存储和删除重复数据。因此,从实际的角度来看,这通常意味着什么。
我将用dvc add
作为一个例子,但同样的逻辑也适用于保存数据文件或目录到DVC缓存中的所有命令- dvc add
,dvc run
等等。
假设我有一个1GB的XML文件。我开始使用DVC进行跟踪:
$ dvc add data.xml
在现代的文件系统(或者hardlinks
,symlinks
启用,看到此命令,我们仍然消耗1GB(即使文件被移动到DVC缓存中,仍然存在于工作区)后有详细介绍)。
现在,让我们对其进行一些更改并再次保存:
$ echo "<test/>" >> data.xml
$ dvc add data.xml
在这种情况下,我们将消耗2GB。 DVC不会在同一文件的两个版本之间进行区分 ,也不会将文件拆分为大块或块以了解仅一小部分数据已更改。
确切地说,它计算
md5
每个文件并将其保存在内容可寻址键值存储中。md5
文件中的一个用作键(高速缓存中文件的路径),值是文件本身:(.env) [ivan@ivan ~/Projects/test]$ md5 data.xml 0c12dce03223117e423606e92650192c (.env) [ivan@ivan ~/Projects/test]$ tree .dvc/cache .dvc/cache
问题内容: 所以我正在使用node.js和socket.io。我有这个小程序,它接受文本框的内容并将其发送到node.js服务器。然后,服务器将其中继回其他连接的客户端。有点像聊天服务,但不完全是。 无论如何,如果用户键入价值2-10k的文本并尝试发送该文本,该怎么办?我知道我可以自己尝试一下,但是我正在寻找一个实用的最佳实践限制,即我可以通过一次发射处理多少数据。 问题答案: Node和sock
问题内容: 我将jquery,JSON和AJAX用于注释系统。我很好奇,可以通过JSON发送/存储的内容是否有大小限制?就像用户输入大量内容并通过JSON发送一样,是否存在某种最大限制? 也可以通过JSON发送任何类型的文本。例如,有时我允许用户使用html,这样可以吗? 问题答案: JSON与其他数据格式(如XML)相似- 如果您需要传输更多数据,则只需发送更多数据。JSON请求没有固有的大小限
蜻蜓映射产品定价如下 产品价格: 每条映射6元 根据付费套餐不同,带宽计费模式对比如下: 按流量(GB)统计使用量: 计费模式 价格 带宽 公式 流量计费 1G 流量1元 1-8M 带宽任意调整 6 * 映射数 (流量按量付费) 流量计费示例:某用户购买了1个月3条映射、选择流量计费模式,则总费用: (6 * 3 = 18元) 注意: 用户还需充值购买流量包 按带宽(Mbps)计费 套餐 带宽 价
问题内容: 我正在开发一个 Java Web应用程序 ,其中包括 一个applet 。该小程序依赖于两个jar文件: JFreeChart(用于在客户端绘制图) -1.7 mb(jar文件的大小) MySqlJdbcConnector(用于将在客户端捕获的数据存储到远程数据库)-. 7 mb(JAR文件的大小) 现在,问题是上述两个jar文件的大小。我的小应用程序jar (myApplet.jar
问题内容: 我们将Java 6 JRE与我们的应用程序安装程序捆绑在一起,以便可以在任何计算机上运行,但这会使应用程序变得更重。因此,我们计划减小JRE的大小。如果有人完成了此类任务,您能否提供指导以继续前进? 问题答案: 查看JRE目录中的README文件。“可选文件和目录”部分列出了一些文件(如果将它们与应用程序打包在一起,可以从Oracle / Sun JRE中删除)。 创建安装时,我使
我有一个应用程序,它使用大量的内存来区分两个潜在的巨大(100k)目录的内容。对我来说,这样的操作会占用大量内存是有道理的,但是一旦我的 diff'ing 操作完成,堆的大小就会保持不变。 我基本上有实例化类的代码,用于存储源和目标上每个文件的文件名、文件大小、路径和修改日期。我将添加、删除和更新保存在其他数组中。然后,我我的源数组和目标数组(现在可能每个都是100k),只剩下相对较小的添加、删除