You first need to create areas on your hard disk (HDD) to store data. This also equates to the amount of data you will store. When partitioning, you are basically slicing up available HDD space. Partitions are labeled by their physical nature first, then logical. The first disk is /dev/hda and the second disk is /dev/hdb. The first partition on the first disk is /dev/sda1 and the second partition on the first disk is /dev/sda2. This labeling continues regardless of the number of disks or partitions.
With a filesystem, you are telling the disk how you want to store data. In the real world, you might use a filing cabinet or you may just use piles to store things. On a hard disk in a partition, you lay out how you want your data stored. There are numerous filesystems for Linux.
From “CompTIA Linux+ Powered by Linux Professional Institute Study Guide”, Filesystems are basically just big data structures—they’re a means of storing data on disk in an indexed method that makes it easy to locate the data at a later time.