SlideShare a Scribd company logo
1 of 12
File StructuresFile Structure SNU-OOPSLA Lab 1
Chap1Chap1.. Introduction toIntroduction to
File StructuresFile Structures
서울대학교 컴퓨터공학부
객체지향시스템연구실
(SNU-OOPSLA-LAB)
김 형 주 교수
File Structures by Folk, Zoellick, and Riccardi
File StructuresFile Structure SNU-OOPSLA Lab 2
Chapter ObjectivesChapter Objectives
Introduce the primary design issues
characterizing file structure design
Survey the history of file structure design
Introduce the notions of file structure literacy and
of a conceptual toolkit for file structure design
Discuss the need for specification of data
structures, operations and development of object-
oriented toolkit
Introduce classes and overloading in C++
File StructuresFile Structure SNU-OOPSLA Lab 3
ContentsContents
1.1 The heart of file structure design
1.2 History of file structure design
1.3 Conceptual toolkit : file structure literacy
1.4 Object-Oriented Toolkit
: make file structure usable
1.5 Using objects in C++
File StructuresFile Structure SNU-OOPSLA Lab 4
The Heart of File Structure DesignThe Heart of File Structure Design
File structure
representation of data + operation for accessing data
Disk vs. RAM
speed : very slower than RAM
cost : enormous capacity at much less cost than RAM
nonvolatile in Disk vs. volatile in RAM
Good file structure design
access to all the capacity without spending much time waiting for
disk
uniform average access time
1.1 The Heart of File Structure Design
File StructuresFile Structure SNU-OOPSLA Lab 5
History of file structure design(1)History of file structure design(1)
Sequential file
look at records in order
AVL tree (Balanced Binary Tree)
self-adjusting binary tree
guarantee good access time for data in RAM
B-tree
balanced tree structure
provide fast access to data in file
1.2 History of File Structure Design
File StructuresFile Structure SNU-OOPSLA Lab 6
History of file structure design(2)History of file structure design(2)
B+
-tree
variation on B-tree structure
provide both sequential access and fast-indexed
access
Hashing
transform search key into storage address
provide fast access to stored data
Extendible hashing
approach to hashing that works well with files
undergoing many changes in size over time
1.2 History of File Structure Design
File StructuresFile Structure SNU-OOPSLA Lab 7
Taxonomy of File StructuresTaxonomy of File Structures
Single-key files
Index-based (Tree Data Structure)
Indexed Sequential File -> B-Tree -> B+
-Tree
Hashing-based (Address Computation)
Hashing File -> Extendible Hashing File
Multi-key files (multidimensional)
K-D-B tree
Grid file
R-tree
Multimedia Indexing Techniques
Audio, Image, Video
1.2 History of File Structure Design
File StructuresFile Structure SNU-OOPSLA Lab 8
Conceptual ToolkitConceptual Toolkit :: File Structure LiteracyFile Structure Literacy
Objective of Conceptual toolkit
Fundamental file concepts
Generic file operations
Conceptual tools in this book
basic tools + evolution of basic tools
basic tools : Chapter 2 ~ 6
evolution of basic tools : Chapter 7 ~ 12
B-trees, B+trees, hashed indexes, and extensible
dynamic hashed files
1.3 A Conceptual Toolkit
File StructuresFile Structure SNU-OOPSLA Lab 9
Object-Oriented ToolkitObject-Oriented Toolkit::
Making File Structures UsableMaking File Structures Usable
Object-Oriented Toolkit
making file structures usable requires turning
conceptual toolkit into collections :(classes) of data
types and operations
Major problem
complicated and progressive
often modified and extended from other classes
and details of classes become more complex
1.4 Object-Oriented Toolkit
File StructuresFile Structure SNU-OOPSLA Lab 10
Using objects in C++(1)Using objects in C++(1)
Features of object in C++
class definition
data members(attributes) + methods
constructor
provide a guarantee for initialization of every object &
called in creation time of object
public, private & protected sections
public label specifies that any users can freely access
private & protected label are restrict access
1.5. Using Objects in C++
File StructuresFile Structure SNU-OOPSLA Lab 11
Using objects in C++(2)Using objects in C++(2)
operator overloading
allows a particular symbol to have more than
one meaning
other features
inheritance, virtual function, and templates
explained in later chapters
1.5. Using Objects in C++
File StructuresFile Structure SNU-OOPSLA Lab 12
Let’s Review!!Let’s Review!!
1.1 The heart of file structure design
1.2 History of file structure design
1.3 Conceptual toolkit : file structure literacy
1.4 Object-Oriented Toolkit
: make file structure usable
1.5 Using objects in C++

