Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String MongoDB,存储N大小字符串的最有效方法是什么_String_Mongodb_Database Performance - Fatal编程技术网

String MongoDB,存储N大小字符串的最有效方法是什么

String MongoDB,存储N大小字符串的最有效方法是什么,string,mongodb,database-performance,String,Mongodb,Database Performance,我正在建模一个应用程序,其中许多不同的文档可以有许多“TextBlock”文档。TextBlock文档将负责存储用户提供的自然语言的1到10000个字符的字符串 为了便于论证,让我们假设: 25%的文本块将存储2500个或更少的字符 25%将存储>2500到5000到7500到我正在寻找此文档,我猜2个文档分配的权力取决于每个文档。理论上,如果我只需要在文本块的数据改变大小时执行unset,那么使用“small”、“medium”、“long”、“extraLong”字段可能不是个坏主意。以下

我正在建模一个应用程序,其中许多不同的文档可以有许多“TextBlock”文档。TextBlock文档将负责存储用户提供的自然语言的1到10000个字符的字符串

为了便于论证,让我们假设:

  • 25%的文本块将存储2500个或更少的字符

  • 25%将存储>2500到5000到7500到我正在寻找此文档,我猜2个文档分配的权力取决于每个文档。理论上,如果我只需要在文本块的数据改变大小时执行unset,那么使用“small”、“medium”、“long”、“extraLong”字段可能不是个坏主意。以下内容也很有趣,您提到的这篇文章描述了旧存储引擎的内存分配(MongoDB 3.2+默认情况下使用另一个引擎)-只是为了确保您注意到这一事实。此外,我认为将相同的数据分成4个不同的模型不是一个好主意——这将增加维护数据的额外麻烦。10000字符*2字节/字符(utf8)=20KB。我不认为这是MangGDB的大文档。我不确定,但我认为您只能面对索引(构建、存储和使用索引)这样的长字符串字段(当然,如果您需要索引的话)。我们需要调查这个问题。这同样是一个关于数量的问题。在某些方面,开发的主干类似于桌面发布套件。假设每个用户都在写数百个文本块,我在寻找这个文档,我的猜测是2个文档分配的权力取决于每个文档。理论上,如果我只需要在文本块的数据改变大小时执行unset,那么使用“small”、“medium”、“long”、“extraLong”字段可能不是个坏主意。以下内容也很有趣,您提到的这篇文章描述了旧存储引擎的内存分配(MongoDB 3.2+默认情况下使用另一个引擎)-只是为了确保您注意到这一事实。此外,我认为将相同的数据分成4个不同的模型不是一个好主意——这将增加维护数据的额外麻烦。10000字符*2字节/字符(utf8)=20KB。我不认为这是MangGDB的大文档。我不确定,但我认为您只能面对索引(构建、存储和使用索引)这样的长字符串字段(当然,如果您需要索引的话)。我们需要调查这个问题。这同样是一个关于数量的问题。在某些方面,开发的主干类似于桌面发布套件。假设每个用户正在编写数百个文本块