Is there any clustering algorithms that:
- does not assume the number of clusters to be known, and
- processes the data in only one pass by considering it as a continuously arriving data stream (and we do not know the data set size beforehand)?
In statistics, the study of streaming data is called sequential analysis. Machine learning has the closely related concept of online learning, the difference being an emphasis on model fitting (regression), rather than hypothesis testing. From the abstract:
To understand the suggested paper (Sequential clustering with particle filtering: Estimating the number of clusters from data), you will need to familiarize yourself with
There might be easier ad hoc solutions but these are useful tools so I recommend learning them anyway.