我有一个很大的数据集,1100万行,我把数据加载到熊猫。然后,我想要构建一个空间索引,如rtree或quad tree,但是当我将其推入内存时,它会随着已读取大文件而消耗大量内存。Hdf5和空间索引
为了帮助减少内存占用,我试图将索引推送到磁盘。 您可以将树存储在表中吗?甚至是一个数据框并将其存储在hdf表中?有更好的策略吗?
谢谢
我有一个很大的数据集,1100万行,我把数据加载到熊猫。然后,我想要构建一个空间索引,如rtree或quad tree,但是当我将其推入内存时,它会随着已读取大文件而消耗大量内存。Hdf5和空间索引
为了帮助减少内存占用,我试图将索引推送到磁盘。 您可以将树存储在表中吗?甚至是一个数据框并将其存储在hdf表中?有更好的策略吗?
谢谢
是的,r-树可以很容易地存储在磁盘上。 (KD树和四叉树的难度更大)
这就是为什么索引是面向块的 - 块大小是为了匹配小时驱动。
我不使用熊猫,也不会给图书馆推荐。
感谢您的评论 – JabberJabber
基本的R-Trees并不是那么好,R * Tree(RStarTree),X-Tree或STR-Tree(排序瓦片递归加载的R-Tree)怎么样? – TilmannZ
它们都是r树,只是一些变化,但它们都是为磁盘使用而设计的。 –
这个问题有点偏离主题。我相当肯定mysql可以处理存储和检索树。 – James
我不确定这个问题的含义是什么,但是如何在熊猫中批量读取数据集呢? – Peaceful
@peaceful我试图问我是否有一个非常大的数据集,而且我不想只有一个rtree索引到内存中,是否有策略来执行此操作或现有程序包? – JabberJabber