SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
BiTteRsweet FS


   Dan Şerban
BTRFS rationale and design goals
• Feature-focused, general-purpose FS
   that scales to very large storage
• Linux desperately needs a copy-on-write FS
   (superior crash safety)
• Simplify administration of the entire
   storage stack
• Address the lack of pooled storage functionality
   (integrated volume management,
   multiple device support) in Linux file systems
• Allow for unlimited snapshots that are:
   - cheap in storage
   - fast to perform
BTRFS rationale and design goals
• Very fault tolerant
   - never trust the underlying spinning media
   - solid checksumming
       of all file data and metadata
       using parent-stored checksums
   - transactional object store
• Self-healing (not yet implemented)
   - avoidance of bit-rot errors +1
   - actual error correction -1
BTRFS rationale and design goals
• Extent based file storage
• Dynamic (on an as-needed basis)
   allocation of inodes
• Space-efficient packing of small files
• Performance that doesn't degrade over time
BTRFS vs. ZFS - some context
• Andrew Morton has famously called ZFS
   "a rampant layering violation" because
   it combines the functionality of a file system,
   volume manager, and RAID controller
• However, BTRFS does the same
• By changing where the boundaries are
   between layers ZFS and BTRFS make the entire
   storage stack much simpler
• ZFS and BTRFS layering is done in a way
   that gives each layer more knowledge
   of the structures of the other layers
BTRFS vs. ZFS - some context
• Upper layers having more knowledge
    about the physical side of storing data on disk
    enables e.g. selective resilvering
    of only used blocks
• BTRFS was merged into the mainline kernel
    so quickly because it is building on mature
    kernel features
• It is using the same device mapping code
    for RAID and block abstraction
    that Linux’s software RAID and LVM are based on
BTRFS subvolumes and snapshots
• Subvolume is the unit of snapshotting
• Subvolumes (and their snapshots)
   are similar to independent filesystems that:
   - share the same devpool as their backing store
   - are folded into the namespace
        of the parent BTRFS volume
• Snapshots are subvolumes with initial content
• Formal rollback to snapshot not implemented
• Only writable snapshots are possible
   as of now (2.6.34)
• BTRFS will eventually have read-only snapshots
   through settable quotas at mount time
   ... but quotas aren't yet implemented
#btrfs (IRC) wisdom
Me: is BTRFS self-healing, like ZFS?
#btrfs:
- will be, isn't yet
- self-healing is just buzz for saying when the
data/metadata checksums fail on one disk, use the
redudant copy found on another disk to replace a
faulty bit/block
- currently btrfs will use the redundant data if the
checksum fails, but it doesn't actually rewrite the
original
- it'll issue a warning in dmesg though, so it's possible
to hack in a user-space tool to do the rewrite in a
nicely hackish way :)
- currently, errors can only be fixed by triggering a
rebalance
#btrfs (IRC) wisdom
(N.N. Stability issue at or near 100% disk usage)

#btrfs:
- BTRFS: don't call us, we'll call you ... when it comes
to space usage. When BTRFS calls, it sends a giant
kernel oops message, conveniently crashing the
machine so that you can without additional penalty
power the server down and insert a new disk.
- /sarcasm

(N.N. ZFS suffers from the same issue)
#btrfs (IRC) wisdom
#btrfs:
- for a 30G partition rebalancing should take a few
hours, just look at your dmesg and see if there are
lots of repeated messages.
- if there are, then it's hanging
- if there aren't, then it's working
- generally if you don't have enough space, the
rebalancing process will go into an infinite loop since
it can't find a big enough chunk of free space to stuff
things in
- so just delete a large file or two and then you'll have
plenty of free space and it'll progress.
- also, you can't kill a rebalancing process
- it's unkillable, so you have to reboot to stop it
- it's pretty safe though
Hands-on with BTRFS
Hands-on with BTRFS
Hands-on with BTRFS
Hands-on with BTRFS
Hands-on with BTRFS
Hands-on with BTRFS
Questions / Feedback

Weitere ähnliche Inhalte

Was ist angesagt?

Os solaris memory management
Os  solaris memory managementOs  solaris memory management
Os solaris memory managementTech_MX
 
ZFS by PWR 2013
ZFS by PWR 2013ZFS by PWR 2013
ZFS by PWR 2013pwrsoft
 
Zettabyte File Storage System
Zettabyte File Storage SystemZettabyte File Storage System
Zettabyte File Storage SystemAmdocs
 
