多选下拉列表中的大量数据 [英] Large volume of data in multi select drop down list

查看:67
本文介绍了多选下拉列表中的大量数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用带有jQuery的MVC4 .NET framework 4.5。后端在Hadoop中。业务用户希望单页UI非常快速且流畅。没有滞后。



我必须在可搜索的多选下拉列表中显示5,00,000(5万/ 5个lac)记录(显示名称)。



请建议如何使用该数据量实现快速响应的用户界面,以便用户可以快速搜索记录并立即选择多个节目名称。它是一个关键业务应用程序,不能承受滞后。谢谢。



我的尝试:



1)直到现在,我已经尝试在IIS中加载Application时缓存ASP.NET缓存中的所有Show名称,然后在UI上将其作为JSON数组抛出。但多选择无法处理该数据量(我正在使用来自数据行为/ examples / js / jquery-multiselect at master·Marak / data-behavior·GitHub [ ^ ])。



我试过在用户搜索时从JSON数组加载下拉列表。这很接近但仍然不是很流畅。



2)搜索时下拉异步加载数据。但这种方法滞后。



3)将所有内容加载到下拉列表中。不起作用。

I am using MVC4 .NET framework 4.5 with jQuery. Backend is in Hadoop. Business users want the single page UI to be extremely fast and fluid. No lags.

I have to display 5,00,000 (5 hundred thousand/5 lac) records (Show names) in searchable Multi select drop down list.

Please suggest how can I achieve fast and responsive UI with that volume of data so that user can search for record quickly and select multiple show names in no time. It is a business critical application and cannot afford lags. Thank you.

What I have tried:

1) Till now I have tried caching all the Show names in ASP.NET cache when Application loads in IIS and then throw it as JSON array on UI. But the multi select is unable to handle that volume of data (I am using multi select drop down control from data-behaviors/examples/js/jquery-multiselect at master · Marak/data-behaviors · GitHub[^] ).

I tried to load the drop down list from JSON array as user searches. This is close but still not very fluid.

2) Async load data in drop down while search. But this approach lags.

3) Load everything at ones in drop down. Doesn't work.

推荐答案

如果您坚持尝试将500,000条记录传输到客户端,则不存在无滞后之类的问题。如果你尝试HTML格式化那么多数据,那就更不用了。



你必须只显示用户可以看到的内容。这意味着分页。一次只显示一页数据,无论屏幕适合什么。如果您要进行过滤,则必须在数据库中进行过滤,以便仅传输适合页面的过滤记录数。让数据库尽可能地完成过滤和分页的繁重工作。这将消除最滞后。



你不会完全消除滞后。你只能尽力减少它。
There is no such thing as "no lag" if you insist on trying to transfer 500,000 records to a client. Even less so if you try to HTML format that much data.

You have to only display what the user can actual see. This means paging. Showing only one page of data at a time, whatever will fit on screen. If you're going to do filtering, you have to do the filtering in the database so it only transfers the number of filtered records that will fit in a page. Get the database to do the heavy lifting of filtering and paging as much as possible. That will remove the most "lag".

You're not going to eliminate the lag completely. You can only do what you can to minimize it.


Quote:

商业用户想要单页UI非常快速且流畅。没有滞后。

我必须在可搜索的多选下拉列表中显示5,00,000(5十万/ 5个lac)记录(显示名称)。

Business users want the single page UI to be extremely fast and fluid. No lags.
I have to display 5,00,000 (5 hundred thousand/5 lac) records (Show names) in searchable Multi select drop down list.



这两个句子是矛盾的,你不能同时拥有两个句子。

500k行的下拉列表也是不切实际的。一个500行的下拉列表已经很难使用。

多选是一个坏主意,有500k行。


The 2 sentences are contradictory, you can't have both at same time.
A drop down list of 500k lines will be also impractical to use. A drop down list with 500 lines is already difficult to use.
The multi select is a bad idea with 500k lines.

引用:

我尝试了什么:

有很多方法可以失败o,你尝试了什么,没有代码就很难检查你做了什么。



我会尝试使用一个带有下拉列表的简单字段作为用户类型和一个包含所有选择的单独网格。

There is numerous ways to fail o, what you tried, It will be difficult to check what you done without code.

I would try to use a simple field with a drop down loaded as user type and a separate grid that hold all the selections.


有时你必须教育用户/客户关于什么是可能的,并用/为他们澄清他们实际需要什么功能。



我无法想象有人在一个人中滚动list-UI包含那么多记录:肯定有一些组织/排序原则,您可以通过它将数据分类到集群中;或者通过具有外卡功能的搜索工具可以满足用户的需求。



如果可能,请与客户会面并观察他们现在正在做什么,并尝试了解他们需要什么样的能力。
Sometimes you have to "educate" the user/client about what is possible, and clarify with/for them what functionality they actually need.

I cannot imagine anyone scrolling around in a list-UI with that many records: surely there is some organizing/sorting principle by which you can categorize the data into clusters; or the user's needs can be met by a search facility with wild-card features.

If possible, meet the client and observe what they are doing now, and try to get a sense of what capabilities they need.


这篇关于多选下拉列表中的大量数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