基本上我有一个包含用户页面浏览量的表。
喜欢
flask-login
尝试通过导数函数从包含约100万条记录的表中选择行,以计算每个位置花费的时间
目前我想到的是
class User(UserMixin):
def __init__(self, name, id, active=True):
self.id = id
self.name = name
self.active = active
def get_id(self):
return self.id
@property
def is_active(self):
return self.active
但这确实没有效率,它返回的行持续10分钟+ 因此,寻找更健壮的解决方案。
我的最终目标是对此有所帮助
CREATE TABLE `pageViews` (
`statId` int(11) NOT NULL AUTO_INCREMENT,
`deviceId` varchar(36) DEFAULT NULL,
`userId` varchar(36) DEFAULT NULL,
`sessionId` varchar(36) DEFAULT NULL,
`actionType` varchar(45) DEFAULT NULL,
`actionDetail` json DEFAULT NULL,
`browser` varchar(250) DEFAULT NULL,
`resolution` varchar(10) DEFAULT NULL,
`language` varchar(10) DEFAULT NULL,
`uri` varchar(250) DEFAULT NULL,
`location` varchar(300) DEFAULT NULL,
`initial` tinyint(4) DEFAULT NULL,
`containerId` int(11) DEFAULT NULL,
`stepId` int(11) DEFAULT NULL,
`creationDate` bigint(13) DEFAULT NULL,
`logged` tinyint(4) DEFAULT '0',
PRIMARY KEY (`statId`),
KEY `event_creationDate` (`sessionId`,`creationDate`),
KEY `containerId_stepId` (`containerId`,`stepId`,`uri`),
KEY `containerId_initial` (`containerId`,`initial`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
赞赏对索引,sql等的任何评论