Tip:
Highlight text to annotate it
X
Okay, so let's jump right in. Databases.
The first question we want to answer is what is a database?
There's a number of ways of answering this question,
but probably the simplest definition is a program that stores and retrieves data,
particularly large amounts of data, or even more particular,
large amounts of structured data, and we'll talk about what that means in a sec.
Let's go to the picture we've been working on quite a bit in this class.
We've got our user and his computer and the internet and our servers.
Now, up until now, we've been referring to these servers as basically
these are web servers running our web applications.
But in many cases, these servers are actually database servers as well,
and so we might have a special server just for databases.
A database can refer to a program that's storing and retrieving the data,
or it can refer to the machine running this program,
or it can refer to a system of machines running this program operating together.
And just like a web server it may refer to just a program with a web server
or the physical machine or the group of machines all working together
to host your web application.
A request may come in from a user via the internet through our servers,
and then we may need to retrieve some data for that user.
Let's say this is Reddit, and we need to draw the front page,
so we need to get the list of links that we're going to draw,
and we get that from the database,
and then database responds with the data to the web application,
which may manipulate the data and somehow get it ready for display
and then send it back to the user.
But anytime you're storing large amounts of data,
you're probably going to be using a database,
and that is what we're going to spend most of our time in this lecture talking about.