SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
Hybrid Storage Pools
         Using Disk and Flash with ZFS
       (Now with the benefit of hindsight!)



Adam Leventhal @ahl
Flash	
  Emerges	
  
•  Storage	
  medium	
  invented	
  in	
  1980	
  
      –    Very	
  fast	
  reads	
  (~50us)	
  
      –    Fast	
  writes	
  (~300us)	
  
      –    High	
  IOPS	
  /	
  low	
  latency	
  
      –    Limited	
  number	
  of	
  write	
  cycles	
  
•  2004:	
  flash	
  cost	
  as	
  much	
  as	
  DRAM	
  
•  2007:	
  flash	
  cost	
  was	
  right	
  between	
  DRAM	
  and	
  disk	
  
Disk	
  is	
  dead…	
  just	
  like	
  tape	
  
•  Many	
  predicted	
  the	
  death	
  of	
  disk	
  or	
  relegaSon	
  of	
  disk	
  to	
  backup	
  
•  Didn’t	
  happen	
  
•  All-­‐flash	
  soluSons	
  sSll	
  trying	
  to	
  gain	
  mass	
  adopSon	
  
ZFS	
  circa	
  2007	
  
•    Sun	
  was	
  developing	
  a	
  ZFS-­‐based	
  storage	
  appliance	
  (Fishworks)	
  
•    ZFS:	
  enterprise	
  class	
  storage	
  on	
  commodity	
  hardware	
  
•    Problem:	
  enterprise	
  storage	
  was	
  a	
  lot	
  faster	
  
•    Looked	
  at	
  tradiSonal	
  soluSons	
  
       –  NV-­‐DRAM	
  to	
  accelerate	
  writes	
  
       –  Massive	
  DRAM	
  to	
  cache	
  reads	
  
•  But	
  it	
  was	
  just	
  the	
  right	
  Sme	
  for	
  flash…	
  
Hybrid	
  Storage	
  Pool	
  (HSP)	
  
•  Use	
  flash	
  as	
  a	
  storage	
  Ser	
  
•  Between	
  DRAM	
  and	
  disk	
  in	
  cost,	
  capacity,	
  latency,	
  throughput	
  
•  Use	
  commodity	
  disks	
  
      –  7200	
  RPM	
  
      –  Good	
  throughput	
  
      –  Great	
  $/GB	
  and	
  wa_s/GB	
  
•  Combine	
  disk,	
  flash,	
  DRAM	
  into	
  a	
  hybrid	
  pool	
  
•  In	
  ZFS:	
  
      –  ZFS	
  intent	
  log	
  (ZIL)	
  for	
  write	
  acceleraSon	
  
      –  L2ARC	
  to	
  extend	
  the	
  reach	
  of	
  the	
  ZFS	
  cache	
  
Hybrid	
  Storage	
  Pool	
  Example	
  
Hybrid	
  Storage	
  Pool	
  Example	
  
ZFS	
  Caching	
  
•  AdapSve	
  Replacement	
  Cache	
  (ARC)	
  as	
  the	
  primary	
  DRAM	
  cache	
  
•  L2ARC	
  developed	
  by	
  Brendan	
  Gregg	
  to	
  use	
  external	
  (flash)	
  devices	
  
•  Takes	
  into	
  account	
  opSmal	
  IO	
  pa_erns	
  for	
  flash	
  
      –  Random,	
  small	
  writes	
  =	
  hastened	
  failure	
  
      –  SequenSal,	
  large	
  writes	
  =	
  happy	
  SSDs	
  
      –  Thro_les	
  writes	
  to	
  preserve	
  longevity	
  
•  Uses	
  predicSve	
  evicSon	
  to	
  idenSfy	
  blocks	
  to	
  cache	
  
L2ARC	
  Problems	
  
•  Non-­‐persistent	
  
      –  Aeer	
  a	
  reboot	
  or	
  fatal	
  system	
  failure,	
  the	
  cache	
  is	
  empty	
  
•  Slow	
  to	
  warm	
  up	
  
      –  Will	
  only	
  write	
  to	
  one	
  device	
  at	
  a	
  Sme	
  -­‐>	
  best	
  case	
  1TB	
  /	
  hour	
  
      –  Real	
  world	
  example	
  2TB	
  in	
  24	
  hours	
  


