我发现自己面临一个难题,其答案可能超出了我的专业知识范围。我希望有人能帮忙。
我有一个优化且高效的查询来获取表(和链接)数据,其实际内容并不重要。但是,在每次读取时,都需要处理该数据以以 JSON 格式呈现数据。正如我们所说的典型示例,几百行可能有几十万关联行,这需要时间。借助多线程和强大的 CPU (i7 3960X),此处理时间约为 400 毫秒 - 100% CPU 时为 800 毫秒。我知道的不是很多,但为什么每次都首先处理它?
在这个特定的示例中,尽管我读过的所有内容都指向不这样做(据我了解),但我正在考虑将计算的 JSON 存储在 VARCHAR(MAX) 列中以便快速阅读。
为什么?好吧,每次写入(更改)都会读取数据 100 次或更多,在我看来,考虑到这些数字,存储 JSON 以优化检索并在奇怪的情况下重新计算和更新关联会更好已更改 - 写入更改所需的时间可能会增加 10 到 20 毫秒,但会大大提高读取速度。
您对此的意见将不胜感激。