memory management of windows vs linux
memory management of windows vs linuxmemory management of windows vs linux
memory management of windows vs linuxSumit Khanka
 
Linux NUMA & Databases: Perils and Opportunities
Linux NUMA & Databases: Perils and OpportunitiesLinux NUMA & Databases: Perils and Opportunities
Linux NUMA & Databases: Perils and OpportunitiesRaghavendra Prabhu
 
Von Neumann vs Harvard Architecture
Von Neumann vs Harvard ArchitectureVon Neumann vs Harvard Architecture
Von Neumann vs Harvard ArchitectureOLSON MATUNGA
 
Continguous Memory Allocator in the Linux Kernel
Continguous Memory Allocator in the Linux KernelContinguous Memory Allocator in the Linux Kernel
Continguous Memory Allocator in the Linux KernelKernel TLV
 
JetStor NAS 724UXD Dual Controller Active-Active ZFS Based
JetStor NAS 724UXD Dual Controller Active-Active ZFS BasedJetStor NAS 724UXD Dual Controller Active-Active ZFS Based
JetStor NAS 724UXD Dual Controller Active-Active ZFS BasedGene Leyzarovich
 
并行计算与分布式计算的区别
并行计算与分布式计算的区别并行计算与分布式计算的区别
并行计算与分布式计算的区别xiazdong
 
Unix Internals OS Architecture
Unix Internals OS ArchitectureUnix Internals OS Architecture
Unix Internals OS ArchitectureKhader Shaik
 

Was ist angesagt? (18)

Snooping 2
Snooping 2Snooping 2
Snooping 2
 
Os solaris memory management
Os  solaris memory managementOs  solaris memory management
Os solaris memory management
 
Chapter 4
Chapter 4Chapter 4
Chapter 4
 
ZFS by PWR 2013
ZFS by PWR 2013ZFS by PWR 2013
ZFS by PWR 2013
 
Zettabyte File Storage System
Zettabyte File Storage SystemZettabyte File Storage System
Zettabyte File Storage System
 
System Storage Manager
System Storage ManagerSystem Storage Manager
System Storage Manager
 
Extlect03
Extlect03Extlect03
Extlect03
 
NUMA overview
NUMA overviewNUMA overview
NUMA overview
 
memory management of windows vs linux
memory management of windows vs linuxmemory management of windows vs linux
memory management of windows vs linux
 
M2tech CNBS server
M2tech CNBS serverM2tech CNBS server
M2tech CNBS server
 
Notes on NUMA architecture
Notes on NUMA architectureNotes on NUMA architecture
Notes on NUMA architecture
 
Linux NUMA & Databases: Perils and Opportunities
Linux NUMA & Databases: Perils and OpportunitiesLinux NUMA & Databases: Perils and Opportunities
Linux NUMA & Databases: Perils and Opportunities
 
Memory
MemoryMemory
Memory
 
Von Neumann vs Harvard Architecture
Von Neumann vs Harvard ArchitectureVon Neumann vs Harvard Architecture
Von Neumann vs Harvard Architecture
 
Continguous Memory Allocator in the Linux Kernel
Continguous Memory Allocator in the Linux KernelContinguous Memory Allocator in the Linux Kernel
Continguous Memory Allocator in the Linux Kernel
 
JetStor NAS 724UXD Dual Controller Active-Active ZFS Based
JetStor NAS 724UXD Dual Controller Active-Active ZFS BasedJetStor NAS 724UXD Dual Controller Active-Active ZFS Based
JetStor NAS 724UXD Dual Controller Active-Active ZFS Based
 
并行计算与分布式计算的区别
并行计算与分布式计算的区别并行计算与分布式计算的区别
并行计算与分布式计算的区别
 
Unix Internals OS Architecture
Unix Internals OS ArchitectureUnix Internals OS Architecture
Unix Internals OS Architecture
 

Andere mochten auch

Calin Burloiu - Prelucrarea fisierelor video in Linux
Calin Burloiu - Prelucrarea fisierelor video in LinuxCalin Burloiu - Prelucrarea fisierelor video in Linux
Calin Burloiu - Prelucrarea fisierelor video in LinuxAsociatia ProLinux
 
Cornel Florentin Dimitriu - Tune in... on Linux
Cornel Florentin Dimitriu - Tune in... on LinuxCornel Florentin Dimitriu - Tune in... on Linux
Cornel Florentin Dimitriu - Tune in... on LinuxAsociatia ProLinux
 