•  Conceptually	
  most	
  of	
  the	
  way	
  there	
  
•  No	
  real	
  way	
  to	
  tune	
  it	
  to	
  a	
  workload	
  
•  Not	
  much	
  real-­‐world	
  tesSng	
  and	
  tuning	
  done	
  
Changing	
  Landscape	
  
•    DRAM	
  prices	
  have	
  dropped	
  dramaScally	
  
•    Large	
  memory	
  systems	
  available	
  (3TB+)	
  
•    NAND	
  flash	
  is	
  geing	
  trickier	
  to	
  build	
  around	
  
•    Endurance	
  and	
  performance	
  decrease	
  as	
  lithography	
  and	
  price	
  decrease	
  
      –  MLC	
  and	
  “TLC”	
  (volume	
  flash)	
  have	
  parScularly	
  short	
  lives	
  
•  Running	
  into	
  size	
  limitaSons	
  
      –  32nm	
  in	
  2008	
  
      –  19nm	
  today	
  
      –  Supposed	
  floor	
  around	
  11nm	
  
•  SSDs	
  are	
  becoming	
  increasingly	
  complex	
  
What	
  to	
  do	
  today?	
  
•  The	
  L2ARC	
  can	
  help	
  
      –    The	
  SSD	
  space	
  is	
  large	
  and	
  highly	
  varied	
  
      –    Generally	
  cheap,	
  laptop	
  SSDs	
  suffice	
  for	
  the	
  L2ARC	
  
      –    Give	
  it	
  enough	
  Sme	
  to	
  warm	
  up	
  (hours	
  or	
  days)	
  
      –    Measure	
  the	
  impact	
  on	
  your	
  actual	
  workload	
  
•  The	
  ARC	
  is	
  great	
  and	
  relaSvely	
  simple	
  
      –  Load	
  up	
  on	
  DRAM	
  
Next	
  for	
  ZFS	
  
•  For	
  the	
  L2ARC	
  to	
  be	
  viable,	
  it	
  needs	
  to	
  be	
  persistent	
  
•  Lots	
  of	
  performance	
  work	
  needed	
  
       –  Run	
  it	
  through	
  a	
  bunch	
  of	
  real-­‐world	
  use	
  cases	
  
       –  Make	
  it	
  easy	
  to	
  collect	
  coherent,	
  relevant	
  data	
  
       –  Create	
  the	
  right	
  knobs	
  for	
  users	
  to	
  turn	
  




•  There	
  are	
  a	
  few	
  companies	
  using	
  the	
  L2ARC	
  
•  Hopefully	
  they	
  will	
  take	
  up	
  the	
  mantle	
  
Questions?

Más contenido relacionado

La actualidad más candente

Vancouver bug enterprise storage and zfs
Vancouver bug   enterprise storage and zfsVancouver bug   enterprise storage and zfs
Vancouver bug enterprise storage and zfsRami Jebara
 
V mware2012 20121221_final
V mware2012 20121221_finalV mware2012 20121221_final
V mware2012 20121221_finalWeb2Present
 
Cassandra and Solid State Drives
Cassandra and Solid State DrivesCassandra and Solid State Drives
Cassandra and Solid State DrivesRick Branson
 
CASSANDRA MEETUP - Choosing the right cloud instances for success
CASSANDRA MEETUP - Choosing the right cloud instances for successCASSANDRA MEETUP - Choosing the right cloud instances for success
CASSANDRA MEETUP - Choosing the right cloud instances for successErick Ramirez
 
Ceph Day San Jose - Ceph at Salesforce
Ceph Day San Jose - Ceph at Salesforce Ceph Day San Jose - Ceph at Salesforce
Ceph Day San Jose - Ceph at Salesforce Ceph Community
 
Cassandra Day Chicago 2015: DataStax Enterprise & Apache Cassandra Hardware B...
Cassandra Day Chicago 2015: DataStax Enterprise & Apache Cassandra Hardware B...Cassandra Day Chicago 2015: DataStax Enterprise & Apache Cassandra Hardware B...
Cassandra Day Chicago 2015: DataStax Enterprise & Apache Cassandra Hardware B...DataStax Academy
 
Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)Howard Marks
 
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...In-Memory Computing Summit
 
HBase Sizing Notes
HBase Sizing NotesHBase Sizing Notes
HBase Sizing Noteslarsgeorge
 
