performance - MongoDB gridFS - 文件名长度、索引、性能

标签 performance mongodb indexing gridfs

我正在研究 gridFS,有几个问题。

1) gridFS通过生成的_id自动索引文件。但大多数时候我都是通过文件名获取文件,那么我应该自己在“文件名”上创建索引吗?

2) gridFS 没有文件夹,只有文件名,但我可以通过使用带有斜杠“/images/avatars/35.jpg”的文件名来模拟文件夹,对吗?

3) 如果我对“文件名”建立索引 - 使用短文件名在性能方面是否更好?我的意思是 - 如果我使用 24 个符号长 + 后缀的用户 _id,例如 "/images/avatar_4f1d36b58e42ba3836ed178e_t.jpg",在这么长的字段上建立索引不会减慢我的系统速度吗?使用短用户登录名而不是 _id 会更好(更快)吗?

最佳答案

1) 如果文件名没有被索引,我会感到非常惊讶。它在整个 API 中使用,我假设它已被索引。

2) 是的,可以,但是没有隐含真正的目录概念。列出文件/目录有点复杂。换句话说,它只是一个标签。

3) 索引使用哈希值或固定长度字符串,因此长键与长键一样容易索引。

关于performance - MongoDB gridFS - 文件名长度、索引、性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8982946/

相关文章:

Java vm 变慢,所有线程都忙于字符串操作

java - 线程本地存储与哈希表

java - 在 If 条件下检查 obj == null 比 obj!=null 性能更有效

python - 有没有办法使collections.Counter(Python2.7)知道其输入列表已排序?

node.js - Mongo/mongoose 模式被缓存在某处

node.js - 通过 json 对象字段中的属性进行 Mongoose 搜索

sql - 添加非聚集索引会锁定我的表吗?

r - 在R中,如何按降序对多列数据进行分组,然后为每个组指定从1开始的索引?

java - 使用 spring-boot 对 Rest 服务进行访问控制

java - 创建一个在每次调用时打印数组列表的不同随机条目的方法?