Вы не сообщили главного - в сколько параметров описывают ваши данные?
При двух-трех параметрах время вряд-ли будет катастрофически долгим.
Тем не менее.
Попробуйте DBSCAN например. Он не требует обработки всех данных на каждом шаге. Его вычислительная сложность O(NlogN), в худшем случае - O(N**2). Вот тут
https://habr.com/ru/post/322034/
его рекомендуют для случая, когда у вас данных порядка 10**6 и даже больше, если можете распараллелить реализацию.