Sql saturday powerpoint dc_san
Sql saturday powerpoint dc_sanSql saturday powerpoint dc_san
Sql saturday powerpoint dc_sanJoseph D'Antoni
 
StarWind Virtual SAN Overview
StarWind Virtual SAN OverviewStarWind Virtual SAN Overview
StarWind Virtual SAN OverviewStarWind Software
 
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Lars Marowsky-Brée
 
Right-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual MachineRight-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual Machineheraflux
 
MEETUP - Unboxing Apache Cassandra 3.10
MEETUP - Unboxing Apache Cassandra 3.10MEETUP - Unboxing Apache Cassandra 3.10
MEETUP - Unboxing Apache Cassandra 3.10Erick Ramirez
 
Scaling Cassandra for Big Data
Scaling Cassandra for Big DataScaling Cassandra for Big Data
Scaling Cassandra for Big DataDataStax Academy
 
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase CreateWebinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase CreateStorage Switzerland
 
San Francisco Cassadnra Meetup - March 2014: I/O Performance tuning on AWS fo...
San Francisco Cassadnra Meetup - March 2014: I/O Performance tuning on AWS fo...San Francisco Cassadnra Meetup - March 2014: I/O Performance tuning on AWS fo...
San Francisco Cassadnra Meetup - March 2014: I/O Performance tuning on AWS fo...DataStax Academy
 

La actualidad más candente (18)

Vancouver bug enterprise storage and zfs
Vancouver bug   enterprise storage and zfsVancouver bug   enterprise storage and zfs
Vancouver bug enterprise storage and zfs
 
V mware2012 20121221_final
V mware2012 20121221_finalV mware2012 20121221_final
V mware2012 20121221_final
 
Cassandra and Solid State Drives
Cassandra and Solid State DrivesCassandra and Solid State Drives
Cassandra and Solid State Drives
 
CASSANDRA MEETUP - Choosing the right cloud instances for success
CASSANDRA MEETUP - Choosing the right cloud instances for successCASSANDRA MEETUP - Choosing the right cloud instances for success
CASSANDRA MEETUP - Choosing the right cloud instances for success
 
Ceph Day San Jose - Ceph at Salesforce
Ceph Day San Jose - Ceph at Salesforce Ceph Day San Jose - Ceph at Salesforce
Ceph Day San Jose - Ceph at Salesforce
 
Cassandra Day Chicago 2015: DataStax Enterprise & Apache Cassandra Hardware B...
Cassandra Day Chicago 2015: DataStax Enterprise & Apache Cassandra Hardware B...Cassandra Day Chicago 2015: DataStax Enterprise & Apache Cassandra Hardware B...
Cassandra Day Chicago 2015: DataStax Enterprise & Apache Cassandra Hardware B...
 
Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)
 
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
 
HBase Sizing Notes
HBase Sizing NotesHBase Sizing Notes
HBase Sizing Notes
 
Sql saturday powerpoint dc_san
Sql saturday powerpoint dc_sanSql saturday powerpoint dc_san
Sql saturday powerpoint dc_san
 
Drupal performance
Drupal performanceDrupal performance
Drupal performance
 
StarWind Virtual SAN Overview
StarWind Virtual SAN OverviewStarWind Virtual SAN Overview
StarWind Virtual SAN Overview
 
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
 
Right-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual MachineRight-Sizing your SQL Server Virtual Machine
Right-Sizing your SQL Server Virtual Machine
 
MEETUP - Unboxing Apache Cassandra 3.10
MEETUP - Unboxing Apache Cassandra 3.10MEETUP - Unboxing Apache Cassandra 3.10
MEETUP - Unboxing Apache Cassandra 3.10
 
Scaling Cassandra for Big Data
Scaling Cassandra for Big DataScaling Cassandra for Big Data
Scaling Cassandra for Big Data
 
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase CreateWebinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
 
San Francisco Cassadnra Meetup - March 2014: I/O Performance tuning on AWS fo...
San Francisco Cassadnra Meetup - March 2014: I/O Performance tuning on AWS fo...San Francisco Cassadnra Meetup - March 2014: I/O Performance tuning on AWS fo...
San Francisco Cassadnra Meetup - March 2014: I/O Performance tuning on AWS fo...
 

