The document discusses using surrogate keys for database entities. It notes that natural keys may not always exist or be suitable as primary keys. A surrogate key is a primary key created by the database designer that has no intrinsic meaning. The document uses an event booking database as an example, where a composite natural key of date, time, and room is proposed. It also discusses a many-to-many relationship between events and resources used, with a composite surrogate key proposed for the linking table to avoid complexity from a lengthy natural key. Surrogate keys are accepted practice when no natural key exists or one is too complex, at the cost of ensuring data integrity through other constraints.