dan*_*ota 11 python sqlalchemy flask pandas
我正在构建一个烧瓶应用程序,允许用户上传CSV文件(包含不同的列),预览上传的文件,生成摘要统计信息,执行复杂的转换/聚合(有时通过Celery作业),然后导出修改后的数据.上传的文件被读入pandas DataFrame,这使我能够优雅地处理大多数复杂的数据工作.
我希望这些DataFrame以及相关的元数据(上传时间,上传文件的用户ID等)能够持续存在,并且可供多个用户传递到各种视图.但是,我不确定如何最好地将数据合并到我的SQLAlchemy模型中(我在后端使用PostgreSQL).
我考虑过三种方法:
PickleType并直接存储在DB中.这似乎是最直接的解决方案,但意味着我将大型二进制对象粘贴到数据库中.DataFrame.to_json())并将其存储为json类型(映射到PostgreSQL的json类型).这增加了每次访问DataFrame时解析JSON的开销,但它也允许通过PostgreSQL JSON运算符直接操作数据.鉴于每个的优点和缺点(包括我不知道的那些),是否有一种将pandas DataFrames合并到SQLAlchemy模型中的首选方法?
转向JSON和PostgreSQL解决方案.我正在使用Pickle on file系统开始的Pandas项目,并将数据加载到类对象中,以便使用pandas进行数据处理.但是,随着数据变得越来越大,我们使用了SQLAlchemy/SQLite3.现在,我们发现使用SQLAlchemy/PostgreSQL更好.我认为我们的下一步将是JSON.玩得开心!熊猫岩!