我有一个包含8,000万行的表,我的任务是做一些简单的分析,比如为字段寻找模式,这些字段是相互排斥的等等。
我最初的本能是将整个表放入CSV,这样我就可以使用Pandas或类似的工具,因为我认为它会更快、更容易使用。在找出如何将整个表放入CSV的方法时,一位同事坚持认为这太过分了,传统的方法是直接使用Oracle数据库。
从我的软件背景来看,我的理解是数据库更多的是为了保持大应用程序的状态,而不是让人去摆弄。当有这么大的桌子时,分析的常用方法是什么?什么更快?就我个人而言,我不介意转储数据库所需的时间,但更多的是在进行实际分析时获得反馈所需的时间。
发布于 2016-10-19 10:02:21
直接在数据库上使用SQL可以进行任何分析,如果您已经知道要查找的是什么的话。
当你不知道你在寻找什么,并且你想做模式识别时,在另一个工具中转储和处理的努力可能是值得的。
还可以考虑将Pandas直接连接到您的Oracle数据库(允许您跳过转储数据),看这里有个例子。
https://stackoverflow.com/questions/40126979
复制相似问题