Similar a Using Disk and Flash with ZFS

DownloadClassSessionFile (44).pdf
DownloadClassSessionFile (44).pdfDownloadClassSessionFile (44).pdf
DownloadClassSessionFile (44).pdfHanaBurhan1
 
2015 deploying flash in the data center
2015 deploying flash in the data center2015 deploying flash in the data center
2015 deploying flash in the data centerHoward Marks
 
[G2]fa ce deview_2012
[G2]fa ce deview_2012[G2]fa ce deview_2012
[G2]fa ce deview_2012NAVER D2
 
SUSE Storage: Sizing and Performance (Ceph)
SUSE Storage: Sizing and Performance (Ceph)SUSE Storage: Sizing and Performance (Ceph)
SUSE Storage: Sizing and Performance (Ceph)Lars Marowsky-Brée
 
How to randomly access data in close-to-RAM speeds but a lower cost with SSD’...
How to randomly access data in close-to-RAM speeds but a lower cost with SSD’...How to randomly access data in close-to-RAM speeds but a lower cost with SSD’...
How to randomly access data in close-to-RAM speeds but a lower cost with SSD’...JAXLondon2014
 
SSDs, IMDGs and All the Rest - Jax London
SSDs, IMDGs and All the Rest - Jax LondonSSDs, IMDGs and All the Rest - Jax London
SSDs, IMDGs and All the Rest - Jax LondonUri Cohen
 
In-memory Data Management Trends & Techniques
In-memory Data Management Trends & TechniquesIn-memory Data Management Trends & Techniques
In-memory Data Management Trends & TechniquesHazelcast
 
Dbms by jeet goyal
Dbms by jeet goyalDbms by jeet goyal
Dbms by jeet goyaljeet1991
 
Deploying ssd in the data center 2014
Deploying ssd in the data center 2014Deploying ssd in the data center 2014
Deploying ssd in the data center 2014Howard Marks
 
Presentation database on flash
Presentation   database on flashPresentation   database on flash
Presentation database on flashxKinAnx
 
Comparison of-foss-distributed-storage
Comparison of-foss-distributed-storageComparison of-foss-distributed-storage
Comparison of-foss-distributed-storageMarian Marinov
 
4_5837027281599466545_220608_094042.pdf
4_5837027281599466545_220608_094042.pdf4_5837027281599466545_220608_094042.pdf
4_5837027281599466545_220608_094042.pdfssusere05ec21
 
Tuning Linux Windows and Firebird for Heavy Workload
Tuning Linux Windows and Firebird for Heavy WorkloadTuning Linux Windows and Firebird for Heavy Workload
Tuning Linux Windows and Firebird for Heavy WorkloadMarius Adrian Popa
 
VDI storage and storage virtualization
VDI storage and storage virtualizationVDI storage and storage virtualization
VDI storage and storage virtualizationSisimon Soman
 
Using flash on the server side
Using flash on the server sideUsing flash on the server side
Using flash on the server sideHoward Marks
 
505 kobal exadata
505 kobal exadata505 kobal exadata
505 kobal exadataKam Chan
 
SanDisk: Persistent Memory and Cassandra
SanDisk: Persistent Memory and CassandraSanDisk: Persistent Memory and Cassandra
SanDisk: Persistent Memory and CassandraDataStax Academy
 
Kafka on ZFS: Better Living Through Filesystems
Kafka on ZFS: Better Living Through Filesystems Kafka on ZFS: Better Living Through Filesystems
Kafka on ZFS: Better Living Through Filesystems confluent
 

Similar a Using Disk and Flash with ZFS (20)

DownloadClassSessionFile (44).pdf
DownloadClassSessionFile (44).pdfDownloadClassSessionFile (44).pdf
DownloadClassSessionFile (44).pdf
 
Unit 4 DBMS.ppt
Unit 4 DBMS.pptUnit 4 DBMS.ppt
Unit 4 DBMS.ppt
 
2015 deploying flash in the data center
2015 deploying flash in the data center2015 deploying flash in the data center
2015 deploying flash in the data center
 
[G2]fa ce deview_2012
[G2]fa ce deview_2012[G2]fa ce deview_2012
[G2]fa ce deview_2012
 