Open Source in mediul academic - Studiu de caz: UPB
Open Source in mediul academic - Studiu de caz: UPBOpen Source in mediul academic - Studiu de caz: UPB
Open Source in mediul academic - Studiu de caz: UPBAsociatia ProLinux
 

Andere mochten auch (6)

Calin Burloiu - Prelucrarea fisierelor video in Linux
Calin Burloiu - Prelucrarea fisierelor video in LinuxCalin Burloiu - Prelucrarea fisierelor video in Linux
Calin Burloiu - Prelucrarea fisierelor video in Linux
 
Cornel Florentin Dimitriu - Tune in... on Linux
Cornel Florentin Dimitriu - Tune in... on LinuxCornel Florentin Dimitriu - Tune in... on Linux
Cornel Florentin Dimitriu - Tune in... on Linux
 
Alexandru balan frams
Alexandru balan   framsAlexandru balan   frams
Alexandru balan frams
 
Open Source in mediul academic - Studiu de caz: UPB
Open Source in mediul academic - Studiu de caz: UPBOpen Source in mediul academic - Studiu de caz: UPB
Open Source in mediul academic - Studiu de caz: UPB
 
Cluster SSH / Parallel SSH
Cluster SSH / Parallel SSHCluster SSH / Parallel SSH
Cluster SSH / Parallel SSH
 
Fotografie panoramica
Fotografie panoramicaFotografie panoramica
Fotografie panoramica
 

Ähnlich wie BiTteRsweet FS

Btrfs: Design, Implementation and the Current Status
Btrfs: Design, Implementation and the Current StatusBtrfs: Design, Implementation and the Current Status
Btrfs: Design, Implementation and the Current StatusLukáš Czerner
 
Btrfs by Chris Mason
Btrfs by Chris MasonBtrfs by Chris Mason
Btrfs by Chris MasonTerry Wang
 
Case study of BtrFS: A fault tolerant File system
Case study of BtrFS: A fault tolerant File systemCase study of BtrFS: A fault tolerant File system
Case study of BtrFS: A fault tolerant File systemKumar Amit Mehta
 
Real Time Operating System
Real Time Operating SystemReal Time Operating System
Real Time Operating SystemSharad Pandey
 
Course 102: Lecture 27: FileSystems in Linux (Part 2)
Course 102: Lecture 27: FileSystems in Linux (Part 2)Course 102: Lecture 27: FileSystems in Linux (Part 2)
Course 102: Lecture 27: FileSystems in Linux (Part 2)Ahmed El-Arabawy
 
Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...
Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...
Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...Gábor Nyers
 
PostgreSQL + ZFS best practices
PostgreSQL + ZFS best practicesPostgreSQL + ZFS best practices
PostgreSQL + ZFS best practicesSean Chittenden
 
State of the Art Thin Provisioning
State of the Art Thin ProvisioningState of the Art Thin Provisioning
State of the Art Thin ProvisioningStephen Foskett
 
LAS16-400: Mini Conference 3 AOSP (Session 1)
LAS16-400: Mini Conference 3 AOSP (Session 1)LAS16-400: Mini Conference 3 AOSP (Session 1)
LAS16-400: Mini Conference 3 AOSP (Session 1)Linaro
 
Hadoop Distributed File System for Big Data Analytics
Hadoop Distributed File System for Big Data AnalyticsHadoop Distributed File System for Big Data Analytics
Hadoop Distributed File System for Big Data AnalyticsDrPDShebaKeziaMalarc
 
Disks and-filesystems
Disks and-filesystemsDisks and-filesystems
Disks and-filesystemsplarsen67
 
Disks and-filesystems
Disks and-filesystemsDisks and-filesystems
Disks and-filesystemsplarsen67
 

Ähnlich wie BiTteRsweet FS (20)

Btrfs: Design, Implementation and the Current Status
Btrfs: Design, Implementation and the Current StatusBtrfs: Design, Implementation and the Current Status
Btrfs: Design, Implementation and the Current Status
 
Btrfs by Chris Mason
Btrfs by Chris MasonBtrfs by Chris Mason
Btrfs by Chris Mason
 
Case study of BtrFS: A fault tolerant File system
Case study of BtrFS: A fault tolerant File systemCase study of BtrFS: A fault tolerant File system
Case study of BtrFS: A fault tolerant File system
 
