How to pull only fixlet results that have changed since last time I checked?

I’m new to relevance language, but I am trying to create a relevance query that gets all fixlet results that have changed since the last time I ran the query. I would ultimately like to have a script run this relevance against BigFix’s SOAP API at a regular interval in order to send these fixlet result change “events” to another tool for analysis.

Below I have a relevance query created but I am finding that it performs poorly against large data sets (200k computers, 100k+ fixlets) Any ideas for how I can optimize this relevance or get this “event” data in another way?

(	
	id of fixlet of it as string,
	id of computer of it as string,
	relevant flags of it,
	first became relevants of it as string,
	last became relevants of it as string,
	last became nonrelevants of it as string
) of results 	
whose (	
	first became relevant of it >= "26 Sep 2018 14:05:00 -0700" as time 
	OR last became relevant of it >= "26 Sep 2018 14:05:00 -0700" as time  
	OR last became nonrelevant of it >= "26 Sep 2018 14:05:00 -0700" as time 
) of bes fixlets