SUSE Storage: Sizing and Performance (Ceph)
SUSE Storage: Sizing and Performance (Ceph)SUSE Storage: Sizing and Performance (Ceph)
SUSE Storage: Sizing and Performance (Ceph)
 
How to randomly access data in close-to-RAM speeds but a lower cost with SSD’...
How to randomly access data in close-to-RAM speeds but a lower cost with SSD’...How to randomly access data in close-to-RAM speeds but a lower cost with SSD’...
How to randomly access data in close-to-RAM speeds but a lower cost with SSD’...
 
SSDs, IMDGs and All the Rest - Jax London
SSDs, IMDGs and All the Rest - Jax LondonSSDs, IMDGs and All the Rest - Jax London
SSDs, IMDGs and All the Rest - Jax London
 
In-memory Data Management Trends & Techniques
In-memory Data Management Trends & TechniquesIn-memory Data Management Trends & Techniques
In-memory Data Management Trends & Techniques
 
Dbms by jeet goyal
Dbms by jeet goyalDbms by jeet goyal
Dbms by jeet goyal
 
Deploying ssd in the data center 2014
Deploying ssd in the data center 2014Deploying ssd in the data center 2014
Deploying ssd in the data center 2014
 
Presentation database on flash
Presentation   database on flashPresentation   database on flash
Presentation database on flash
 
Comparison of-foss-distributed-storage
Comparison of-foss-distributed-storageComparison of-foss-distributed-storage
Comparison of-foss-distributed-storage
 
4_5837027281599466545_220608_094042.pdf
4_5837027281599466545_220608_094042.pdf4_5837027281599466545_220608_094042.pdf
4_5837027281599466545_220608_094042.pdf
 
Tuning Linux Windows and Firebird for Heavy Workload
Tuning Linux Windows and Firebird for Heavy WorkloadTuning Linux Windows and Firebird for Heavy Workload
Tuning Linux Windows and Firebird for Heavy Workload
 
VDI storage and storage virtualization
VDI storage and storage virtualizationVDI storage and storage virtualization
VDI storage and storage virtualization
 
Memory types
Memory typesMemory types
Memory types
 
Using flash on the server side
Using flash on the server sideUsing flash on the server side
Using flash on the server side
 
505 kobal exadata
505 kobal exadata505 kobal exadata
505 kobal exadata
 
SanDisk: Persistent Memory and Cassandra
SanDisk: Persistent Memory and CassandraSanDisk: Persistent Memory and Cassandra
SanDisk: Persistent Memory and Cassandra
 
Kafka on ZFS: Better Living Through Filesystems
Kafka on ZFS: Better Living Through Filesystems Kafka on ZFS: Better Living Through Filesystems
Kafka on ZFS: Better Living Through Filesystems
 

Más de ahl0003

Understanding Performance with DTrace
Understanding Performance with DTraceUnderstanding Performance with DTrace
Understanding Performance with DTraceahl0003
 
A Brief History of System Calls
A Brief History of System CallsA Brief History of System Calls
A Brief History of System Callsahl0003
 
On blogging
On bloggingOn blogging
On bloggingahl0003
 
ZFS for Databases
ZFS for DatabasesZFS for Databases
ZFS for Databasesahl0003
 
OpenZFS data-driven performance
OpenZFS data-driven performanceOpenZFS data-driven performance
OpenZFS data-driven performanceahl0003
 
A brief history of DTrace
A brief history of DTraceA brief history of DTrace
A brief history of DTraceahl0003
 

Más de ahl0003 (6)

Understanding Performance with DTrace
Understanding Performance with DTraceUnderstanding Performance with DTrace
Understanding Performance with DTrace
 
A Brief History of System Calls
A Brief History of System CallsA Brief History of System Calls
A Brief History of System Calls
 
On blogging
On bloggingOn blogging
On blogging
 
ZFS for Databases
ZFS for DatabasesZFS for Databases
ZFS for Databases
 
OpenZFS data-driven performance
OpenZFS data-driven performanceOpenZFS data-driven performance
OpenZFS data-driven performance
 
A brief history of DTrace
A brief history of DTraceA brief history of DTrace
A brief history of DTrace
 

