ContentsClass #03: µ¥ÀÌŸ ¸ðµ¨¸µ (1)
in place March 16, 2002, lasted modified March 22, 2002, Working...
µ¥ÀÌŸ ¸ðµ¨ Data Model
µ¥ÀÌŸ ¸ðµ¨ÀÇ °³¿ä
- µ¥ÀÌŸ ¸ðµ¨°ú ¸ðµ¨¸µÀÇ Á¤ÀÇ
- µ¥ÀÌŸ ¸ðµ¨ - µ¥ÀÌŸº£À̽º¸¦ ±¸ÇöÇϱâ À§ÇÏ¿© ¼·ù»óÀ¸·Î ¸¸µç °³³äÀûÀÎ ¸ðÇü
- µ¥ÀÌŸ ¸ðµ¨¸µ -µ¥ÀÌŸ ¸ðµ¨À» ¸¸µå´Â ¼³°èÀÛ¾÷
- µ¥ÀÌŸ ¸ðµ¨¸µÀÇ ¸ñÀû
- µ¥ÀÌŸº£À̽º ±¸Çö½Ã Áöħ
- ¹ßÁÖÀÚ, ¼³°èÀÚ, ÇÁ·Î±×·¥¾î »çÀÌÀÇ ÀÇ»ç¼ÒÅë
- ±¸Çö ÈÄÀÇ À¯Áö º¸¼ö
- ¼Ò¿ä ÀÚ¿ø »êÃâ (ÀÏÁ¤, HW/SW)
- µ¥ÀÌŸ ¸ðµ¨¸µÀÇ ¼ø¼
- ¿ä±¸ºÐ¼®
- °³³äÀû ¼³°è
- ³í¸®Àû ¼³°è
- ¹°¸®Àû ¼³°è - Index
- µ¥ÀÌŸ ¸ðµ¨ÀÇ ³»¿ë
- °³Ã¼ - Entity
- ¼Ó¼º - Attributes
- °´Ã¼°£ÀÇ °ü°è - Relationship
- Á¦¾àÁ¶°Ç - Integrity Constraints
°³Ã¼¿Í °ü°è
- °³Ã¼ Entity
- °´Ã¼ (Object) - °ü½ÉÀ» °¡Áö°í ÀÖ´Â À¯Çü ¹«ÇüÀÇ ´ë»ó - ¿¹) ÀÚµ¿Â÷, ¼ºÀû, ¿Âµµ
- Ŭ·¡½º (Class) - °°Àº ¼Ó¼ºÀ» °¡Áø °´Ã¼ÀÇ ÁýÇÕ
- ÀνºÅϽº (Instance) - ¼Ó¼º¿¡ ƯÁ¤ÇÑ °ªÀ» °¡Áö´Â Çϳª ÇϳªÀÇ °´Ã¼
- ¼Ó¼º Attributes
- °³Ã¼¸¦ ±¸¼ºÇÏ´Â ¿ä¼Ò
- ¼Ó¼ºÀº ¼Ó¼ºÀ̸§ (Attribut Name) °ú µµ¸ÞÀÎ(Domain)À¸·Î ±¸¼ºµÇ¾î ÀÖ´Ù.
- µµ¸ÞÀÎÀº ¼Ó¼ºÀÌ °¡Áú¼ö ÀÖ´Â ÀÚ·á °ªµéÀÇ ÁýÇÕ
- ¼Ó¼ºÀÇ Á¾·ù´Â
- ´ÜÀÏ ¼Ó¼º - ÇϳªÀÇ °ª¸¸ °¡Áö´Â ¼Ó¼º
- º¹ÇÕ ¼Ó¼º - µÎ°³ ÀÌ»óÀÇ ¼Ó¼ºÀ¸·Î ±¸¼ºµÈ ¼Ó¼º - À̸§Àº ¼º°ú À̸§À̶ó´Â ¼Ó¼ºÀÇ ±¸¼ºÀ¸·Î ÀÌ·ç¾îÁü.
- À¯µµ ¼Ó¼º - ´Ù¸¥ ¼Ó¼º¿¡¼ À¯µµµÉ ¼ö ÀÖ´Â ¼Ó¼º - »ý³â¿ùÀÏ·Î ºÎÅÍ ³ªÀ̸¦ À¯µµÇÒ ¼ö ÀÖÀ½.- ½Äº°ÀÚ¿Í Å° Identifier and Key
- ÀÚ·á °Ë»öÀ» À§ÇØ °¢ ÀÚ·á°¡ ¼·Î ±¸º°µÇ¾î¾ß ÇÔ
- °³Ã¼ÀÇ ¼Ó¼ºÁß¿¡ °¢°¢ÀÇ ÀνºÅº½º¸¦ ±¸º°ÇÒ ¼ö ÀÖµµ·Ï ½Äº°ÀÚ(Identifer)¸¦ ¼±ÅÃÇÑ´Ù.
- ½Äº°ÀÚ·Î È°¿ëµÉ ¼ö ÀÖ´Â ¼Ó¼º(Attribute)¸¦ Å°(Key)¶ó ÇÔ.
- Å°ÀÇ Á¾·ù´Â
- Èĺ¸ Å°(Candidate Key) - °³Ã¼µéÀ» °íÀ¯ÇÏ°Ô ½Äº°ÇÒ ¼ö ÀÖ´Â ¼Ó¼º
-±âº» Å°(Primary Key) - Èĺ¸ Å°Áß¿¡ ´ëÇ¥·Î ¼±Á¤µÈ Å°
- º¹ÇÕ Å°( Composite Key)- µÎ°³ ÀÌ»óÀÇ ¼Ó¼ºÀ¸·Î ±¸¼ºµÈ Å°
- ¿ÜºÎ Å° - ´Ù¸¥ Å×À̺íÀÇ ±âº» Å°·Î »ç¿ëµÇ´Â ¼Ó¼º
- º¸Á¶ Å° - º¹¼ö°³ÀÇ °³Ã¼µéÀ» ½Äº°ÇÒ ¼ö ÀÖ´Â ¼Ó¼º- °ü°è¿Í »ç»ó Relationship and Mapping
°¢ °³Ã¼ »çÀÌÀÇ °ü°è´Â ´ÙÀ½°ú °°Àº Á¾·ù°¡ ÀÖ´Ù (Cardianlity) - °ü°è°¡ ¾ø´Â °³Ã¼µµ °í·Á
- ÀÏ´ë ÀÏ °ü°è
- ÀÏ´ë ´Ù °ü°è
- ´Ù´ë ÀÏ °ü°è
- ´Ù´ë ´Ù °ü°è
µ¥ÀÌŸ ¸ðµ¨
- µ¥ÀÌŸ ¸ðµ¨ÀÇ °³³ä
- °ü½ÉÀÌ ´ë»óÀÌ µÇ´Â Çö½Ç¼¼°èÀÇ ´ë»ó°ú ´ë»óÀÇ º¯È¸¦ ÄÄÇ»ÅÍ(µ¥ÀÌŸº£À̽º)¿¡ Ç¥ÇöÇϱâ À§ÇÑ ¹æ¹ý
- ÀڷᱸÁ¶, ÀÚ·á°£ÀÇ °ü°è, ÀǹÌ, Á¦¾àÁ¶°Ç µîÀ¸·Î ±¸¼º
- µ¥ÀÌŸ ¸ðµ¨ÀÇ 3¿ä¼Ò
- ±¸Á¶ (Data Structure)
- ¿¬»ê (Operations)
- Á¦¾àÁ¶°Ç (Integrity Constraints)- Ãß»ó ÀÚ·áÇü (Abstract Data Type) - ÀڷᱸÁ¶¿Í °ü·Ã ¿¬»ê ¹× Á¦¾àÁ¶°Ç
- °³Ã¼-°ü°è µ¥ÀÌŸ ¸ðµ¨ Entity-Relationship Model
- ¸ñÀû¿¡ ºÎÇյǴ Çö½ÇÀÇ ÀÚ·á¿Í ±¸¼ºÀ» Ç¥ÇöÇÏ´Â ¸ðµ¨
- 1976 Peter Chen¿¡ ÀÇÇØ Á¦¾È
- °³Ã¼-°ü°è µµÇ¥ (Entity-Relationship Diagram)Àº °³Ã¼-°ü°è ¸ðµ¨À» Ç¥ÇöÇÑ ±×¸²
- ÁÖ·Î Á¤ÀûÀÎ ÀÚ·á ±¸Á¶¸¦ Ç¥ÇöÇÏ¸ç ½Ã°£¿¡ µû¸¥ º¯È¸¦ Ç¥ÇöÇϴµ¥ ¾î·Á¿òÀÌ ÀÖ´Ù.
- ÀÚ·á ±¸Á¶¿¡ ´ëÇÑ ¿¬»êÀ» Ç¥ÇöÇϱ⠾î·Æ´Ù.
- Â÷¼ö (Degree) - °ü°è¿¡ Âü¿©ÇÑ °³Ã¼ÀÇ ¼ö
- °ü°è¿¡ ÀÇÇÏ¿© »ý¼ºµÈ °³Ã¼
±×¸² 3-1. ÇлýÁø·Î°ü¸®¸¦ À§ÇÑ ERD- µ¥ÀÌŸ ¸ðµ¨
- ÄÄÇ»ÅÍ(µ¥ÀÌŸº£À̽º)¿¡¼ÀÇ ¾÷¹«Ã³¸®¸¦ À§ÇÑ ¸ðµ¨
- °³Ã¼-°ü°è ¸ðµ¨À» ´Ù½Ã µ¥ÀÌŸ ¸ðµ¨·Î ¹Ù²Þ
- °¢ DBMS°¡ Áö¿øÇÏ´Â µ¥ÀÌŸ ¸ðµ¨¿¡ ÀÇÇØ DBMSÀÇ Á¾·ù¸¦ ³ª´®
- ORACLE - °ü°èÇü µ¥ÀÌŸº£À̽º, Orion - °´Ã¼ÁöÇâÀû µ¥ÀÌŸº£À̽º
- µ¥ÀÌŸ ¸ðµ¨ÀÇ Á¾·ù
- °ü°è µ¥ÀÌŸ ¸ðµ¨ (Relational Data Model)
- °³Ã¼¸¦ TableÀ» ÀÌ¿ëÇÏ¿© Ç¥ÇöÇÏ°í °³Ã¼°£ÀÇ °ü°è¸¦ °øÅë¼Ó¼ºÀ» ÀÌ¿ëÇÏ¿© Ç¥Çö
- °³Ã¼¿Í °³Ã¼Àº Æ÷ÀÎÅÍ¿Í °°ÀÌ Á÷Á¢ÀûÀ¸·Î ¿¬°áµÇÁö ¾Ê°í µ¶¸³ÀûÀ¸·Î Á¸ÀçÇÏ´Â ¸ðµ¨
- °³Ã¼¿Í °³Ã¼ÀÇ °ü°è´Â °øÅë¼Ó¼ºÀÇ °ªÀ» ÀÌ¿ëÇÏ¿© ¿¬°áÇÏ¸ç ¿¬°á¿¡ ¹æÇ⼺ÀÌ ¾ø´Ù.
- ÀϹÝÀûÀ¸·Î ÀڷᱸÁ¶°¡ ´Ü¼øÇÑ ÀºÇà ¾÷¹«µî¿¡ »ç¿ëÇϸç ÇöÀç °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â ¸ðµ¨ÀÌ´Ù.
±×¸² 3-2. ÇлýÁø·Î°ü¸®¸¦ À§ÇÑ °ü°èÇü µ¥ÀÌŸ ¸ðµ¨- °´Ã¼ ÁöÇâÀû µ¥ÀÌŸ ¸ðµ¨ (Object-Oriented Data Model)
- °´Ã¼ÁöÇâÀû °³³ä(Object Oriented Concept): Ŭ·¡½º, °´Ã¼, °´Ã¼ ID, »ó¼Ó°ü°è, ±¸¼º°ü°è, ¸Þ½îµå, Encapsulation, PolymorphismÀ» Áö¿øÇÏ´Â ¸ðµ¨
- °´Ã¼ ID¶ó´Â ½Ã½ºÅÛ Æ÷ÀÎÅ͸¦ »ç¿ëÇÑ´Ù.
- »ç¿ëÀÚ Á¤ÀÇ ÀÚ·áÇü(User Defined Data Type)ÀÌ °¡´ÉÇÑ´Ù - Class Composition Relationship
- ¸Þ½îµå(ȤÀº Member Function)ÀÇ Á¤ÀÇ°¡ °¡´ÉÇÏ´Ù - Abstract Data Type)
- ÀÚ·á ±¸Á¶¿Í MethodÀÇ Inheritance °¡ °¡´ÉÇÏ´Ù - Polymorphism
±×¸² 3-3. ÇлýÁø·Î°ü¸®¸¦ À§ÇÑ °´Ã¼ÁöÇâÀû µ¥ÀÌŸ ¸ðµ¨References:
- introduction to Object-Oriented Concept
- Object, classe, (class/instance) method, interface, message passing, class hierarchy, class composition, encapsulation and polymorphism
- See chapter 3.1, and we will discuss the "polymorphism" .- introduction to Object-Oriented Concept (2)
- See chapter 4.1.- introduction to Object-Oriented Databases
- See chapter 3.2.- introduction to Active Object-Oriented Databases
- Event, Condition and Action Rules and TRIGGER and CONSTRAINTS
- See chapter 4.3 and 4.4.- An Example of Object-Oriented Database (Data Definition and Manipulation)
- See chapter 4.1.- Comparison between Object Oriented and Relational Databases
- Difference between Relational databases and object-oriented databases in data definition and manipulation. See the comparison example
- See the figure 10 and the SOL specification in chapter 4.2.2.
- We will discuss the "reference" concept in chapter 4.1 again.
Knowledge & Engineering Databases (c) copyright Namchul Do, 2002