【问题标题】:which storage type is good for large data when using dcc.Store()使用 dcc.Store() 时哪种存储类型适合大数据
【发布时间】:2023-01-28 09:27:14
【问题描述】:

对大数据使用 dcc.Store() 时,哪种存储类型好,内存、本地还是会话?

我得到了一个错误

IOPub data rate exceeded.
The notebook server will temporarily stop sending output
to the client in order to avoid crashing it.
To change this limit, set the config variable
`--NotebookApp.iopub_data_rate_limit`.

Current values:
NotebookApp.iopub_data_rate_limit=1000000.0 (bytes/sec)
NotebookApp.rate_limit_window=3.0 (secs)

网页也崩溃显示如下图:

【问题讨论】:

  • 我们在谈论多大的数据(数量级)?
  • json文件大小为3GB

标签: plotly-dash


【解决方案1】:

使用dcc.Store 有限制。它将数据存储在浏览器中,这对于大型/超大型数据集来说并不理想,甚至不适用,因为会出现性能问题。这是组件的这些限制的 list

如果您打算使用 Dash 可视化大型数据集,我推荐一个很棒的工具,它结合了 Django 和 Dash,称为 django-plotly-dash。本质上,您将使用其模型视图方法在 django 中处理所有后端,然后在将与 django 后端集成的 dash 中构建您的仪表板。因此,与其使用 dcc.Store 存储任何大型数据集,不如在回调中查询数据库,从而更有效地可视化大型数据集。

【讨论】:

    【解决方案2】:

    该组件不用于存储大型数据集...它是存储一些将在应用程序中使用的数据的好组件;

    另外,Dash 不是像您提到的那样适合大数据项目的框架。

    如果您需要一些额外的帮助,请随时给我发消息 pvt。

    【讨论】:

    • 我不同意 Dash 不是适合大数据项目的良好框架的说法。如果您适当地设置了您的基础架构,则可以使用 Dash 前端来可视化任何大小的数据。
    • 嘿@ember,如果你能提供任何关于你正在谈论的内容的参考,我将不胜感激......我在为公司构建 dash 应用程序方面有很多经验,并且几乎总是达到它开始表现非常差的程度花费大量时间来呈现图表或在应用程序之间传播数据;请不要误解我的意思,我喜欢 Dash,我经常使用它,但它有利也有弊;
    • 我认为扩展讨论超出了 cmets 的范围,但一些例子是探索 1000 万行数据集的 dash holoviews (github.com/plotly/dash-holoviews-taxi),我用于可视化 GB 大小数据集的 dash terracotta 堆栈 (github.com/thedirtyfew/terracotta-dash-example) 、WebGL 图表类型 (plotly.com/python/webgl-vs-svg) 和 dash-leaflet 标记簇 (dash-leaflet.herokuapp.com/#super_cluster) 用于点可视化(我将后者用于 + 100 万点)仅举几例。
    • 我认为没有任何工具可以在不与数据存储建立适当的后端连接的情况下用于可视化大数据集。
    猜你喜欢
    • 1970-01-01
    • 2012-06-07
    • 2019-07-23
    • 1970-01-01
    • 1970-01-01
    • 2012-03-02
    • 1970-01-01
    • 2019-02-09
    • 1970-01-01
    相关资源
    最近更新 更多