Javascript 在桌面应用程序和在线应用程序上存储并可视化超大社交图

Javascript 在桌面应用程序和在线应用程序上存储并可视化超大社交图,javascript,graph,nosql,bigdata,Javascript,Graph,Nosql,Bigdata,有人知道存储和可视化具有数百万条边的大型图形的最有效方法吗 我知道盖菲。但它无法想象如此大的数据集(至少在我有4G内存的笔记本电脑上。它总是崩溃或内存不足)。还有其他软件可以处理吗?或者Gephi可能还有其他一些技巧来可视化如此大的数据集 我使用python库NetworkX来处理这个图,它工作得很好。但存储图形是另一个问题。到目前为止,我使用文本文件和二进制文件pickle来存储图形。很好。但我的研究也涉及到节点对之间的计算,可能高达1亿对。计算它们需要时间,但存储和查询它们似乎需要更多时间。

有人知道存储和可视化具有数百万条边的大型图形的最有效方法吗

我知道盖菲。但它无法想象如此大的数据集(至少在我有4G内存的笔记本电脑上。它总是崩溃或内存不足)。还有其他软件可以处理吗?或者Gephi可能还有其他一些技巧来可视化如此大的数据集

我使用python库NetworkX来处理这个图,它工作得很好。但存储图形是另一个问题。到目前为止,我使用文本文件和二进制文件pickle来存储图形。很好。但我的研究也涉及到节点对之间的计算,可能高达1亿对。计算它们需要时间,但存储和查询它们似乎需要更多时间。我尝试使用传统的数据库,比如Postgre,但是存储和查询的速度都非常慢。我还尝试了一个nosqldb,Neo4j,它用于存储图形数据,但是将整个图形和计算结果转储到其中的速度非常慢。存储2/5的数据花了大约20个小时,然后我不知从哪里得到了一个错误。有人能给我推荐一些其他强大的工具来解决这个问题吗

另外,我的老板让我在图表上建立我的研究结果的在线可视化版本。从之前的图表经验来看,我认为普通的js库无法处理如此大的数据集。我知道我确实需要为可视化和交互构建一些数据层次结构,但是从数据库到浏览器端库,我应该采用什么样的体系结构或框架

PS我不是一个原创的计算机科学人,所以我的技术知识是有限的,误用术语可能是不可避免的


欢迎提出任何建议

是的,我无法想象D3试图运行数百万点的数据。如果没有一些减少数据集的创造性方法,我不确定基于web的版本是否可行。无论您选择什么图形可视化软件,在可视化任何内容之前,都必须进行一些主要的数据缩减。由于您显示的信息量很大,屏幕空间根本不足以显示整个数据集;不在任何屏幕上。所以,你最好选择你最喜欢的可视化软件,并减少你的数据集以适应。是的,我无法想象D3试图运行数百万点的数据。如果没有一些减少数据集的创造性方法,我不确定基于web的版本是否可行。无论您选择什么图形可视化软件,在可视化任何内容之前,都必须进行一些主要的数据缩减。由于您显示的信息量很大,屏幕空间根本不足以显示整个数据集;不在任何屏幕上。因此,您最好选择您最喜欢的可视化软件,并减少数据集以适应需要。