csv文件非常大,1~100GB。而这些数据实际上并不是网络请求的格式。
例如,在一个csv文件中有一列 ip ,我想选择那些位于美国地区的列。但是在csv文件中,它存储在类似“123.123.123.123”中,它与区域完全无关。
这里我有两个解决方案:
1)使用脚本中的其他工具解析 ip 区域,例如geoip。
但这会占用一些计算机资源。然而,如果文件很大,读取csv文件是一项很大的工作,比如1~100GB。
2)重新构建csv文件并在csv文件中添加列区域
然后我们可以使用其他工具(如pandas)来动态解析csv文件。它可以实时读取csv文件。但我还不知道与SQL相比,熊猫有多快/慢。
3)重新构建csv文件作为解决方案2)但将这些大数据存储在数据库中,例如PostgreSQL
因为csv数据非常大而且只存储在原始数据中,而不是以索引格式存储。
这是在csv文件将每月彻底更新的情况下。如果使用解决方案3),则必须每月更换存储在数据库中的数据。
我希望网络请求快速,数据处理非常方便。
你的建议是什么?
谢谢!