How do I create a custom field storage back end? In Drupal the default field storage is in an SQL database. I am creating a custom field type and want it to have non-SQL storage.

In Drupal 7 there was the Field Storage API, which you could use to define your own storage back ends by implementing a module similar to the field_sql_storage module.

How does one do such a thing in Drupal 8?

To give an example usage, I am interested in implementing something similar to Drupal 7's hook_field_storage_load() so I can have fields that load their data from files in the file system.

If it is too complex a thing to give a code example for, a point in the direction of the relevant API and/or default SQL implementation that I can reference should suffice.
Field types implement FieldStorageDefinitionInterface. In Drupal core, there is FieldStorageConfig and BaseFieldDefinition.

So if the desire is to change field storage to an arbitrary file store, then you should create an abstract class similar to BaseFieldDefinition, and have your Field Type classes extend it.