【发布时间】:2019-01-17 01:10:22
【问题描述】:
我有一个大的时间序列数据表。 ~ 8 亿行。我需要正确索引这个大型数据集。我的 UI 有下拉菜单输入作为查询选择器,允许用户更新数据集/可视化。有 7 个潜在的用户输入会提示对表进行查询
通常查询顺序保持一致。阶段>周>团队>对手>地图>回合>统计。我应该在这个序列上创建一个多列索引吗?或者我应该应用多个多列索引?或者第三种选择单独索引作为用户输入的每一列。哪种方法最有效?
def timeseries (map,stage,week,stat,team,opponent,round):
teams=[team,opponent]
df=df[df.match_id == id_dict[stage][week][team][opponent]]
df=df[df.mapname == map]
df=df[df.stat_type == stat]
df=df[df.team.isin(teams)]
df=df[df.map_round == round]
--> df to visualization.
match_id 的第一个过滤器需要解决一些问题,因为用户实际上是根据其他输入选择器间接选择匹配 id。 (id_dict 返回游戏的单个匹配 id)
【问题讨论】:
标签: python postgresql