Question

I couldn't find the advantages and disadvantages of using a database over plain files. Would you please help me?

Was it helpful?

Solution

A few database advantages:

  • Highly optimized (indexing, query optimization)
  • Stores many different types of data, generally with type-safety
  • Prebuilt abstractions (SQL, database access layers)
  • Relational integrity (foreign key constraints, etc)
  • ACID (Mostly having to do with data integrity, check Wikipedia...)
  • Interactive queries (for debugging, running ad-hoc reporting, etc)

Plain text doesn't have much except for the most dead-simple application

  • Can inspect on-disk format
  • Extremely simple in every way
  • No need for a server or linked library, etc.

Basically, if you are doing anything other than the most simple data manipulation (especially if you ever expect to have concurrent modifications, complex relations, multiple users, or even just a lot of data) it's well worth getting used to using a database. PostgreSQL is my favorite, although I'm sure you'll find conflicting views on that one :)

OTHER TIPS

Enforcement of standards.

Improved data accessibility and responsiveness.

Increased productivity.

Improved maintenance through data independence.

Increase concurrency.

Improved backup, recovery and data availability.

Control of data redundancy.

  1. Data consistency.

  2. More information from the same amount of data.

    • Data Warehousing, Data mining
  3. Sharing of data.

  4. Improved data integrity.

  5. Improved security.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top