ZFS
ZFSZFS
ZFS
 
Real Time Operating System
Real Time Operating SystemReal Time Operating System
Real Time Operating System
 
Course 102: Lecture 27: FileSystems in Linux (Part 2)
Course 102: Lecture 27: FileSystems in Linux (Part 2)Course 102: Lecture 27: FileSystems in Linux (Part 2)
Course 102: Lecture 27: FileSystems in Linux (Part 2)
 
Os
OsOs
Os
 
Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...
Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...
Btrfs and Snapper - The Next Steps from Pure Filesystem Features to Integrati...
 
Kfs presentation
Kfs presentationKfs presentation
Kfs presentation
 
os
osos
os
 
XFS.ppt
XFS.pptXFS.ppt
XFS.ppt
 
kerch04.ppt
kerch04.pptkerch04.ppt
kerch04.ppt
 
PostgreSQL + ZFS best practices
PostgreSQL + ZFS best practicesPostgreSQL + ZFS best practices
PostgreSQL + ZFS best practices
 
State of the Art Thin Provisioning
State of the Art Thin ProvisioningState of the Art Thin Provisioning
State of the Art Thin Provisioning
 
LAS16-400: Mini Conference 3 AOSP (Session 1)
LAS16-400: Mini Conference 3 AOSP (Session 1)LAS16-400: Mini Conference 3 AOSP (Session 1)
LAS16-400: Mini Conference 3 AOSP (Session 1)
 
Hadoop Distributed File System for Big Data Analytics
Hadoop Distributed File System for Big Data AnalyticsHadoop Distributed File System for Big Data Analytics
Hadoop Distributed File System for Big Data Analytics
 
Assignment 2 Theoretical
Assignment 2 TheoreticalAssignment 2 Theoretical
Assignment 2 Theoretical
 
Disks and-filesystems
Disks and-filesystemsDisks and-filesystems
Disks and-filesystems
 
Disks and-filesystems
Disks and-filesystemsDisks and-filesystems
Disks and-filesystems
 
Tuning Linux for MongoDB
Tuning Linux for MongoDBTuning Linux for MongoDB
Tuning Linux for MongoDB
 

Mehr von Asociatia ProLinux

Cristina Vintila - 4G - Technology Overview
Cristina Vintila - 4G - Technology OverviewCristina Vintila - 4G - Technology Overview
Cristina Vintila - 4G - Technology OverviewAsociatia ProLinux
 
Nicu Buculei - Progresul WLMRO
Nicu Buculei - Progresul WLMRONicu Buculei - Progresul WLMRO
Nicu Buculei - Progresul WLMROAsociatia ProLinux
 
Razvan Deaconescu - Task Management for the Daily Workaholic
Razvan Deaconescu - Task Management for the Daily WorkaholicRazvan Deaconescu - Task Management for the Daily Workaholic
Razvan Deaconescu - Task Management for the Daily WorkaholicAsociatia ProLinux
 
Răzvan Deaconescu - Biblioteci, gestiunea bibliotecilor
Răzvan Deaconescu - Biblioteci, gestiunea bibliotecilorRăzvan Deaconescu - Biblioteci, gestiunea bibliotecilor
Răzvan Deaconescu - Biblioteci, gestiunea bibliotecilorAsociatia ProLinux
 
Ioan Eugen Stan - Introducere HBase
Ioan Eugen Stan -  Introducere HBaseIoan Eugen Stan -  Introducere HBase
Ioan Eugen Stan - Introducere HBaseAsociatia ProLinux
 
Ciprian Badescu, Eugen Stoianovici - CUBRID
Ciprian Badescu, Eugen Stoianovici - CUBRIDCiprian Badescu, Eugen Stoianovici - CUBRID
Ciprian Badescu, Eugen Stoianovici - CUBRIDAsociatia ProLinux
 
Petru Ratiu - Linux bonding meets sysfs
Petru Ratiu - Linux bonding meets sysfsPetru Ratiu - Linux bonding meets sysfs
Petru Ratiu - Linux bonding meets sysfsAsociatia ProLinux
 
Ovidiu Constantin - Linux From Scratch 6.8
Ovidiu Constantin - Linux From Scratch 6.8Ovidiu Constantin - Linux From Scratch 6.8
Ovidiu Constantin - Linux From Scratch 6.8Asociatia ProLinux
 
