DVD Direct is an entirely Web-oriented movie rental business. Their members order movies from DVD Direct's Web site and the movies are delivered on DVD disks by mail. Members can keep the movies as long as they wish before returning them by mail. However, a member can have at most three movies out at one time.
“I want you to focus on some critical database issues.”
A recent internal study at DVD Direct discovered that many current and potential customers with high bandwidth Internet connections would prefer to have movies delivered over the Internet. Further, the study indicated that current customers who recently switched to high bandwidth connections were very likely to drop their DVD Direct membership. Top management has become concerned that if DVD Direct does not address these findings they will continue to lose high bandwidth members and they may no longer be able to compete in the online movie rental business. This has led Carol, DVD Direct's CEO, to consider some dramatic changes to their business model–the way they do business.
So far, this issue has been formally discussed only in highlevel meetings. However, the rumor mill has been working and almost everyone in the company knows that some type of change is in the works. Alice, a recently hired market analyst, has joined the company at this critical moment for DVD Direct and is about to learn more about the proposed changes. Let's follow Alice as she meets with Bob, the vice president of marketing.
Bob: By now you're as aware as any of us, Alice, of the issue of DVD Direct's changing customer base and the necessity to adjust to these changes. Carol has asked us to investigate the implications of using streaming video to deliver movies directly to our customers over the Internet. In fact, Research has been working on this for some time from a technical angle. Currently, as you know, members use our Web site only to select movies. In the future, our customers may use our Web site to select and to download movies. After selecting a movie, the movie would be immediately downloaded using streaming video technology to the member's hard disk. The movie would automatically erase from the member's hard disk after one week or after the movie was played, whichever occurs first. A change like this has dramatic implications for how we conduct business. It affects almost everything from pricing to inventorying. Before the company can proceed with any of these changes a lot of questions need to be answered. Alice, I want you to focus on some critical database issues. Find out how we currently store movie data and what, if anything, would need to be changed to support online delivery of movies. Go to Computing Services and talk with Harvey. He is their lead database administrator and very knowledgeable. I'll give him a call and tell him to expect you in fifteen minutes. DATA FILES
While walking over to Harvey's office, Alice mentally reviews what she knows about databases. “Databases are large collections of data stored in a manner to allow efficient storage and retrieval. I don't see how a change to streaming video would require any changes to DVD Direct's databases. The movies are the same. The only thing that changes are how they are delivered to our customers,” she thinks. Alice rounds the corner and knocks on the door to Harvey's office.
Alice: Hi, my name is Alice. Have you heard from Bob regarding my visit?
Harvey: Hi Alice. Yes, Bob just called. We all know the streaming video idea is in the wind. I understand that you're here to learn about our current databases.
Alice: Yes, and to discuss any changes that might be required to support streaming video delivery of movies to our customers.
Harvey: Well you came to the right place to learn about DVD Direct's databases. While I didn't create all the databases, I've revamped just about every one of them at one time or another. We have four main databases: PERSONNEL, CUSTOMER, INVENTORY, and MOVIE. The PERSONNEL database contains all information relevant to our employees. The CUSTOMER database keeps the information about our members. The INVENTORY database keeps track of the movie DVDs. The MOVIE database keeps information about our movies and is available to our customers at our Web site. So where would you like to begin?
Alice: Let's start with the MOVIE database. Could you walk me through the process of entering a new movie into the database? That should give me a good feel for how the database is set up.
Harvey: Perfect! I was just about to enter Alfred Hitchcock's classic, Psycho, into our Access database. To begin, we use a form to create a new record and enter the fields.
“I was just about to enter Alfred Hitchcock's classic, Psycho.”
Alice: What do you mean by a record and fields?
Harvey: That has to do with the way in which the data is stored in a database. For example, the title of our movie is Psycho. Each letter in the title Psycho will be stored as a character in the database. The string of characters P, s, y, c, h, and o will be stored in a field labeled TITLE. This way whenever someone wants to search for a particular movie title, the database knows to check the TITLE field. Other fields include the DIRECTOR, YEAR, and MOVIE ID.
Harvey enters the movie title, Psycho, the director, Hitchcock, Alfred, and year released, 1960.
Harvey: The MOVIE ID is automatically entered for us. To enter this record, all we need to do is to press the ENTER key.
Alice: That was easy. But why do we need a MOVIE ID field?
Harvey: The MOVIE ID is a reference number assigned to this particular movie that uniquely identifies this particular record. Fields such as these are called key fields.
Alice: Okay, but why do I need a key field? If we wanted to locate this record, couldn't I just use the movie's title?
Harvey: You would think so, but not always. More than one movie can have the same title. For example, there are two versions of Psycho, one filmed in 1960 and another in 1998. Or some films such as the classic Blade Runner released in 1982 have two versions–the standard version that appeared in movie theaters and a director's cut version that includes the standard version plus additional scenes that were cut from the original. Even though these films have the same TITLE, each has a unique MOVIE ID.
Alice: I didn't think of that. So, all the Classic movies are stored in a file. I assume there are separate files for each type of movie such as Comedies, Westerns, and so on. Combined, all of these files comprise the MOVIE database.
Harvey: You've got it.
Alice: So now that we have entered the movie into the Classics file, we should be able to go to the Web site and view Psycho as one of the available movies to rent, right?
Harvey: Well not exactly. Although we've entered the movie into a file, the database has not been updated yet. During the day, we will be adding several other new movies. Rather than updating the database each time a movie is added or becomes available during the day, the changes are collected throughout the day or batched in special files called transaction files. The files in the database are called master files. At the end of the day, the transaction files are used to update the master files. This is called batch processing. Once the database is updated, the Web site will reflect all the new titles.
Alice: We may want to provide very time-sensitive videos to our customers, for example, a video of a championship boxing match recorded hours earlier in the day or video of recent breaking news events. In these cases, we would want the videos posted immediately to the Web site, wouldn't we? Can batch processing do the job?
Harvey: No. That would require real-time processing. With real-time processing, as soon as a record is added or changed, the database is updated. To support this type of processing we would need some hardware improvements. But it can definitely be done.
Alice: Currently, we send out movies on DVD disk by mail. If we deliver them over the Web, where would the actual videos be located?
Harvey: I don't know a lot about streaming video over the Internet, but I am guessing that we will need to pre-process the movies into a special streaming video format, and the resulting file that we send to the customer will need to be an automated process that can occur fairly quickly. This means we will need the database to include the movie files.
Alice: But I thought that a database was a collection of files; files are a collection of records; records are a collection of fields; and fields are a collection of characters. Now it sounds like you are telling me that a database can also be a collection of movies. How can that be?
Harvey: Excellent question. Right now our database can't handle unstructured data, like movies. You see, our database is organized as a relational database. In a relational database, information is stored in tables and the tables' key fields create relationships between those tables that allow the database to quickly and simply return specified information. But to be able to handle more complex data, like movies, we'll need to use an object-oriented data structure. An object-oriented database can store any type of data, from television video in TV format and movies in DVD format, to photos of movie posters and motion picture personalities, to special audio effects in a variety of different formats.
Alice: I didn't expect that this proposed change to streaming video would affect our databases this much. Let me see if I have the major points. We will have to change our processing from batch to real-time, and we will have to overhaul the entire DBMS organization from relational to object-oriented to handle storage of movie formats in the database.
Harvey: Well, there's at least one more concern—security. Using our current system, when customers order movies online they provide their membership numbers and mailing addresses. The DVD is mailed out the next business day. Before mailing the DVD, we have plenty of time to consult the MEMBERSHIP database to verify the member's identity, mailing address, and payment history. This reduces the chance that a DVD is sent out to an unauthorized individual or an individual who is unlikely to pay for the rental. Actually, the worst case is that we incorrectly send out a copy of the movie on a DVD disk. Or that someone is able to gain unauthorized access to the MOVIE database. In either case, the loss is minimal.
“That's a lot to think about.”
But with the proposed system, a customer orders and downloads a movie at the same time. There would be less time to verify membership or payment history. A greater concern, however, is that someone is able to gain unauthorized access to the MOVIE database. They could obtain a copy of the streaming video version of the movie. It is possible that they could then send, or broadcast, the movie to an unlimited number of people on the Internet! So, developing security controls is at least as important as the other two issues you mentioned, Alice.
Alice: That's a lot to think about. Thanks for your time, Harvey. I need to get back to Bob so I can report my findings.