- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在本地存储的MySQL数据库上使用了巨大的数据集(> 10M条记录*〜16k)。
用户将按字段A / B / C进行过滤,并返回1-200k条记录。此查询最多需要一分钟
有了这组数据,我想用SQL做进一步的分析。即根据UI中的设置动态更改另一组字段,例如D / E / F,仅在较小的数据集上运行这些进一步的查询。
我的问题是-从概念上讲-在C#/ MySQL中如何最好地解决此问题?
我可以在MySQL服务器上保持原始查询“打开”,并动态调整它以适合吗?
我是否需要将原始查询的整个数据集放入内存,然后在C#中进一步过滤?
我应该将相关数据复制到临时表中并在该表上执行查询吗?
最佳答案
我可以在MySQL服务器上动态地保持原始查询为“打开”吗?
调整以适合?
关于SQL的入门教程(适用于任何存在的SQL Server变体)将向您显示,这不是SQL的工作原理,而是自发明以来就一直如此。已执行查询-要获得不同的结果,请再次询问。
我是否需要将原始查询的整个数据集带入内存,并且
然后在C#中进一步过滤?
不。我要说,在99%的情况下,全部加载然后进行过滤是愚蠢的。是的,我的意思是。建立数据库进行过滤。在大多数情况下,这意味着您不仅要在客户端上使用更多的内存,还必须通过慢速的网络连接来拉数据(是的,与本地内存相比,即使10 GB的速度也很慢),然后才将数据丢弃。这是没有意义的,除了有限的数据集外,还有很多本地过滤,最好是动态过滤(作为用户类型)。诸如“所有国家/地区的清单”之类的限制-足以让我不必担心网络速度等。当您变大时,抛弃价格会变得过高。
我应该将相关数据复制到临时表中,并在
那张桌子?
您为什么甚至认为完全复制+筛选比没有先将整个数据写入另一个表的筛选要快?最重要的是,您遇到了与以前相同的问题-您不得不进行大量工作才能将其丢弃。最重要的是,除非您运行快速SSD的Raid 0,否则您会在临时表中遇到非常慢的介质。
认真地读一本初学者的书。 3个假设,一旦您了解一些基础知识,所有这些假设都有明显的原因是错误的。
关于c# - SQL/C#-多阶段查询,海量数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37168608/
“大规模”的微型 ORM 是否有处理继承的方法? robconery / massive 为 Massive 编写提供程序很难吗? 我需要非常接近 SQL Server 的东西。作为第一步,最好拦截
我编写了一个服务器可以使用的应用程序。此应用程序收集信息,并将其发送到服务器。每 10 秒执行一次。数据量取决于玩游戏的玩家,但让我们将其保持在大约 50 个服务器,每个服务器发送 100 条数据(每
我有一个表,其中包含 3 个字段(用户名、目标值、分数),由用户名 (~400,000) 和目标值 (~4000) 的完整交叉在外部生成,并计算出分数,导致总行数约为 16 亿. 我在这个表上的所有查
我们包括了这个 AndroidPdfViewer library支持在应用程序中查看 PDF 报告。它导致 APK 大小从 4.7Mb 大幅增加到 20.1Mb。 有没有办法减小这个尺寸。让我知道在哪
我在脑海中争论是否应该在 MySQL 中使用大量的多维数组或数据库。我正在为一个业务有很多产品的客户开发。在这个多维数组中,我将包括每个产品的产品标题、描述、图片链接和类别。 我的客户可能有 1000
我是一名优秀的程序员,十分优秀!