Knowledge

Fourth normal form

Source đź“ť

456:
The table has no non-key attributes because its only candidate key is {Restaurant, Pizza variety, Delivery area}. Therefore, it meets all normal forms up to BCNF. If we assume, however, that pizza varieties offered by a restaurant are not affected by delivery area (i.e. a restaurant offers all pizza
513:
in the table: for example, we are told three times that A1 Pizza offers Stuffed Crust, and if A1 Pizza starts producing Cheese Crust pizzas then we will need to add multiple rows, one for each of A1 Pizza's delivery areas. There is, moreover, nothing to prevent us from doing this incorrectly: we
693:
A 1992 paper by Margaret S. Wu notes that the teaching of database normalization typically stops short of 4NF, perhaps because of a belief that tables violating 4NF (but meeting all lower normal forms) are rarely encountered in business applications. This belief may not be accurate, however. Wu
457:
varieties it makes to all areas it supplies), then it does not meet 4NF. The problem is that the table features two non-trivial multivalued dependencies on the {Restaurant} attribute (which is not a superkey). The dependencies are:
508:
These non-trivial multivalued dependencies on a non-superkey reflect the fact that the varieties of pizza a restaurant offers are independent from the areas to which the restaurant delivers. This state of affairs leads to
537:
To eliminate the possibility of these anomalies, we must place the facts about varieties offered into a different table from the facts about delivery areas, yielding two tables that are both in 4NF:
706:. These are situations in which a complex real-world constraint governing the valid combinations of attribute values in the 4NF table is not implicit in the structure of that table. 765: 674:
In contrast, if the pizza varieties offered by a restaurant sometimes did legitimately vary from one delivery area to another, the original three-column table would satisfy 4NF.
532: 502: 479: 242: 172: 91: 678: 694:
reports that in a study of forty organizational databases, over 20% contained one or more tables that violated 4NF while meeting all lower normal forms.
877: 924: 767:
Y holds for R*, then so does the functional dependency X → A for every column name A of R*. Intuitively all dependencies are the result of keys."
514:
might add Cheese Crust rows for all but one of A1 Pizza's delivery areas, thereby failing to respect the multivalued dependency {Restaurant}
770: 917: 1010: 886: 1065: 910: 27: 1030: 750: 517: 487: 464: 227: 157: 76: 747:"A relation schema R* is in fourth normal form (4NF) if, whenever a nontrivial multivalued dependency X 974: 968: 136:, then, in the context of a particular row, we can refer to the data beneath each group of headings as 51: 39: 211:. So essentially the presence of z provides no useful information to constrain the possible values of 790: 453:
Each row indicates that a given restaurant can deliver a given variety of pizza to a given area.
124:
If the column headings in a relational database table are divided into three disjoint groupings
1020: 992: 933: 785: 715: 682: 149: 59: 31: 1015: 267: 55: 8: 811: 956: 803: 720: 43: 1035: 998: 986: 962: 950: 944: 882: 703: 47: 807: 853: 795: 63: 1046: 1025: 510: 702:
Only in rare situations does a 4NF table not conform to the higher normal form
67: 1059: 113: 844:
Wu, Margaret S. (March 1992). "The Practical Need for Fourth Normal Form".
35: 857: 799: 902: 771:"Multivalued Dependencies and a New Normal Form for Relational Databases" 270:
is a special case of multivalued dependency. In a functional dependency
894: 725: 677:
Ronald Fagin demonstrated that it is always possible to achieve 4NF.
58:, 4NF is concerned with a more general type of dependency known as a 101: 895:
A Simple Guide to Five Normal Forms in Relational Database Theory
70:, for every one of its non-trivial multivalued dependencies 263:
together form the whole set of attributes of the relation.
196:
combinations that occur in the table, we will find that
898:, Communications of the ACM, vol. 26, pp. 120–125 38:
in 1977, 4NF is the next level of normalization after
753: 520: 490: 467: 230: 160: 79: 759: 526: 496: 473: 236: 181:actually occurring in the table (call this choice 166: 85: 1057: 104:—that is, the combination of all attributes in 918: 697: 119: 932: 925: 911: 16:Normal form used in database normalization 789: 828: 1058: 906: 768: 778:ACM Transactions on Database Systems 741: 881:(8th ed.). Addison-Wesley Longman. 878:An Introduction to Database Systems 760:{\displaystyle \twoheadrightarrow } 527:{\displaystyle \twoheadrightarrow } 497:{\displaystyle \twoheadrightarrow } 474:{\displaystyle \twoheadrightarrow } 237:{\displaystyle \twoheadrightarrow } 167:{\displaystyle \twoheadrightarrow } 86:{\displaystyle \twoheadrightarrow } 13: 868: 843: 688: 14: 1077: 837: 188:), and compile a list of all the 769:Fagin, Ronald (September 1977). 294:Consider the following example: 177:signifies that if we choose any 54:normal forms are concerned with 754: 521: 491: 468: 231: 220:trivial multivalued dependency 161: 80: 1: 734: 608:Delivery areas by restaurant 298:Pizza Delivery Permutations 203:is associated with the same 7: 1031:Lossless join decomposition 709: 10: 1082: 969:Elementary key normal form 289: 1044: 1008: 940: 698:Normalization beyond 4NF 683:multivalued dependencies 541:Varieties by restaurant 120:Multivalued dependencies 286:, never more than one. 116:or a superset thereof. 56:functional dependencies 1066:Database normalization 1021:Multivalued dependency 993:Domain-key normal form 975:Boyce–Codd normal form 934:Database normalization 761: 716:Attribute-value system 681:is also applicable on 528: 498: 475: 238: 207:entries regardless of 168: 150:multivalued dependency 87: 60:multivalued dependency 40:Boyce–Codd normal form 32:database normalization 1016:Functional dependency 858:10.1145/135250.134515 800:10.1145/320557.320571 762: 529: 499: 476: 268:functional dependency 239: 169: 88: 875:Date, C. J. (1999), 751: 518: 488: 465: 247:is one where either 228: 158: 77: 42:(BCNF). Whereas the 846:ACM SIGCSE Bulletin 609: 542: 299: 981:Fourth normal form 957:Second normal form 757: 721:Injective function 679:Rissanen's theorem 607: 540: 524: 494: 471: 297: 234: 164: 83: 20:Fourth normal form 1053: 1052: 1036:Temporal database 999:Sixth normal form 987:Fifth normal form 963:Third normal form 951:First normal form 945:Unnormalized form 672: 671: 605: 604: 534:{Pizza variety}. 451: 450: 1073: 927: 920: 913: 904: 903: 892:Kent, W. (1983) 862: 861: 841: 835: 832: 826: 825: 823: 822: 816: 810:. Archived from 793: 775: 766: 764: 763: 758: 745: 665:Vincenzo's Pizza 657:Vincenzo's Pizza 610: 606: 598:Vincenzo's Pizza 590:Vincenzo's Pizza 543: 539: 533: 531: 530: 525: 503: 501: 500: 495: 480: 478: 477: 472: 441:Vincenzo's Pizza 430:Vincenzo's Pizza 419:Vincenzo's Pizza 408:Vincenzo's Pizza 300: 296: 243: 241: 240: 235: 173: 171: 170: 165: 148:respectively. A 92: 90: 89: 84: 34:. Introduced by 1081: 1080: 1076: 1075: 1074: 1072: 1071: 1070: 1056: 1055: 1054: 1049: 1047:Denormalization 1040: 1026:Join dependency 1004: 936: 931: 901: 871: 869:Further reading 866: 865: 842: 838: 833: 829: 820: 818: 814: 773: 752: 749: 748: 746: 742: 737: 731: 712: 700: 691: 689:4NF in practice 519: 516: 515: 504:{Delivery area} 489: 486: 485: 481:{Pizza variety} 466: 463: 462: 292: 251:is a subset of 229: 226: 225: 201: 193: 186: 159: 156: 155: 122: 78: 75: 74: 17: 12: 11: 5: 1079: 1069: 1068: 1051: 1050: 1045: 1042: 1041: 1039: 1038: 1033: 1028: 1023: 1018: 1009: 1006: 1005: 1003: 1002: 996: 990: 984: 978: 977:(3.5NF / BCNF) 972: 966: 960: 954: 948: 941: 938: 937: 930: 929: 922: 915: 907: 900: 899: 890: 872: 870: 867: 864: 863: 836: 827: 791:10.1.1.69.1872 784:(1): 262–278. 756: 739: 738: 736: 733: 729: 728: 723: 718: 711: 708: 699: 696: 690: 687: 670: 669: 666: 662: 661: 658: 654: 653: 650: 646: 645: 642: 638: 637: 634: 630: 629: 626: 622: 621: 616: 603: 602: 599: 595: 594: 591: 587: 586: 585:Stuffed Crust 583: 579: 578: 575: 571: 570: 569:Stuffed Crust 567: 563: 562: 559: 555: 554: 549: 523: 506: 505: 493: 482: 470: 449: 448: 445: 442: 438: 437: 434: 431: 427: 426: 423: 420: 416: 415: 412: 409: 405: 404: 401: 398: 394: 393: 390: 387: 383: 382: 379: 376: 372: 371: 368: 365: 361: 360: 357: 354: 350: 349: 346: 343: 339: 338: 335: 332: 328: 327: 324: 321: 317: 316: 311: 306: 291: 288: 233: 199: 191: 184: 163: 121: 118: 82: 68:if and only if 15: 9: 6: 4: 3: 2: 1078: 1067: 1064: 1063: 1061: 1048: 1043: 1037: 1034: 1032: 1029: 1027: 1024: 1022: 1019: 1017: 1014: 1013: 1012: 1007: 1000: 997: 994: 991: 988: 985: 982: 979: 976: 973: 970: 967: 964: 961: 958: 955: 952: 949: 946: 943: 942: 939: 935: 928: 923: 921: 916: 914: 909: 908: 905: 897: 896: 891: 888: 887:0-321-19784-4 884: 880: 879: 874: 873: 859: 855: 851: 847: 840: 834:Fagin, p. 268 831: 817:on 2007-11-29 813: 809: 805: 801: 797: 792: 787: 783: 779: 772: 744: 740: 732: 727: 724: 722: 719: 717: 714: 713: 707: 705: 695: 686: 684: 680: 675: 667: 664: 663: 659: 656: 655: 652:Capital City 651: 648: 647: 644:Capital City 643: 640: 639: 635: 632: 631: 627: 624: 623: 620: 619:Delivery area 617: 615: 612: 611: 600: 597: 596: 592: 589: 588: 584: 581: 580: 576: 573: 572: 568: 565: 564: 560: 557: 556: 553: 552:Pizza variety 550: 548: 545: 544: 538: 535: 512: 484:{Restaurant} 483: 461:{Restaurant} 460: 459: 458: 454: 446: 443: 440: 439: 435: 432: 429: 428: 424: 421: 418: 417: 413: 410: 407: 406: 403:Capital City 402: 400:Stuffed Crust 399: 396: 395: 392:Capital City 391: 388: 385: 384: 381:Capital City 380: 378:Stuffed Crust 377: 374: 373: 369: 367:Stuffed Crust 366: 363: 362: 358: 356:Stuffed Crust 355: 352: 351: 348:Capital City 347: 344: 341: 340: 336: 333: 330: 329: 325: 322: 319: 318: 315: 314:Delivery area 312: 310: 309:Pizza variety 307: 305: 302: 301: 295: 287: 285: 284:exactly one y 281: 277: 273: 269: 264: 262: 258: 254: 250: 246: 224: 221: 216: 214: 210: 206: 202: 195: 187: 180: 176: 154: 151: 147: 143: 139: 135: 131: 127: 117: 115: 114:candidate key 111: 107: 103: 99: 95: 73: 69: 65: 61: 57: 53: 49: 45: 41: 37: 33: 29: 25: 21: 1011:Dependencies 989:(5NF / PJNF) 980: 893: 876: 852:(1): 19–23. 849: 845: 839: 830: 819:. Retrieved 812:the original 781: 777: 743: 730: 701: 692: 676: 673: 668:Shelbyville 660:Springfield 636:Shelbyville 628:Springfield 618: 613: 593:Thick Crust 561:Thick Crust 551: 546: 536: 507: 455: 452: 447:Shelbyville 436:Springfield 425:Shelbyville 414:Springfield 370:Shelbyville 359:Springfield 337:Shelbyville 326:Springfield 313: 308: 303: 293: 283: 279: 275: 271: 265: 260: 256: 252: 248: 244: 222: 219: 217: 212: 208: 204: 197: 189: 182: 178: 174: 152: 145: 141: 137: 133: 129: 125: 123: 112:is either a 109: 105: 97: 93: 71: 36:Ronald Fagin 23: 19: 18: 649:Elite Pizza 601:Thin Crust 582:Elite Pizza 577:Thin Crust 574:Elite Pizza 422:Thick Crust 411:Thick Crust 397:Elite Pizza 386:Elite Pizza 345:Thick Crust 334:Thick Crust 323:Thick Crust 282:determines 28:normal form 821:2008-04-26 735:References 614:Restaurant 547:Restaurant 511:redundancy 444:Thin Crust 433:Thin Crust 389:Thin Crust 304:Restaurant 66:is in 4NF 52:Boyce–Codd 786:CiteSeerX 755:↠ 726:Bijection 522:↠ 492:↠ 469:↠ 232:↠ 162:↠ 81:↠ 1060:Category 808:14617155 710:See also 641:A1 Pizza 633:A1 Pizza 625:A1 Pizza 566:A1 Pizza 558:A1 Pizza 375:A1 Pizza 364:A1 Pizza 353:A1 Pizza 342:A1 Pizza 331:A1 Pizza 320:A1 Pizza 278:, every 102:superkey 30:used in 290:Example 26:) is a 995:(DKNF) 971:(EKNF) 885:  806:  788:  144:, and 132:, and 98:{X, Y} 50:, and 44:second 1001:(6NF) 983:(4NF) 965:(3NF) 959:(2NF) 953:(1NF) 947:(UNF) 815:(PDF) 804:S2CID 774:(PDF) 255:, or 100:is a 64:table 48:third 883:ISBN 259:and 108:and 62:. A 854:doi 796:doi 704:5NF 24:4NF 1062:: 850:24 848:. 802:. 794:. 780:. 776:. 685:. 274:→ 266:A 218:A 215:. 194:yz 140:, 128:, 96:, 46:, 926:e 919:t 912:v 889:. 860:. 856:: 824:. 798:: 782:2 280:x 276:Y 272:X 261:Y 257:X 253:X 249:Y 245:Y 223:X 213:y 209:z 205:y 200:c 198:x 192:c 190:x 185:c 183:x 179:x 175:Y 153:X 146:z 142:y 138:x 134:Z 130:Y 126:X 110:Y 106:X 94:Y 72:X 22:(

Index

normal form
database normalization
Ronald Fagin
Boyce–Codd normal form
second
third
Boyce–Codd
functional dependencies
multivalued dependency
table
if and only if
superkey
candidate key
multivalued dependency
functional dependency
redundancy
Rissanen's theorem
multivalued dependencies
5NF
Attribute-value system
Injective function
Bijection
"Multivalued Dependencies and a New Normal Form for Relational Databases"
CiteSeerX
10.1.1.69.1872
doi
10.1145/320557.320571
S2CID
14617155
the original

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