首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >YDN-DB能同时处理大型条目吗?

YDN-DB能同时处理大型条目吗?
EN

Stack Overflow用户
提问于 2014-03-19 23:50:54
回答 2查看 567关注 0票数 1

我在使用Ydn-db检索大量数据时遇到了困难。

问题是:

-I有一个大的JSon文件,我想将它存储在我的应用程序中,以便脱机使用它。

-I查询文件,然后使用db.put成功保存数据

-Then,如果我使用db.values“打印”存储的数据,我只能得到以前保存的部分文本。

您还可以测试它,在这里给出的Todo示例:http://dev.yathit.com/demo/ydn-db/todo.html

如果您输入,假设输入中有一个1MB的文本,您将不会保存整个文本,但只保存其中的一小部分。

有办法解决这个问题吗?

谢谢!

编辑:下面是我所说的http://flatic.com/test.html的一个工作示例

编辑2:好的,我想我找到了一个临时的解决方案,看起来YDN-DB不能存储超过100个Json对象,所以与其直接保存Json数据,不如:

代码语言:javascript
复制
db.put('table',largeJsonData);

我首先将largeJsonData作为字符串放在一个简单的Json中,如下所示:

代码语言:javascript
复制
var data = {
"json":largeJsonData
};

db.put('table',data);

现在我可以读取数据了:

代码语言:javascript
复制
db.values('table').done(function(items) {
console.log(items[0].json);
});

但是,您将无法通过任何给定的Id进行索引搜索或获取特定的值。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-19 23:58:16

请通过一个简单的测试来证明你的索赔。我不认为浏览器限制为每条记录1mb。如果失败了,就会完全失败。部分承诺是不可能的。

如果是websql,则可能在JSON序列化过程中丢失。有可能。还没测试过。

编辑一个又一个问题更新。

您的数据不是文本,而是解析它,并成为JSON对象的数组。db.put将单独插入它们作为一个单独的记录。db.values有100个记录限制。如果你对db.values('todo', null, 100000)设置了一个限制,你应该得到所有的限制。

100限制对于用户来说是常见的惊喜。我讨厌在API上大吃一惊。但我还是觉得这种方法应该有限度。

票数 1
EN

Stack Overflow用户

发布于 2014-03-20 02:20:23

在演示中,浏览器似乎正在截断输入字段。

String.length给你英语的字节数。我使用了复制/粘贴.87 mb字符串"stackoverflow.com|":https://gist.github.com/editor/f85257b29f51ac5a3280

您可以看到,这里我取了我的big_string并将其赋值给输入字段值。

当我把它读回来时,它会变小397308字节。

的确,IDB受到其实现技术的约束( Chrome中的LevelDB,火狐中的SQLLite )。例如,我保证对于大型数据对象,写操作会很低。但是,如果觉说没有图书馆的限制,作为图书馆的作者,我会信任他,就YDN而言。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22520646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档