Radu Zoran - Linux pe un Tablet PC
Radu Zoran - Linux pe un Tablet PCRadu Zoran - Linux pe un Tablet PC
Radu Zoran - Linux pe un Tablet PCAsociatia ProLinux
 
Ovidiu Constantin - Debian Live
Ovidiu Constantin - Debian LiveOvidiu Constantin - Debian Live
Ovidiu Constantin - Debian LiveAsociatia ProLinux
 
Ovidiu constantin dd-wrt vs open wrt
Ovidiu constantin   dd-wrt vs open wrtOvidiu constantin   dd-wrt vs open wrt
Ovidiu constantin dd-wrt vs open wrtAsociatia ProLinux
 
Workflow fotografic cu Darktable - Nicu Buculei
Workflow fotografic cu Darktable - Nicu BuculeiWorkflow fotografic cu Darktable - Nicu Buculei
Workflow fotografic cu Darktable - Nicu BuculeiAsociatia ProLinux
 

Mehr von Asociatia ProLinux (20)

Cristina Vintila - 4G - Technology Overview
Cristina Vintila - 4G - Technology OverviewCristina Vintila - 4G - Technology Overview
Cristina Vintila - 4G - Technology Overview
 
Razvan Deaconescu - rss2email
Razvan Deaconescu - rss2emailRazvan Deaconescu - rss2email
Razvan Deaconescu - rss2email
 
Nicu Buculei - Progresul WLMRO
Nicu Buculei - Progresul WLMRONicu Buculei - Progresul WLMRO
Nicu Buculei - Progresul WLMRO
 
Razvan Deaconescu - Task Management for the Daily Workaholic
Razvan Deaconescu - Task Management for the Daily WorkaholicRazvan Deaconescu - Task Management for the Daily Workaholic
Razvan Deaconescu - Task Management for the Daily Workaholic
 
Răzvan Deaconescu - Biblioteci, gestiunea bibliotecilor
Răzvan Deaconescu - Biblioteci, gestiunea bibliotecilorRăzvan Deaconescu - Biblioteci, gestiunea bibliotecilor
Răzvan Deaconescu - Biblioteci, gestiunea bibliotecilor
 
Ioan Eugen Stan - Introducere HBase
Ioan Eugen Stan -  Introducere HBaseIoan Eugen Stan -  Introducere HBase
Ioan Eugen Stan - Introducere HBase
 
Ioan Eugen Stan - James
Ioan Eugen Stan - JamesIoan Eugen Stan - James
Ioan Eugen Stan - James
 
Dumitru Enache - Bacula
Dumitru Enache - BaculaDumitru Enache - Bacula
Dumitru Enache - Bacula
 
Ciprian Badescu, Eugen Stoianovici - CUBRID
Ciprian Badescu, Eugen Stoianovici - CUBRIDCiprian Badescu, Eugen Stoianovici - CUBRID
Ciprian Badescu, Eugen Stoianovici - CUBRID
 
Ovidiu Constantin - ReactOS
Ovidiu Constantin - ReactOSOvidiu Constantin - ReactOS
Ovidiu Constantin - ReactOS
 
Petru Ratiu - Linux bonding meets sysfs
Petru Ratiu - Linux bonding meets sysfsPetru Ratiu - Linux bonding meets sysfs
Petru Ratiu - Linux bonding meets sysfs
 
Alex Juncu - UDPCast
Alex Juncu - UDPCastAlex Juncu - UDPCast
Alex Juncu - UDPCast
 
Razvan Deaconescu - Org-Mode
Razvan Deaconescu - Org-ModeRazvan Deaconescu - Org-Mode
Razvan Deaconescu - Org-Mode
 
Ovidiu Constantin - Linux From Scratch 6.8
Ovidiu Constantin - Linux From Scratch 6.8Ovidiu Constantin - Linux From Scratch 6.8
Ovidiu Constantin - Linux From Scratch 6.8
 
Radu Zoran - Linux pe un Tablet PC
Radu Zoran - Linux pe un Tablet PCRadu Zoran - Linux pe un Tablet PC
Radu Zoran - Linux pe un Tablet PC
 
Ovidiu Constantin - Debian Live
Ovidiu Constantin - Debian LiveOvidiu Constantin - Debian Live
Ovidiu Constantin - Debian Live
 
Razvan Deaconescu - Redmine
Razvan Deaconescu - RedmineRazvan Deaconescu - Redmine
Razvan Deaconescu - Redmine
 
