
Concept explainers
Explanation of Solution
a. Recommendations of required
Recommendations make regarding the type and characteristics of the required data base system are as follows:
- • The magazine publishing organization wants a distributed system with distributed database capabilities.
- • The distributed system will be distributed among the organization locations in Tennessee, South Carolina, Florida, and Georgia.
- • The distributed transparency features such as transaction transparency, fragmentation transparency, performance transparency, and replica transparency are supported by the Distributed Database Management System (DDBMS).
- • Heterogeneous competency is not a compulsory feature since the customers assume there is no existing Database Management System (DBMS) in place and that the organizations needs to normalize on a single DBMS.
Explanation of Solution
b. Data fragmentation needed for tables:
The data fragmentation needed for “CUSTOMER”, and “INVOICE” table is as follows:
The database is horizontally partitioned using the “REGION” attribute for the “INVOICE” table and the “STATE” attribute for the “CUSTOMER” table.
Explanation of Solution
c. Criteria used to partition the database:
The criteria “horizontal fragmentation” is used to partition the database.
Horizontal fragmentation of the “INVOICE” table by region is as follows:
Fragment name | Location | Condition | Node name |
I1 | Tennessee | REGION_CODE = “TN” | NAS |
I2 | Georgia | REGION_CODE = “GA” | ATL |
I3 | Florida | REGION_CODE = “FL” | TAM |
I4 | South Carolina | REGION_CODE = “SC” | CHA |
Horizontal fragmentation of the “CUSTOMER” table by state is as follows:
Fragment name | Location | Condition | Node name |
C1 | Tennessee | REGION_CODE = “TN” | NAS |
C2 | Georgia | REGION_CODE = “GA” | ATL |
C3 | Florida | REGION_CODE = “FL” | TAM |
C4 | South Carolina | REGION_CODE = “SC” | CHA |
Explanation of Solution
d. Database fragments:
Following are the database fragments with node names, location, fragment names, attribute names, and demonstration data.
Fragmentation of “INVOICE” table:
Fragment “I1” of “INVOICE” table with location “Tennessee”, and node “NAS” is as follows:
INV_NUM | REGION_CODE | CUS_NUM | INC_DATE | INV_TOT |
213342 | TN | 10884 | 1-NOV-15 | 45.95 |
209987 | TN | 10993 | 15-FEB-16 | 45.95 |
Fragment “I2” of “INVOICE” table with location “Georgia”, and node “ATL” is as follows:
INV_NUM | REGION_CODE | CUS_NUM | INC_DATE | INV_TOT |
198893 | GA | 11887 | 15-AUG-15 | 70.45 |
224345 | GA | 13558 | 1-JUN-16 | 45.95 |
Fragment “I3” of “INVOICE” table with location “Florida”, and node “TAM” is as follows:
INV_NUM | REGION_CODE | CUS_NUM | INC_DATE | INV_TOT |
200915 | FL | 10014 | 1-NOV-15 | 45.95 |
231148 | FL | 15998 | 1-MAR-16 | 24.95 |
Fragment “I4” of “INVOICE” table with location “South Carolina”, and node “CHA” is as follows:
INV_NUM | REGION_CODE | CUS_NUM | INC_DATE | INV_TOT |
243312 | SC | 21562 | 15-NOV-15 | 45.95 |
231156 | SC | 18776 | 1-OCT-16 | 45.95 |
Fragmentation of “CUSTOMER” table:
Fragment “C1” of “CUSTOMER” table with location “Tennessee”, and node “NAS” is as follows:
CUS_NUM | CUS_NAME | CUS_ADDRESS | CUS_CITY | CUS_STATE | CUS_SUB_DATE |
10884 | James D.Burger | 123 Court Avenue | Menphis | NV | 8-DEC-16 |
10993 | Lisa B.Barnette | 910 Eagle Street | Nashville | NV | 12-MAR-17 |
Fragment “C2” of “CUSTOMER” table with location “Georgia”, and node “ATL” is as follows:
CUS_NUM | CUS_NAME | CUS_ADDRESS | CUS_CITY | CUS_STATE | CUS_SUB_DATE |
11887 | Ginny E.Statton | 335 Main street | Atlanta | GA | 11-AUG-16 |
10993 | Anna H.Ariona | 657 Mason Ave. | Dalton | GA | 23-JUN-17 |
Fragment “C3” of “CUSTOMER” table with location “Florida”, and node “TAM” is as follows:
CUS_NUM | CUS_NAME | CUS_ADDRESS | CUS_CITY | CUS_STATE | CUS_SUB_DATE |
10014 | John T.Chi | 456 Brent Avenue | Miami | FL | 18-NOV-16 |
15998 | Lisa B.Barnette | 234 Ramala Street | Tampa | FL | 23-MAR-17 |
Fragment “C4” of “CUSTOMER” table with location “South Carolina”, and node “CHA” is as follows:
CUS_NUM | CUS_NAME | CUS_ADDRESS | CUS_CITY | CUS_STATE | CUS_SUB_DATE |
21562 | Thomas F.Matto | 45 N.Pratt Circle | Charleston | SC | 2-DEC-16 |
18776 | Mary B.Smith | 526 Boone Pike | Charleston | SC | 28-OCT-17 |
Explanation of Solution
e. Distributed database operations supported at each remote site:
The following table show the map of the location, the fragments at each location, and the type of transaction or request support to need to access the data in the distributed database.
Fragment | NAS | ATL | TAM | CHA |
INVOICE | I1 | I2 | I3 | I4 |
CUSTOMER | C1 | C2 | C3 | C4 |
Distributed operations required | None | None | None | None |
From the above table, there is no interstate access of “INVOICE” or “CUSTOMER” data is required. Therefore, there is no distributed database access is required in the four nodes such as “NAS”, “ATL”, “TAM”, and “CHA”.
Explanation of Solution
f. Distributed database operations supported at headquarters site
The following table show the map of the location, the fragments at each location, and the type of transaction or request support to need to access the data in the distributed database.
Fragment | NAS | ATL | TAM | CHA | Headquarters |
INVOICE | I1 | I2 | I3 | I4 | |
CUSTOMER | C1 | C2 | C3 | C4 | |
Distributed operations required | None | None | None | None | Distributed request |
For the headquarters, the manager needs to able to access the data in all four nodes such through a single SQL request. Therefore, the Distributed Database Management System (DDMS) must support distributed requests.
Want to see more full solutions like this?
Chapter 12 Solutions
EBK DATABASE SYSTEMS: DESIGN, IMPLEMENT
- I need help writing pseudocode for this function. The following pseudocode statement calls a function named half, which returns a value that is half that of the argument. (Assume both the result and number variables are Real.) Set result = half(number)arrow_forwardNeed help converting my pseudocode to python, AND have a flowchart showing everything!The code:Main Module Call InputModuleEnd Main Module Module InputModule // This module gets input from the user Declare Principal, AnnualRate, Years as Float Output "Enter the Principal amount (P): " Input Principal Output "Enter the Annual Interest Rate (in percentage, e.g., 5 for 5%): " Input AnnualRate Output "Enter the number of Years to repay the loan: " Input Years Call DisplayPayment(Principal, AnnualRate, Years)End Module Module DisplayPayment(Principal, AnnualRate, Years) // This module calculates and displays the monthly payment Declare R, N as Float Declare MonthlyPayment as Float Declare PowerFactor as Float // second local variable // Calculate monthly interest rate R and number of months N Set R = (AnnualRate / 100) / 12 Set N = Years * 12 // Calculate PowerFactor = (1 + R)^N Set PowerFactor = (1 + R) ^ N // Calculate…arrow_forwardWhats wrong with my pseudocode? Where did I make an error?Code: Module main() Declare Real mileage Call getMileage() Display “You’ve drive a total of “, mileage, “ miles End Module Module getMilage() Display “Enter your mileage: “ Input mileage End Modulearrow_forward
- I need help!! Writing a long pseudocode for a modular program that will display the monthly payment on a mortgage. P=Principal amount borrowed (loan)R=Rate of interest computed for each monthN=Number of months to pay back the loan or mortgageThe help I need is creating a module that you can input the principle, rate of percentage, and years to repay the loan, and another module "displaypayment" that accepts the 3 values and calculates the monthly payment needed for the rates. Lastly 2 local variables needed!Equation:Monthly Payment=[(R*(1+R)^N)/((1+R)^N-1)]*Parrow_forwardTwo pseudocode questions I need help with: How do I design a module called findSum that will display the sum of two integer passed by parameter, and a module called findArea that will display the area of a rectangle when passed 2 real values for the length and width of the rectangle?arrow_forwardFor the pseudocode module, what is displayed with the call findValue(1, 4, 2)?Module findValue(Integer a, Integer b, Integer c) Declare Integer value value = b + c - a Display valuearrow_forward
- I need help finishing my python rock paper scissors code, where it asks the user "rock, paper, scissors", the user types either option (repeatedly asks until its one of the three), and for a random option from the code to select also rock paper scissors. The end result would be you winning, code winning, or a tie.My code:import randomOPTIONS = ("ROCK", "PAPER", "SCISSOR") def getInput(): """ Function getInput() will receive and validate user input to be the string ROCK, PAPER, or SCISSOR. Input must be spelled correctly and in all capital letters. Function will return the validated input @return user input as ROCK, PAPER, OR SCISSOR """ #need help here def checkWinner(user, computer): """ Function checkWinner will accept 2 string parameters that must be unique values of ROCK, PAPER, or SCISSOR. Functions should return true if the string in parameter user beats the string in parameter computer in a game of rock…arrow_forwardI need help understanding how could I got the IP Address for the 1st Host on this Subnet, the IP Address for the Last Host on this Subnet & the Broadcast Address for this Subnet My Explanation:8 bits --> 17 & 0 128 64 32 16 | 8 4 2 1 0 0 0 1 0 0 0 1 -->17+ 0 0 0 0 0 0 0 0 --> 0 0 0 0 0 0 0 0 0 --> 0 (The Major (Base) Network Address): 142.20.33.0 To find the broadcast address, we can set all the bits in the host portion of the address to 1, which gives us 142.20.33.255. Based on the subnet mask 255.255.255.0, no bits were borrowed from the host portion, meaning 8 bits remain in the host portion. Using the formula 2^h – 2 (where h represents the number of host bits), we get 2^8 - 2 = 254 hosts. 8 bits --> 17 & 252 128 64 32 16 | 8 4 2 1 0 0 0 1 0 0 0 1 --> 17+ 1 1 1 1 1 1 0 0 --> 252 0 0 0 1…arrow_forwardWhich of the following opens when you click the launcher in the Size group on the Ribbon? Question 19Select one: a. Size dialog box b. Layout dialog box c. Width and Height dialog box d. Format dialog boxarrow_forward
- How do you resize a graphic object horizontally while keeping the center position fixed? Question 20Select one: a. Drag a side sizing handle. b. Press [Ctrl] and drag a side sizing handle. c. Press [Alt] and drag a side sizing handle. d. Press [Shift] and drag a side sizing handle.arrow_forwardWhich of the following indicates that a graphic is anchored to the nearest paragraph? Question 18Select one: a. X and Y coordinates b. An anchor symbol c. A paragraph symbol d. ruler marksarrow_forwardWhich command in the Adjust group allows you to change one picture for another but retain the original picture's size and formatting? Question 17Select one: a. Change Picture b. Replace c. Swap d. Relinkarrow_forward
- Principles of Information Systems (MindTap Course...Computer ScienceISBN:9781285867168Author:Ralph Stair, George ReynoldsPublisher:Cengage LearningPrinciples of Information Systems (MindTap Course...Computer ScienceISBN:9781305971776Author:Ralph Stair, George ReynoldsPublisher:Cengage LearningFundamentals of Information SystemsComputer ScienceISBN:9781337097536Author:Ralph Stair, George ReynoldsPublisher:Cengage Learning
- Systems ArchitectureComputer ScienceISBN:9781305080195Author:Stephen D. BurdPublisher:Cengage LearningDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781285196145Author:Steven, Steven Morris, Carlos Coronel, Carlos, Coronel, Carlos; Morris, Carlos Coronel and Steven Morris, Carlos Coronel; Steven Morris, Steven Morris; Carlos CoronelPublisher:Cengage LearningDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781305627482Author:Carlos Coronel, Steven MorrisPublisher:Cengage Learning