Using Disk and Flash with ZFS

  • 1. Hybrid Storage Pools Using Disk and Flash with ZFS (Now with the benefit of hindsight!) Adam Leventhal @ahl
  • 2. Flash  Emerges   •  Storage  medium  invented  in  1980   –  Very  fast  reads  (~50us)   –  Fast  writes  (~300us)   –  High  IOPS  /  low  latency   –  Limited  number  of  write  cycles   •  2004:  flash  cost  as  much  as  DRAM   •  2007:  flash  cost  was  right  between  DRAM  and  disk  
  • 3. Disk  is  dead…  just  like  tape   •  Many  predicted  the  death  of  disk  or  relegaSon  of  disk  to  backup   •  Didn’t  happen   •  All-­‐flash  soluSons  sSll  trying  to  gain  mass  adopSon  
  • 4. ZFS  circa  2007   •  Sun  was  developing  a  ZFS-­‐based  storage  appliance  (Fishworks)   •  ZFS:  enterprise  class  storage  on  commodity  hardware   •  Problem:  enterprise  storage  was  a  lot  faster   •  Looked  at  tradiSonal  soluSons   –  NV-­‐DRAM  to  accelerate  writes   –  Massive  DRAM  to  cache  reads   •  But  it  was  just  the  right  Sme  for  flash…  
  • 5. Hybrid  Storage  Pool  (HSP)   •  Use  flash  as  a  storage  Ser   •  Between  DRAM  and  disk  in  cost,  capacity,  latency,  throughput   •  Use  commodity  disks   –  7200  RPM   –  Good  throughput   –  Great  $/GB  and  wa_s/GB   •  Combine  disk,  flash,  DRAM  into  a  hybrid  pool   •  In  ZFS:   –  ZFS  intent  log  (ZIL)  for  write  acceleraSon   –  L2ARC  to  extend  the  reach  of  the  ZFS  cache  
  • 6. Hybrid  Storage  Pool  Example  
  • 7. Hybrid  Storage  Pool  Example  
  • 8. ZFS  Caching   •  AdapSve  Replacement  Cache  (ARC)  as  the  primary  DRAM  cache   •  L2ARC  developed  by  Brendan  Gregg  to  use  external  (flash)  devices   •  Takes  into  account  opSmal  IO  pa_erns  for  flash   –  Random,  small  writes  =  hastened  failure   –  SequenSal,  large  writes  =  happy  SSDs   –  Thro_les  writes  to  preserve  longevity   •  Uses  predicSve  evicSon  to  idenSfy  blocks  to  cache  
  • 9. L2ARC  Problems   •  Non-­‐persistent   –  Aeer  a  reboot  or  fatal  system  failure,  the  cache  is  empty   •  Slow  to  warm  up   –  Will  only  write  to  one  device  at  a  Sme  -­‐>  best  case  1TB  /  hour   –  Real  world  example  2TB  in  24  hours   •  Conceptually  most  of  the  way  there   •  No  real  way  to  tune  it  to  a  workload   •  Not  much  real-­‐world  tesSng  and  tuning  done  
  • 10. Changing  Landscape   •  DRAM  prices  have  dropped  dramaScally   •  Large  memory  systems  available  (3TB+)   •  NAND  flash  is  geing  trickier  to  build  around   •  Endurance  and  performance  decrease  as  lithography  and  price  decrease   –  MLC  and  “TLC”  (volume  flash)  have  parScularly  short  lives   •  Running  into  size  limitaSons   –  32nm  in  2008   –  19nm  today   –  Supposed  floor  around  11nm   •  SSDs  are  becoming  increasingly  complex  
  • 11. What  to  do  today?   •  The  L2ARC  can  help   –  The  SSD  space  is  large  and  highly  varied   –  Generally  cheap,  laptop  SSDs  suffice  for  the  L2ARC   –  Give  it  enough  Sme  to  warm  up  (hours  or  days)   –  Measure  the  impact  on  your  actual  workload   •  The  ARC  is  great  and  relaSvely  simple   –  Load  up  on  DRAM  
  • 12. Next  for  ZFS   •  For  the  L2ARC  to  be  viable,  it  needs  to  be  persistent   •  Lots  of  performance  work  needed   –  Run  it  through  a  bunch  of  real-­‐world  use  cases   –  Make  it  easy  to  collect  coherent,  relevant  data   –  Create  the  right  knobs  for  users  to  turn   •  There  are  a  few  companies  using  the  L2ARC   •  Hopefully  they  will  take  up  the  mantle