  The internet has caused tremendous changes since its appearance in the 1980s,
and now, the Internet of Things (IoT) seems to be doing the same. The potential
of IoT has made it the center of attention for many people, but, where some see
an opportunity to contribute, others may see IoT networks as a target to be
exploited. The high number of IoT devices makes them the perfect setup for
staging denial-of-service attacks (DoS) that can have devastating consequences.
This renders the need for cybersecurity measures such as intrusion detection
systems (IDSs) evident. The aim of this paper is to build an IDS using the big
data platform, Apache Spark. Apache Spark was used along with its ML library
(MLlib) and the BoT-IoT dataset. The IDS was then tested and evaluated based on
F-Measure (f1), as was the standard when evaluating imbalanced data. Two rounds
of tests were performed, a partial dataset for minimizing bias, and the full
BoT-IoT dataset for exploring big data and ML capabilities in a security
setting. For the partial dataset, the Random Forest algorithm had the highest
performance for binary classification at an average f1 measure of 99.7%, as
well as 99.6% for main category classification, and an 88.5% f1 measure for sub
category classification. As for the complete dataset, the Decision Tree
algorithm scored the highest f1 measures for all conducted tests; 97.9% for
binary classification, 79% for main category classification, and 77% for sub
category classification.