Ovidiu constantin 1 airopl
Ovidiu constantin   1 airoplOvidiu constantin   1 airopl
Ovidiu constantin 1 airopl
 
Ovidiu constantin dd-wrt vs open wrt
Ovidiu constantin   dd-wrt vs open wrtOvidiu constantin   dd-wrt vs open wrt
Ovidiu constantin dd-wrt vs open wrt
 
Workflow fotografic cu Darktable - Nicu Buculei
Workflow fotografic cu Darktable - Nicu BuculeiWorkflow fotografic cu Darktable - Nicu Buculei
Workflow fotografic cu Darktable - Nicu Buculei
 

Kürzlich hochgeladen

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
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
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 

Kürzlich hochgeladen (20)

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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
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
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 

BiTteRsweet FS

  • 1. BiTteRsweet FS Dan Şerban
  • 2. BTRFS rationale and design goals • Feature-focused, general-purpose FS that scales to very large storage • Linux desperately needs a copy-on-write FS (superior crash safety) • Simplify administration of the entire storage stack • Address the lack of pooled storage functionality (integrated volume management, multiple device support) in Linux file systems • Allow for unlimited snapshots that are: - cheap in storage - fast to perform
  • 3. BTRFS rationale and design goals • Very fault tolerant - never trust the underlying spinning media - solid checksumming of all file data and metadata using parent-stored checksums - transactional object store • Self-healing (not yet implemented) - avoidance of bit-rot errors +1 - actual error correction -1
  • 4. BTRFS rationale and design goals • Extent based file storage • Dynamic (on an as-needed basis) allocation of inodes • Space-efficient packing of small files • Performance that doesn't degrade over time
  • 5. BTRFS vs. ZFS - some context • Andrew Morton has famously called ZFS "a rampant layering violation" because it combines the functionality of a file system, volume manager, and RAID controller • However, BTRFS does the same • By changing where the boundaries are between layers ZFS and BTRFS make the entire storage stack much simpler • ZFS and BTRFS layering is done in a way that gives each layer more knowledge of the structures of the other layers
  • 6. BTRFS vs. ZFS - some context • Upper layers having more knowledge about the physical side of storing data on disk enables e.g. selective resilvering of only used blocks • BTRFS was merged into the mainline kernel so quickly because it is building on mature kernel features • It is using the same device mapping code for RAID and block abstraction that Linux’s software RAID and LVM are based on
  • 7. BTRFS subvolumes and snapshots • Subvolume is the unit of snapshotting • Subvolumes (and their snapshots) are similar to independent filesystems that: - share the same devpool as their backing store - are folded into the namespace of the parent BTRFS volume • Snapshots are subvolumes with initial content • Formal rollback to snapshot not implemented • Only writable snapshots are possible as of now (2.6.34) • BTRFS will eventually have read-only snapshots through settable quotas at mount time ... but quotas aren't yet implemented
  • 8. #btrfs (IRC) wisdom Me: is BTRFS self-healing, like ZFS? #btrfs: - will be, isn't yet - self-healing is just buzz for saying when the data/metadata checksums fail on one disk, use the redudant copy found on another disk to replace a faulty bit/block - currently btrfs will use the redundant data if the checksum fails, but it doesn't actually rewrite the original - it'll issue a warning in dmesg though, so it's possible to hack in a user-space tool to do the rewrite in a nicely hackish way :) - currently, errors can only be fixed by triggering a rebalance
  • 9. #btrfs (IRC) wisdom (N.N. Stability issue at or near 100% disk usage) #btrfs: - BTRFS: don't call us, we'll call you ... when it comes to space usage. When BTRFS calls, it sends a giant kernel oops message, conveniently crashing the machine so that you can without additional penalty power the server down and insert a new disk. - /sarcasm (N.N. ZFS suffers from the same issue)
  • 10. #btrfs (IRC) wisdom #btrfs: - for a 30G partition rebalancing should take a few hours, just look at your dmesg and see if there are lots of repeated messages. - if there are, then it's hanging - if there aren't, then it's working - generally if you don't have enough space, the rebalancing process will go into an infinite loop since it can't find a big enough chunk of free space to stuff things in - so just delete a large file or two and then you'll have plenty of free space and it'll progress. - also, you can't kill a rebalancing process - it's unkillable, so you have to reboot to stop it - it's pretty safe though