cs145 has some soft pre-reqs including cs161 and cs111.
Pre-reqs: You should have some familiarity with OS, algorithms and complexity in RAM. We focus on extending these to non-RAM when data does not fit. Also, you should be able to read python code.
Audience: cs145 is about how to use and BUILD data systems. cs145 is not a SQL only class. We spend 66% of our time on how data systems are built. If you're looking for a "how to use a DB" or SQL ONLY class, you may find a better match with the data science course MSE sometimes offers.
Why these pre-reqs? We want to help you figure out when is the right time for you to take the class. Students (in previous years) who didn't have this background, tended to get lost. E.g., we assume you know how SortMerge works in RAM, what is complexity of Sorting n values in RAM, and the idea of paging data between RAM and disk. cs145's goal is focused on 100-1000x bigger data problems. (Sample refresher material: RAM (1st 2 sections), Filesystems and OS, Merge-sort in RAM, Complexity)