More Related Content

Similar to Aaaaaaaaaa

AliEnFS - A Linux File System For The AliEn Grid Services
AliEnFS - A Linux File System For The AliEn Grid ServicesAliEnFS - A Linux File System For The AliEn Grid Services
AliEnFS - A Linux File System For The AliEn Grid ServicesNathan Mathis
 
Chapter 1_ Introduction to File Structures.pdf
Chapter 1_ Introduction to File Structures.pdfChapter 1_ Introduction to File Structures.pdf
Chapter 1_ Introduction to File Structures.pdfmiloga4905
 
OS file systems
OS file systemsOS file systems
OS file systemsanand hd
 
Unit 3.1 cs6601 Distributed File System
Unit 3.1 cs6601 Distributed File SystemUnit 3.1 cs6601 Distributed File System
Unit 3.1 cs6601 Distributed File SystemNandakumar P
 
file management_part2_os_notes.ppt
file management_part2_os_notes.pptfile management_part2_os_notes.ppt
file management_part2_os_notes.pptHelalMirzad
 
File Management in Operating System
File Management in Operating SystemFile Management in Operating System
File Management in Operating SystemJanki Shah
 
Unit 3 chapter 1-file management
Unit 3 chapter 1-file managementUnit 3 chapter 1-file management
Unit 3 chapter 1-file managementKalai Selvi
 
3. distributed file system requirements
3. distributed file system requirements3. distributed file system requirements
3. distributed file system requirementsAbDul ThaYyal
 
File management
File managementFile management
File managementMohd Arif
 
chapter5-file system implementation.ppt
chapter5-file system implementation.pptchapter5-file system implementation.ppt
chapter5-file system implementation.pptBUSHRASHAIKH804312
 
Ch11 OS
Ch11 OSCh11 OS
Ch11 OSC.U
 
File system1.pptx
File system1.pptxFile system1.pptx
File system1.pptxSamar954063
 

Similar to Aaaaaaaaaa (20)

AliEnFS - A Linux File System For The AliEn Grid Services
AliEnFS - A Linux File System For The AliEn Grid ServicesAliEnFS - A Linux File System For The AliEn Grid Services
AliEnFS - A Linux File System For The AliEn Grid Services
 
Chapter 1_ Introduction to File Structures.pdf
Chapter 1_ Introduction to File Structures.pdfChapter 1_ Introduction to File Structures.pdf
Chapter 1_ Introduction to File Structures.pdf
 
OS file systems
OS file systemsOS file systems
OS file systems
 
Unit 3.1 cs6601 Distributed File System
Unit 3.1 cs6601 Distributed File SystemUnit 3.1 cs6601 Distributed File System
Unit 3.1 cs6601 Distributed File System
 
file management_part2_os_notes.ppt
file management_part2_os_notes.pptfile management_part2_os_notes.ppt
file management_part2_os_notes.ppt
 
File Management in Operating System
File Management in Operating SystemFile Management in Operating System
File Management in Operating System
 
Unit 3 chapter 1-file management
Unit 3 chapter 1-file managementUnit 3 chapter 1-file management
Unit 3 chapter 1-file management
 
3. distributed file system requirements
3. distributed file system requirements3. distributed file system requirements
3. distributed file system requirements
 
File management
File managementFile management
File management
 
DFSNov1.pptx
DFSNov1.pptxDFSNov1.pptx
DFSNov1.pptx
 
File
FileFile
File
 
chapter5-file system implementation.ppt
chapter5-file system implementation.pptchapter5-file system implementation.ppt
chapter5-file system implementation.ppt
 
OS_Ch11
OS_Ch11OS_Ch11
OS_Ch11
 
Ch11 OS
Ch11 OSCh11 OS
Ch11 OS
 
10 File System
10 File System10 File System
10 File System
 
File system1.pptx
File system1.pptxFile system1.pptx
File system1.pptx
 
Os6
Os6Os6
Os6
 
Processing files sequentially in mule
Processing files sequentially in muleProcessing files sequentially in mule
Processing files sequentially in mule
 
Object storage
Object storageObject storage
Object storage
 
File system
File systemFile system
File system
 

Recently uploaded

Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 

Recently uploaded (20)

Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 

