Actions and repeated data need a relational structure.
The customer Hanari Carnes...
...places an order on July 8...
...and another on July 10. One customer, many actions. That kind of repetition needs a relational structure.
So how can you tell if you need a relational structure? By answering a few more questions:
- First, do you have a lot of repeated data? For example, do you constantly enter the names of cities or states? If so, you can put that repeated data into another table and create a relational structure. Doing so can save you time and effort because you don't have to reenter the same information each time you create a new record.
- Second, do you want to track actions or events? For example, do you want to track sales or customer complaints? Any time you want to track an action, a relational data structure usually works best.
If you find yourself answering no to those types of questions, or if you only have a small amount of data and you don't mind looking at repeated information, then feel free to use a flat structure.