问题标签 [delta]
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.
mysql - 仅 MySQL 转储恢复增量
在工作中,我们有一个脚本,每晚都会进行 mysql 数据转储。对于开发,我们通常需要使用最新转储中的数据。一段时间以来,我们每天都在进行数据库恢复,但现在我们已经到了每天恢复需要将近一个小时的地步。有没有办法让我们在 mysql 中进行增量还原,或者只是进行增量转储。有点像补丁文件,但用于 mysql。对此主题的任何帮助将不胜感激。
-赫里尼克
algorithm - 将文本增量组合成单个“超字符串”的算法
我正在编写软件来跟踪作者对一本书的多个版本所做的更改。我已经编写了生成一组描述两个版本之间差异的增量的代码。
现在我正在寻找一种算法来将所有这些差异内联以创建一个“超字符串”,其中包含在每个版本中插入和删除的所有文本。然后,我想用有关添加和删除文本的位置的信息来标记 HTML 中的字符串。
通过这种方式,我可以通过简单地将不同的 CSS 属性应用于文档来可视化文本之间的差异。
例子
如果作者这样改一句
我的代码产生这些增量
我要处理以创建这样的文件:
问题
完成这项任务的最佳算法是什么?这个问题有名字吗?
iphone - 如何根据其他视图更改以编程方式更改 UIScrollView 的位置?
我有一个滚动视图,我想基于delta以编程方式移动它,或者更改另一个滚动视图。因此,如果我的第一个 scrollView 向下移动 10px,我需要获取该数字,并将第二个 scrollView 向下调整 10px,并允许它们位于不同的位置。
我让它工作的唯一其他方法(感谢其他人在这里的帖子)是使用以下代码:
但这只是使它们具有相同的 XY 坐标,这不是我想要的。
谢谢你的帮助!
svn - 莫名其妙的 SVN 存储库大小从小差异增加到大文件
我不明白为什么大文件的微小差异会导致我的 subversion 存储库增长如此之多。
我有一些测试使用的数据库内容的 zip 文件。我想将每个新版本的测试数据存储在我们的 subversion 存储库中。
我做了一些实验,检查了 data.zip 的最后几个版本,并查看了存储库大小的变化。未压缩的数据约为 150MB,压缩和压缩后约为 50MB。签入存储库的每个新版本的 data.zip 文件都会使存储库的大小增加约 50MB。我认为它应该只增加一个我预计会少得多的增量。
Subversion 使用 xdelta 来存储压缩的差异数据。我确认 SVN 可以做得更好的尝试是下载 xdelta 并检查两个版本之间没有太大区别。确实
生成了一个大约 3MB 的 v1v2_delta.file。
我查看了位于 [myrepo]\db\revs 的 SVN 存储库,可以看到每个新版本的大文件
(4189、4190 和 4191 是文件名。)
我什至尝试在不压缩的情况下压缩 data.zip。这对 SVN 存储的内容没有影响 - 从外观上看,我的猜测是它存储了每个修订版的整个 data.zip 的压缩副本,而不仅仅是第一个修订版。我正在运行带有 FSFS 后端的 SVN 1.6。
关于提交二进制文件以及 SVN 如何存储增量,例如多次修订后的 SVN 性能,还有各种其他好的 stackoverflow 答案。但是我无法从这些中看出为什么在上述情况下没有存储增量 - 即。如果 xdelta 可以让如此小的差异独立运行,那么 SVN 肯定也可以 - 或者它选择不这样做?!
编辑:我也尝试过 tar (未压缩)文件,SVN 再次没有有效地存储它们。此外,我发现我们在 SVN刚刚存储 diffs的不同存储库中有一个相同数据格式的 zip 文件(尽管小得多)。
所以这个问题的总结版本是:SVN 可以有效地存储二进制文件,例如10 个略有不同的 CAD 文件的大小仅为 1 的 1.2 倍。SVN 有时甚至可以通过压缩 zip 文件节省空间。但显然二进制文件并不总是节省空间 - 在什么情况下会出现这种情况?
version-control - 二进制增量存储
我正在寻找用于版本大型二进制文件(数字音频工作站文件)的二进制增量存储解决方案
处理 DAW 文件时,与用于存储原始数据(波形)的大量数据相比,大部分更改,尤其是在混音结束时的更改非常小。
为我们的 DAW 文件提供版本控制系统会很棒,让我们能够回滚到旧版本。
系统只会保存每个版本的二进制文件(diff)之间的差异。这将为我们提供从当前版本更改为先前版本的指令列表,而无需存储每个版本的完整文件。
是否有任何当前的版本控制系统可以做到这一点?我已经阅读了 SVN 使用二进制差异来节省存储库中的空间......但我也读到它实际上并没有对二进制文件执行此操作,只有文本文件......不确定。有任何想法吗?
我现在的行动计划是继续研究现有工具,如果不存在,请熟悉 c/c++ 读取二进制数据并自己创建工具。
python - rdiff python 模块
是否有一个 python 模块具有计算 rdiff 签名和增量差异的功能?
我需要在跨平台应用程序上执行这些操作,所以我需要一些可以捆绑到 py2exe、py2app 等中的东西。
我已经做了很多搜索,但我似乎无法得到任何工作。Pysync、rdiff-backup、librsync 都出现了,但我无法在 python 中得到任何工作。
time - 随时间的指数增长 - 我如何计算增量时间的增长?
这可能是一个愚蠢/愚蠢的问题,但我仍然会问它:如果我在时间 0 有一个初始起始值(在我的情况下总是 1.0)和增长率,我如何计算增长在 Time1 和 Time2 之间?
perl - 颠覆存储库中增量的格式是什么,如果我在预提交挂钩中更改它们,我能把它搞砸到什么程度?
帮我做一些伤害!我已经厌倦了仅仅六次谷歌点击告诉我永远不要这样做。让我们把事情搞砸!我很确定我可以获取 db/transactions 中的实际文件,那么我怎样才能以有趣的方式搞砸这些呢?我看过 SVN::Delta,但我什至无法弄清楚它应该做什么(让某人对存储库进行更改的漂亮图表?向 CIA 发送编码消息?)。
我真的不想听到更多为什么不这样做的理由。我在一个有 40 或 50 个人使用颠覆的环境中工作。当我们编码时,我们需要一些密码在 web.config 文件中,在 DataSource.groovy 文件中,你可以命名它。仅仅因为我们把它们留在里面而拒绝提交就像地狱一样烦人。我们必须用手动删除的密码保存文件(我们必须打开这些文件,它们不一定是打开的),然后一旦我们完成提交,我们必须把它们放回去才能继续工作?我想这是一个好主意,如果你只是想在他们每次承诺时都给他们打屁股,直到他们发展出巴甫洛夫反射,从不承诺任何事情。为什么?因为计算机不应该自动执行任务?因为软件客户端不会知道预提交钩子没有
我在这里相当语言不可知论者。向我展示一个如何做你永远不应该做的事情的例子......我应该从预提交编辑哪个文件?我如何解释 DELTA # # # 行之后的 gobbledygook?有没有图书馆可以帮助解决这个问题?让我们玩得开心!
PS说真的,没有人创建一个“坏主意”标签?哇。
ruby-on-rails - Thinking sphinx updates delta index even when no fields are updated
Even when no fields specified in update attributes actually changes , thinking sphinx sets delta = 1 which results in large number of unwanted queries being fired . can we do something to let sphinx know that there was no actual update.
drupal - 我可以重命名 Drupal 块中的“delta”值吗?
当我在视图中添加一个显示并将其显示为一个块时,drupal 会生成一个像这样的增量值:3429ef48c33321bf7e5eb0c441c9f540,我想更简单地重命名它。
我直接在块表中修改增量值,但我的块视图-[delta-value].tpl 没有显示。
我怎样才能做到这一点?
提前致谢!