Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.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
Vb.net 社交网站-What';这是实现';用户搜索';内存中(没有SQL)?_Vb.net - Fatal编程技术网

Vb.net 社交网站-What';这是实现';用户搜索';内存中(没有SQL)?

Vb.net 社交网站-What';这是实现';用户搜索';内存中(没有SQL)?,vb.net,Vb.net,我正在用VB.NET编写一个社交网络应用程序,目标用户群为100-200万 所有用户数据都将存储在“用户”对象的字典中,其属性包括国家、地区、年龄等。我需要对内存中的多个用户属性执行搜索-我没有使用SQL 对多个属性实施“用户搜索”最有效的方法是什么 其他信息 我目前使用UserID作为字典的键,这很好,因为大多数(非搜索)查找都是通过UserID进行的。我正在考虑使用多个字典作为索引,使用其他用户属性作为键,这可行吗?我真的只是试图避免对所有用户进行彻底的逐字搜索。可能是LINQ to对象,但

我正在用VB.NET编写一个社交网络应用程序,目标用户群为100-200万

所有用户数据都将存储在“用户”对象的字典中,其属性包括国家、地区、年龄等。我需要对内存中的多个用户属性执行搜索-我没有使用SQL

对多个属性实施“用户搜索”最有效的方法是什么

其他信息
我目前使用UserID作为字典的键,这很好,因为大多数(非搜索)查找都是通过UserID进行的。我正在考虑使用多个字典作为索引,使用其他用户属性作为键,这可行吗?我真的只是试图避免对所有用户进行彻底的逐字搜索。

可能是LINQ to对象,但如果您计划使用一百万用户,我会使用多个字典列表,尤其是如果用户对象的属性能够更改的话。(例如,所有用户名以进入一个列表、B-C进入另一个列表等开头的用户)

我的印象是Dictionary的哈希表实现可以处理100万个条目而不会出现性能问题?我可能需要对此进行更多的研究——不管怎样,这实际上是搜索问题的一个次要问题。我认为当许多更新试图在一些共享内存上进行时,性能问题就会出现,从而导致太多锁。将其分离将使您的整个用户列表在更新完成时不需要锁定。感谢您的澄清。这是一个相当“轻写”的应用程序,但这确实可能是一个问题。