我有以下有趣的问题。
我在过去16年中有大约140个国家的月度数据(16 * 12 = 192个月)。
用户可以选择两个日期:monthA和monthB。然后,计算机将计算所有140个国家的两个月之间的价值变化。
到目前为止,我的想法是使用累计总数预先计算数据。这意味着如果monthA = 20且monthB = 100,计算机只需要从monthA(即monthB-monthA)中减去monthB,即可获得140个国家/地区中每个国家/地区的价值变化。
虽然只有192个月,但是月份组合的数量导致n(n-1)/ 2 ==> 192(191)/ 2 ==> 18,336种组合。当乘以国家数量时,这相当于:18,336 * 140 = 25.67亿组合。
这些当然可以预先计算,并在加载时加载到Web应用程序中。但文件大小会非常大,导致页面加载时间过长。
我的想法是为每个国家/地区创建每月的累计总数:140 * 192 = 26,880个要从文件加载的元素。我当时认为浏览器会计算出256.7万种组合并将它们存储在内存中。
本练习的目标是在用户选择不同日期时获得极快的响应。这个上下文是在D3应用程序中,用户可以使用滑块控件快速选择一系列日期(可能每秒多达80个)。
是否有任何身体有更好的评价...?
哪些javascript / D3数据结构可以实现最快的响应时间......?