Much of the common data components in Drupal are now handled as entities and entity types, which abstract the data from its storage, so that you don't have to know how or where it's stored - you just make requests using standard API nomenclature and the backend handles the rest.
Drupal 8 introduced the configuration registry for holding simple data that should persist between instances of a site (development, test, production), and can also be used as a data storage backend for simple entity types (e.g. user roles and content types).
Beyond that, there are still some types of non-entity data you may be of interest and value, and every once in a blue moon you may even need to directly access the database (though this isn't recommended in most cases.)