- In order to grasp the fundamentals
of how blockchain technology works,
we first need to cover the basics of a database
in a client server environment.
If you already know
what a traditional relational database is
and how it works,
you might consider skipping this video.
However, I think everyone might enjoy a brief primer
on the topic.
Fundamentally, a database is software
where we store and manage files
and records on a computer system.
We can store these items.
I'll refer to them simply as data from now on
in a structured way or an unstructured way.
Let's first look at a structured database.
I'll use the example of a contacts database,
a place where we store people's names
and their phone numbers.
To find a person and their phone number in the database,
some some software code is run
to search the database and return the correct result.
Well-designed databases can search millions,
even billions of records
and return a result, often in a fraction of a section.
In a structured database,
the data is stored in an organized and logical manner.
Imagine for a moment columns and rows.
In each row is a different person's first and last name
and their phone number
with each distinct piece of data
in its own column, respectively.
We call this a database table,
and because these items have a logical relationship
between each other, we get the term relational database.
Let's now look at an unstructured database.
It's basically the opposite of a structured database
in that no consistent and organized structure exists.
Remarkably, most of the data collected today
is in an unstructured format.
Some say it's as high as between 80 to 90% of all data.
Consider all the data that is collected and stored
on social media platforms, and emails
and other online documents.
Unlike the predictability of a structured contact database
with first name, last name and phone number
in rows and columns,
these unstructured systems
have to manage all manner of data.
In Facebook, for example, posts can include various lengths
and types of text,
and include photos, videos and music.
Fortunately, a healthy ecosystem of providers
has created tools
for managing unstructured data really well.
Both structured and unstructured databases
are the foundation of almost all computing systems
in place today.
Whether it's the internal systems
of an organizations for say financial accounting
or customer contact information,
or for popular commercial services provided
by your bank, Amazon or Google,
it's databases that store
and manage all the content for each one of these.
The databases I've described typically reside
on a high-performance central computer
with access to sizable storage.
It may live in a data center at a business
or at a third-party provider.
Let's use these blocks to illustrate this design,
and then contrast it with another design.
This block in the center represents a central server.
These blocks that surround the server,
we call then clients.
And they access the data on the central server.
This is client server architecture.
These clients can be laptop computers,
smartphones, tablets and other devices.
What we're looking at here
is a centralized architecture
with all database management conducted in one place.
Let's look at another design.
Instead of a central server,
these new blocks I'm placing in the center,
the equivalent of different servers
are all going to contain all, part
or unique data that would have resided
on just a single central architecture.
Clients access data as normal,
often unaware that the data
is decentralized and distributed among systems.
This design is more complex than a centralized system
but it does improve performance
and has better support for failure.
That's because a centralized system technically
has a single point of failure.
Finally, let's look at how client access is managed
in these traditional database environments.
In all instances, there are mechanisms
for allowing certain people
to have specific access privileges.
One access type may enable a user
to just look up information in the database,
while another type may enable writes to add
or delete data.
In every instance where rights are granted to a user,
there's an authority that provides those rights.
A quick example may really help here.
Imagine a university system
that contains student grades.
Professors can enter and change grades
but students can only view grades.
A system administrator would assign
and manage those access rights to professors and students.
This simplified explanation of database security
generally serves organizations well.
But it has limitations.
For example, what happens if someone
who is not authorized obtains certain rights
and gains access to a database.
Depending on the access level,
they can create, read, update and delete records,
causing all sorts of problems.
It happens more often that we would like.
Students, for example,
shouldn't be able to change their grades.
What you'll soon discover is that at its heart,
a blockchain is a new type of database
with a specific network architecture.
It leverages the positive elements
of a traditional database and reinvents other elements
in order to overcome existing challenges.
What will become clear as we continue in this course
is that in redesigning these systems,
blockchain creates a completely new platform for innovation.