Reasonable Size Limit to options entry

Each page load triggers a database query that reads all the options (from what I’m aware the option records are all auto-loaded).

Anyway 317 K is not something you should worry about, but there are better ways to store your data, for example a simple text file that gets read trough ajax only when the search is being made (first character typed I guess).

You can cache the data after the first load if you want, using wp_cache_set() (and delete it when you’re updating the list). You need some persistent object cache plugin to keep it across page requests.