Aaaaaaaaaa

  • 1. File StructuresFile Structure SNU-OOPSLA Lab 1 Chap1Chap1.. Introduction toIntroduction to File StructuresFile Structures 서울대학교 컴퓨터공학부 객체지향시스템연구실 (SNU-OOPSLA-LAB) 김 형 주 교수 File Structures by Folk, Zoellick, and Riccardi
  • 2. File StructuresFile Structure SNU-OOPSLA Lab 2 Chapter ObjectivesChapter Objectives Introduce the primary design issues characterizing file structure design Survey the history of file structure design Introduce the notions of file structure literacy and of a conceptual toolkit for file structure design Discuss the need for specification of data structures, operations and development of object- oriented toolkit Introduce classes and overloading in C++
  • 3. File StructuresFile Structure SNU-OOPSLA Lab 3 ContentsContents 1.1 The heart of file structure design 1.2 History of file structure design 1.3 Conceptual toolkit : file structure literacy 1.4 Object-Oriented Toolkit : make file structure usable 1.5 Using objects in C++
  • 4. File StructuresFile Structure SNU-OOPSLA Lab 4 The Heart of File Structure DesignThe Heart of File Structure Design File structure representation of data + operation for accessing data Disk vs. RAM speed : very slower than RAM cost : enormous capacity at much less cost than RAM nonvolatile in Disk vs. volatile in RAM Good file structure design access to all the capacity without spending much time waiting for disk uniform average access time 1.1 The Heart of File Structure Design
  • 5. File StructuresFile Structure SNU-OOPSLA Lab 5 History of file structure design(1)History of file structure design(1) Sequential file look at records in order AVL tree (Balanced Binary Tree) self-adjusting binary tree guarantee good access time for data in RAM B-tree balanced tree structure provide fast access to data in file 1.2 History of File Structure Design
  • 6. File StructuresFile Structure SNU-OOPSLA Lab 6 History of file structure design(2)History of file structure design(2) B+ -tree variation on B-tree structure provide both sequential access and fast-indexed access Hashing transform search key into storage address provide fast access to stored data Extendible hashing approach to hashing that works well with files undergoing many changes in size over time 1.2 History of File Structure Design
  • 7. File StructuresFile Structure SNU-OOPSLA Lab 7 Taxonomy of File StructuresTaxonomy of File Structures Single-key files Index-based (Tree Data Structure) Indexed Sequential File -> B-Tree -> B+ -Tree Hashing-based (Address Computation) Hashing File -> Extendible Hashing File Multi-key files (multidimensional) K-D-B tree Grid file R-tree Multimedia Indexing Techniques Audio, Image, Video 1.2 History of File Structure Design
  • 8. File StructuresFile Structure SNU-OOPSLA Lab 8 Conceptual ToolkitConceptual Toolkit :: File Structure LiteracyFile Structure Literacy Objective of Conceptual toolkit Fundamental file concepts Generic file operations Conceptual tools in this book basic tools + evolution of basic tools basic tools : Chapter 2 ~ 6 evolution of basic tools : Chapter 7 ~ 12 B-trees, B+trees, hashed indexes, and extensible dynamic hashed files 1.3 A Conceptual Toolkit
  • 9. File StructuresFile Structure SNU-OOPSLA Lab 9 Object-Oriented ToolkitObject-Oriented Toolkit:: Making File Structures UsableMaking File Structures Usable Object-Oriented Toolkit making file structures usable requires turning conceptual toolkit into collections :(classes) of data types and operations Major problem complicated and progressive often modified and extended from other classes and details of classes become more complex 1.4 Object-Oriented Toolkit
  • 10. File StructuresFile Structure SNU-OOPSLA Lab 10 Using objects in C++(1)Using objects in C++(1) Features of object in C++ class definition data members(attributes) + methods constructor provide a guarantee for initialization of every object & called in creation time of object public, private & protected sections public label specifies that any users can freely access private & protected label are restrict access 1.5. Using Objects in C++
  • 11. File StructuresFile Structure SNU-OOPSLA Lab 11 Using objects in C++(2)Using objects in C++(2) operator overloading allows a particular symbol to have more than one meaning other features inheritance, virtual function, and templates explained in later chapters 1.5. Using Objects in C++
  • 12. File StructuresFile Structure SNU-OOPSLA Lab 12 Let’s Review!!Let’s Review!! 1.1 The heart of file structure design 1.2 History of file structure design 1.3 Conceptual toolkit : file structure literacy 1.4 Object-Oriented Toolkit : make file structure usable 1.5 Using objects in C++

Editor's Notes

  1. Chap 1. Introduction to File Structures 객체지향시스템연구실
  2. Chap 1. Introduction to File Structures 객체지향시스템연구실
  3. Chap 1. Introduction to File Structures 객체지향시스템연구실