SlideShare a Scribd company logo
1 of 29
Compaction and
Splitting in Apache
Accumulo
Billie Rinaldi
billie@hortonworks.com
October 24, 2012
© Hortonworks Inc. 2012   Page 1
What are compaction and splitting?

•Accumulo tables are divided into
 non-overlapping key ranges called
 tablets
•Compaction selects a set of sorted
 files for a single tablet and rewrites
 them into one file
•Splitting divides a tablet into two
 tablets

                                      Page 2
    © Hortonworks Inc. 2012
Tablet Overview

•When memory fills, new sorted files
 are created by flushing
•Sorted files are combined together
 into fewer sorted files




                                   Page 3
   © Hortonworks Inc. 2012
How much data are you writing?

•If you never compact – O(N)
                                 …
•If you always compact – O(N2)


                             …

                                     Page 4
   © Hortonworks Inc. 2012
Accumulo Compaction Algorithm

•Compact a set of files when:

size of the
largest file
                               ×
                               compaction
                                  ratio     ≤    sum of the
                                                sizes of files



   table.compaction.major.ratio



                                                                 Page 5
     © Hortonworks Inc. 2012
In Action (r = 3, N = 1, W = 1)




                                  Page 6
    © Hortonworks Inc. 2012
In Action (r = 3, N = 2, W = 2)




                                  Page 7
    © Hortonworks Inc. 2012
In Action (r = 3, N = 3, W = 3)




                                  Page 8
    © Hortonworks Inc. 2012
In Action (r = 3, N = 3, W = 6)




                                  Page 9
    © Hortonworks Inc. 2012
In Action (r = 3, N = 4, W = 7)




                                  Page 10
    © Hortonworks Inc. 2012
In Action (r = 3, N = 5, W = 8)




                                  Page 11
    © Hortonworks Inc. 2012
In Action (r = 3, N = 6, W = 9)




                                  Page 12
    © Hortonworks Inc. 2012
In Action (r = 3, N = 6, W = 12)




                                   Page 13
    © Hortonworks Inc. 2012
In Action (r = 3, N = 7, W = 13)




                                   Page 14
    © Hortonworks Inc. 2012
In Action (r = 3, N = 8, W = 14)




                                   Page 15
    © Hortonworks Inc. 2012
In Action (r = 3, N = 9, W = 15)




                                   Page 16
    © Hortonworks Inc. 2012
In Action (r = 3, N = 9, W = 24)




                                   Page 17
    © Hortonworks Inc. 2012
In Action (r = 3, N = 27, W = 90*)




                                     Page 18
    © Hortonworks Inc. 2012
Amount of data written

•W(rk) = (k+1)rk – (k-1)rk-1
•Thus, W(N) ≈ O(N log N)




                               Page 19
    © Hortonworks Inc. 2012
HBase Compaction Algorithm

•Compact a set of files when:

                                    sum of the
size of the
largest file                   ≤     sizes of      ×
                                                   compaction
                                                      ratio
                                   smaller files


  hbase.hstore.compaction.ratio



                                                            Page 20
     © Hortonworks Inc. 2012
HBase Compaction Algorithm

•Compact a set of files when:

                                    sum of the
size of the
largest file                   ≤     sizes of      ×   compaction
                                                          ratio
                                   smaller files


                                                   1
    HBase ratio                     =     Accumulo
                                            ratio       –1
                                                                Page 21
     © Hortonworks Inc. 2012
Other Compaction-related Properties

•Accumulo
  table.file.max
  tserver.compaction.major.thread.files.open.max
  tserver.compaction.major.delay
  table.compaction.major.everything.idle

•Hbase
  hbase.hstore.compactionThreshold
  hbase.hstore.blockingStoreFiles
  hbase.hstore.blockingWaitTime
  hbase.hstore.compaction.min
  hbase.hstore.compaction.max
  hbase.hstore.compaction.min.size
  hbase.hstore.compaction.max.size
                                                   Page 22
    © Hortonworks Inc. 2012
Accumulo Splitting

•Always check to see if a split is
 needed before compacting
•If it is needed, split first
•File names stored in metadata table




   split
threshold
                                  Page 23
      © Hortonworks Inc. 2012
Accumulo Splitting Process

•Tablet closed, no new writes
•Three writes to the metadata table
 –tablet made smaller & marked as splitting
 –new tablet added
 –original tablet's splitting marks removed
•Tablet server swaps new tablets for
 old tablet in its online tablet list
•Master informed
                                        Page 24
   © Hortonworks Inc. 2012
Accumulo Splitting Recovery

•Whenever a tablet is brought online,
 the tablet server checks to see if it
 has split marks.
•If so, it assumes the splitting
 process was interrupted and
 finishes making changes to the
 metadata table.


                                    Page 25
   © Hortonworks Inc. 2012
Hortonworks Data Platform
                                                     • Simplify deployment to get
                                                       started quickly and easily

                                                     • Monitor, manage any size
                                                       cluster with familiar
                                                       console and tools


                                1                    • Only platform to include
                                                       data integration services
                                                       to interact with any data

                                                     • Metadata services opens
                                                       the platform for integration
                                                       with existing applications

                                                     • Dependable high
                                                       availability architecture
 Reduce risks and cost of adoption
 Lower the total cost to administer and provision   • Tested at scale to future
                                                       proof your cluster growth
 Integrate with your existing ecosystem

                                                                             Page 26
      © Hortonworks Inc. 2012
Hortonworks Training

                         The expert source for
                         Apache Hadoop training &
                         certification

Role-based Developer and
Administration training
 – Coursework built and maintained by the core Apache Hadoop development team.
 – The “right” course, with the most extensive and realistic hands-on materials
 – Provide an immersive experience into real-world Hadoop scenarios
 – Public and Private courses available




Comprehensive Apache Hadoop
     © Hortonworks Inc. 2012
                                                                            Page 27
Next Steps?

1                                 Download Hortonworks Data Platform
                                  hortonworks.com/download




2   Use the getting started guide
    hortonworks.com/get-started



3   Learn more… get support

                                                             Hortonworks Support
       • Expert role based training                          • Full lifecycle technical support
       • Course for admins, developers                         across four service levels
         and operators                                       • Delivered by Apache Hadoop
       • Certification program                                 Experts/Committers
       • Custom onsite options                               • Forward-compatible
       hortonworks.com/training                              hortonworks.com/support


                                                                                                  Page 28
        © Hortonworks Inc. 2012
Questions?
dev@accumulo.apache.org




                              Page 29
    © Hortonworks Inc. 2012

More Related Content

What's hot

Introduction to hadoop and hdfs
Introduction to hadoop and hdfsIntroduction to hadoop and hdfs
Introduction to hadoop and hdfs
TrendProgContest13
 
Hadoop 2.0 Architecture | HDFS Federation | NameNode High Availability |
Hadoop 2.0 Architecture | HDFS Federation | NameNode High Availability | Hadoop 2.0 Architecture | HDFS Federation | NameNode High Availability |
Hadoop 2.0 Architecture | HDFS Federation | NameNode High Availability |
Edureka!
 

What's hot (20)

Hadoop 3 @ Hadoop Summit San Jose 2017
Hadoop 3 @ Hadoop Summit San Jose 2017Hadoop 3 @ Hadoop Summit San Jose 2017
Hadoop 3 @ Hadoop Summit San Jose 2017
 
Hadoop Backup and Disaster Recovery
Hadoop Backup and Disaster RecoveryHadoop Backup and Disaster Recovery
Hadoop Backup and Disaster Recovery
 
Nov 2011 HUG: Blur - Lucene on Hadoop
Nov 2011 HUG: Blur - Lucene on HadoopNov 2011 HUG: Blur - Lucene on Hadoop
Nov 2011 HUG: Blur - Lucene on Hadoop
 
Hadoop introduction
Hadoop introductionHadoop introduction
Hadoop introduction
 
Intro to HBase - Lars George
Intro to HBase - Lars GeorgeIntro to HBase - Lars George
Intro to HBase - Lars George
 
Geo-based content processing using hbase
Geo-based content processing using hbaseGeo-based content processing using hbase
Geo-based content processing using hbase
 
HDFS Tiered Storage: Mounting Object Stores in HDFS
HDFS Tiered Storage: Mounting Object Stores in HDFSHDFS Tiered Storage: Mounting Object Stores in HDFS
HDFS Tiered Storage: Mounting Object Stores in HDFS
 
Building a Hadoop Data Warehouse with Impala
Building a Hadoop Data Warehouse with ImpalaBuilding a Hadoop Data Warehouse with Impala
Building a Hadoop Data Warehouse with Impala
 
Improving Hadoop Cluster Performance via Linux Configuration
Improving Hadoop Cluster Performance via Linux ConfigurationImproving Hadoop Cluster Performance via Linux Configuration
Improving Hadoop Cluster Performance via Linux Configuration
 
Hadoop and WANdisco: The Future of Big Data
Hadoop and WANdisco: The Future of Big DataHadoop and WANdisco: The Future of Big Data
Hadoop and WANdisco: The Future of Big Data
 
Introduction to map reduce
Introduction to map reduceIntroduction to map reduce
Introduction to map reduce
 
Difference between hadoop 2 vs hadoop 3
Difference between hadoop 2 vs hadoop 3Difference between hadoop 2 vs hadoop 3
Difference between hadoop 2 vs hadoop 3
 
Introduction to hadoop and hdfs
Introduction to hadoop and hdfsIntroduction to hadoop and hdfs
Introduction to hadoop and hdfs
 
Hadoop 3.0 - Revolution or evolution?
Hadoop 3.0 - Revolution or evolution?Hadoop 3.0 - Revolution or evolution?
Hadoop 3.0 - Revolution or evolution?
 
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry TrendsBig Data and Hadoop - History, Technical Deep Dive, and Industry Trends
Big Data and Hadoop - History, Technical Deep Dive, and Industry Trends
 
Hadoop 2.0 Architecture | HDFS Federation | NameNode High Availability |
Hadoop 2.0 Architecture | HDFS Federation | NameNode High Availability | Hadoop 2.0 Architecture | HDFS Federation | NameNode High Availability |
Hadoop 2.0 Architecture | HDFS Federation | NameNode High Availability |
 
Upgrading hadoop
Upgrading hadoopUpgrading hadoop
Upgrading hadoop
 
Apache hive
Apache hiveApache hive
Apache hive
 
Hadoop Operations - Best practices from the field
Hadoop Operations - Best practices from the fieldHadoop Operations - Best practices from the field
Hadoop Operations - Best practices from the field
 
Optimizing Dell PowerEdge Configurations for Hadoop
Optimizing Dell PowerEdge Configurations for HadoopOptimizing Dell PowerEdge Configurations for Hadoop
Optimizing Dell PowerEdge Configurations for Hadoop
 

Similar to Compaction and Splitting in Apache Accumulo

Why hadoop for data science?
Why hadoop for data science?Why hadoop for data science?
Why hadoop for data science?
Hortonworks
 
Introduction to Microsoft HDInsight and BI Tools
Introduction to Microsoft HDInsight and BI ToolsIntroduction to Microsoft HDInsight and BI Tools
Introduction to Microsoft HDInsight and BI Tools
DataWorks Summit
 
MapReduce Container ReUse
MapReduce Container ReUseMapReduce Container ReUse
MapReduce Container ReUse
Hortonworks
 
April 2013 HUG: The Stinger Initiative - Making Apache Hive 100 Times Faster
April 2013 HUG: The Stinger Initiative - Making Apache Hive 100 Times FasterApril 2013 HUG: The Stinger Initiative - Making Apache Hive 100 Times Faster
April 2013 HUG: The Stinger Initiative - Making Apache Hive 100 Times Faster
Yahoo Developer Network
 
Mrinal devadas, Hortonworks Making Sense Of Big Data
Mrinal devadas, Hortonworks Making Sense Of Big DataMrinal devadas, Hortonworks Making Sense Of Big Data
Mrinal devadas, Hortonworks Making Sense Of Big Data
PatrickCrompton
 
Open-BDA Hadoop Summit 2014 - Mr. Slim Baltagi (Building a Modern Data Archit...
Open-BDA Hadoop Summit 2014 - Mr. Slim Baltagi (Building a Modern Data Archit...Open-BDA Hadoop Summit 2014 - Mr. Slim Baltagi (Building a Modern Data Archit...
Open-BDA Hadoop Summit 2014 - Mr. Slim Baltagi (Building a Modern Data Archit...
Innovative Management Services
 

Similar to Compaction and Splitting in Apache Accumulo (20)

Inside hadoop-dev
Inside hadoop-devInside hadoop-dev
Inside hadoop-dev
 
OSDC 2013 | Introduction into Hadoop by Olivier Renault
OSDC 2013 | Introduction into Hadoop by Olivier RenaultOSDC 2013 | Introduction into Hadoop by Olivier Renault
OSDC 2013 | Introduction into Hadoop by Olivier Renault
 
Why hadoop for data science?
Why hadoop for data science?Why hadoop for data science?
Why hadoop for data science?
 
YARN Ready: Integrating to YARN with Tez
YARN Ready: Integrating to YARN with Tez YARN Ready: Integrating to YARN with Tez
YARN Ready: Integrating to YARN with Tez
 
Introduction to Microsoft HDInsight and BI Tools
Introduction to Microsoft HDInsight and BI ToolsIntroduction to Microsoft HDInsight and BI Tools
Introduction to Microsoft HDInsight and BI Tools
 
Hadoop: today and tomorrow
Hadoop: today and tomorrowHadoop: today and tomorrow
Hadoop: today and tomorrow
 
Big Data Analytics - Is Your Elephant Enterprise Ready?
Big Data Analytics - Is Your Elephant Enterprise Ready?Big Data Analytics - Is Your Elephant Enterprise Ready?
Big Data Analytics - Is Your Elephant Enterprise Ready?
 
Building a Modern Data Architecture with Enterprise Hadoop
Building a Modern Data Architecture with Enterprise HadoopBuilding a Modern Data Architecture with Enterprise Hadoop
Building a Modern Data Architecture with Enterprise Hadoop
 
MapReduce Container ReUse
MapReduce Container ReUseMapReduce Container ReUse
MapReduce Container ReUse
 
April 2013 HUG: The Stinger Initiative - Making Apache Hive 100 Times Faster
April 2013 HUG: The Stinger Initiative - Making Apache Hive 100 Times FasterApril 2013 HUG: The Stinger Initiative - Making Apache Hive 100 Times Faster
April 2013 HUG: The Stinger Initiative - Making Apache Hive 100 Times Faster
 
Mrinal devadas, Hortonworks Making Sense Of Big Data
Mrinal devadas, Hortonworks Making Sense Of Big DataMrinal devadas, Hortonworks Making Sense Of Big Data
Mrinal devadas, Hortonworks Making Sense Of Big Data
 
Open-BDA Hadoop Summit 2014 - Mr. Slim Baltagi (Building a Modern Data Archit...
Open-BDA Hadoop Summit 2014 - Mr. Slim Baltagi (Building a Modern Data Archit...Open-BDA Hadoop Summit 2014 - Mr. Slim Baltagi (Building a Modern Data Archit...
Open-BDA Hadoop Summit 2014 - Mr. Slim Baltagi (Building a Modern Data Archit...
 
Munich HUG 21.11.2013
Munich HUG 21.11.2013Munich HUG 21.11.2013
Munich HUG 21.11.2013
 
Apache Hadoop on the Open Cloud
Apache Hadoop on the Open CloudApache Hadoop on the Open Cloud
Apache Hadoop on the Open Cloud
 
Apache Hadoop Now Next and Beyond
Apache Hadoop Now Next and BeyondApache Hadoop Now Next and Beyond
Apache Hadoop Now Next and Beyond
 
YARN - Strata 2014
YARN - Strata 2014YARN - Strata 2014
YARN - Strata 2014
 
Storm Demo Talk - Denver Apr 2015
Storm Demo Talk - Denver Apr 2015Storm Demo Talk - Denver Apr 2015
Storm Demo Talk - Denver Apr 2015
 
Tez: Accelerating Data Pipelines - fifthel
Tez: Accelerating Data Pipelines - fifthelTez: Accelerating Data Pipelines - fifthel
Tez: Accelerating Data Pipelines - fifthel
 
Storm Demo Talk - Colorado Springs May 2015
Storm Demo Talk - Colorado Springs May 2015Storm Demo Talk - Colorado Springs May 2015
Storm Demo Talk - Colorado Springs May 2015
 
2013 march 26_thug_etl_cdc_talking_points
2013 march 26_thug_etl_cdc_talking_points2013 march 26_thug_etl_cdc_talking_points
2013 march 26_thug_etl_cdc_talking_points
 

More from Hortonworks

More from Hortonworks (20)

Hortonworks DataFlow (HDF) 3.3 - Taking Stream Processing to the Next Level
Hortonworks DataFlow (HDF) 3.3 - Taking Stream Processing to the Next LevelHortonworks DataFlow (HDF) 3.3 - Taking Stream Processing to the Next Level
Hortonworks DataFlow (HDF) 3.3 - Taking Stream Processing to the Next Level
 
IoT Predictions for 2019 and Beyond: Data at the Heart of Your IoT Strategy
IoT Predictions for 2019 and Beyond: Data at the Heart of Your IoT StrategyIoT Predictions for 2019 and Beyond: Data at the Heart of Your IoT Strategy
IoT Predictions for 2019 and Beyond: Data at the Heart of Your IoT Strategy
 
Getting the Most Out of Your Data in the Cloud with Cloudbreak
Getting the Most Out of Your Data in the Cloud with CloudbreakGetting the Most Out of Your Data in the Cloud with Cloudbreak
Getting the Most Out of Your Data in the Cloud with Cloudbreak
 
Johns Hopkins - Using Hadoop to Secure Access Log Events
Johns Hopkins - Using Hadoop to Secure Access Log EventsJohns Hopkins - Using Hadoop to Secure Access Log Events
Johns Hopkins - Using Hadoop to Secure Access Log Events
 
Catch a Hacker in Real-Time: Live Visuals of Bots and Bad Guys
Catch a Hacker in Real-Time: Live Visuals of Bots and Bad GuysCatch a Hacker in Real-Time: Live Visuals of Bots and Bad Guys
Catch a Hacker in Real-Time: Live Visuals of Bots and Bad Guys
 
HDF 3.2 - What's New
HDF 3.2 - What's NewHDF 3.2 - What's New
HDF 3.2 - What's New
 
Curing Kafka Blindness with Hortonworks Streams Messaging Manager
Curing Kafka Blindness with Hortonworks Streams Messaging ManagerCuring Kafka Blindness with Hortonworks Streams Messaging Manager
Curing Kafka Blindness with Hortonworks Streams Messaging Manager
 
Interpretation Tool for Genomic Sequencing Data in Clinical Environments
Interpretation Tool for Genomic Sequencing Data in Clinical EnvironmentsInterpretation Tool for Genomic Sequencing Data in Clinical Environments
Interpretation Tool for Genomic Sequencing Data in Clinical Environments
 
IBM+Hortonworks = Transformation of the Big Data Landscape
IBM+Hortonworks = Transformation of the Big Data LandscapeIBM+Hortonworks = Transformation of the Big Data Landscape
IBM+Hortonworks = Transformation of the Big Data Landscape
 
Premier Inside-Out: Apache Druid
Premier Inside-Out: Apache DruidPremier Inside-Out: Apache Druid
Premier Inside-Out: Apache Druid
 
Accelerating Data Science and Real Time Analytics at Scale
Accelerating Data Science and Real Time Analytics at ScaleAccelerating Data Science and Real Time Analytics at Scale
Accelerating Data Science and Real Time Analytics at Scale
 
TIME SERIES: APPLYING ADVANCED ANALYTICS TO INDUSTRIAL PROCESS DATA
TIME SERIES: APPLYING ADVANCED ANALYTICS TO INDUSTRIAL PROCESS DATATIME SERIES: APPLYING ADVANCED ANALYTICS TO INDUSTRIAL PROCESS DATA
TIME SERIES: APPLYING ADVANCED ANALYTICS TO INDUSTRIAL PROCESS DATA
 
Blockchain with Machine Learning Powered by Big Data: Trimble Transportation ...
Blockchain with Machine Learning Powered by Big Data: Trimble Transportation ...Blockchain with Machine Learning Powered by Big Data: Trimble Transportation ...
Blockchain with Machine Learning Powered by Big Data: Trimble Transportation ...
 
Delivering Real-Time Streaming Data for Healthcare Customers: Clearsense
Delivering Real-Time Streaming Data for Healthcare Customers: ClearsenseDelivering Real-Time Streaming Data for Healthcare Customers: Clearsense
Delivering Real-Time Streaming Data for Healthcare Customers: Clearsense
 
Making Enterprise Big Data Small with Ease
Making Enterprise Big Data Small with EaseMaking Enterprise Big Data Small with Ease
Making Enterprise Big Data Small with Ease
 
Webinewbie to Webinerd in 30 Days - Webinar World Presentation
Webinewbie to Webinerd in 30 Days - Webinar World PresentationWebinewbie to Webinerd in 30 Days - Webinar World Presentation
Webinewbie to Webinerd in 30 Days - Webinar World Presentation
 
Driving Digital Transformation Through Global Data Management
Driving Digital Transformation Through Global Data ManagementDriving Digital Transformation Through Global Data Management
Driving Digital Transformation Through Global Data Management
 
HDF 3.1 pt. 2: A Technical Deep-Dive on New Streaming Features
HDF 3.1 pt. 2: A Technical Deep-Dive on New Streaming FeaturesHDF 3.1 pt. 2: A Technical Deep-Dive on New Streaming Features
HDF 3.1 pt. 2: A Technical Deep-Dive on New Streaming Features
 
Hortonworks DataFlow (HDF) 3.1 - Redefining Data-In-Motion with Modern Data A...
Hortonworks DataFlow (HDF) 3.1 - Redefining Data-In-Motion with Modern Data A...Hortonworks DataFlow (HDF) 3.1 - Redefining Data-In-Motion with Modern Data A...
Hortonworks DataFlow (HDF) 3.1 - Redefining Data-In-Motion with Modern Data A...
 
Unlock Value from Big Data with Apache NiFi and Streaming CDC
Unlock Value from Big Data with Apache NiFi and Streaming CDCUnlock Value from Big Data with Apache NiFi and Streaming CDC
Unlock Value from Big Data with Apache NiFi and Streaming CDC
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Compaction and Splitting in Apache Accumulo

  • 1. Compaction and Splitting in Apache Accumulo Billie Rinaldi billie@hortonworks.com October 24, 2012 © Hortonworks Inc. 2012 Page 1
  • 2. What are compaction and splitting? •Accumulo tables are divided into non-overlapping key ranges called tablets •Compaction selects a set of sorted files for a single tablet and rewrites them into one file •Splitting divides a tablet into two tablets Page 2 © Hortonworks Inc. 2012
  • 3. Tablet Overview •When memory fills, new sorted files are created by flushing •Sorted files are combined together into fewer sorted files Page 3 © Hortonworks Inc. 2012
  • 4. How much data are you writing? •If you never compact – O(N) … •If you always compact – O(N2) … Page 4 © Hortonworks Inc. 2012
  • 5. Accumulo Compaction Algorithm •Compact a set of files when: size of the largest file × compaction ratio ≤ sum of the sizes of files table.compaction.major.ratio Page 5 © Hortonworks Inc. 2012
  • 6. In Action (r = 3, N = 1, W = 1) Page 6 © Hortonworks Inc. 2012
  • 7. In Action (r = 3, N = 2, W = 2) Page 7 © Hortonworks Inc. 2012
  • 8. In Action (r = 3, N = 3, W = 3) Page 8 © Hortonworks Inc. 2012
  • 9. In Action (r = 3, N = 3, W = 6) Page 9 © Hortonworks Inc. 2012
  • 10. In Action (r = 3, N = 4, W = 7) Page 10 © Hortonworks Inc. 2012
  • 11. In Action (r = 3, N = 5, W = 8) Page 11 © Hortonworks Inc. 2012
  • 12. In Action (r = 3, N = 6, W = 9) Page 12 © Hortonworks Inc. 2012
  • 13. In Action (r = 3, N = 6, W = 12) Page 13 © Hortonworks Inc. 2012
  • 14. In Action (r = 3, N = 7, W = 13) Page 14 © Hortonworks Inc. 2012
  • 15. In Action (r = 3, N = 8, W = 14) Page 15 © Hortonworks Inc. 2012
  • 16. In Action (r = 3, N = 9, W = 15) Page 16 © Hortonworks Inc. 2012
  • 17. In Action (r = 3, N = 9, W = 24) Page 17 © Hortonworks Inc. 2012
  • 18. In Action (r = 3, N = 27, W = 90*) Page 18 © Hortonworks Inc. 2012
  • 19. Amount of data written •W(rk) = (k+1)rk – (k-1)rk-1 •Thus, W(N) ≈ O(N log N) Page 19 © Hortonworks Inc. 2012
  • 20. HBase Compaction Algorithm •Compact a set of files when: sum of the size of the largest file ≤ sizes of × compaction ratio smaller files hbase.hstore.compaction.ratio Page 20 © Hortonworks Inc. 2012
  • 21. HBase Compaction Algorithm •Compact a set of files when: sum of the size of the largest file ≤ sizes of × compaction ratio smaller files 1 HBase ratio = Accumulo ratio –1 Page 21 © Hortonworks Inc. 2012
  • 22. Other Compaction-related Properties •Accumulo table.file.max tserver.compaction.major.thread.files.open.max tserver.compaction.major.delay table.compaction.major.everything.idle •Hbase hbase.hstore.compactionThreshold hbase.hstore.blockingStoreFiles hbase.hstore.blockingWaitTime hbase.hstore.compaction.min hbase.hstore.compaction.max hbase.hstore.compaction.min.size hbase.hstore.compaction.max.size Page 22 © Hortonworks Inc. 2012
  • 23. Accumulo Splitting •Always check to see if a split is needed before compacting •If it is needed, split first •File names stored in metadata table split threshold Page 23 © Hortonworks Inc. 2012
  • 24. Accumulo Splitting Process •Tablet closed, no new writes •Three writes to the metadata table –tablet made smaller & marked as splitting –new tablet added –original tablet's splitting marks removed •Tablet server swaps new tablets for old tablet in its online tablet list •Master informed Page 24 © Hortonworks Inc. 2012
  • 25. Accumulo Splitting Recovery •Whenever a tablet is brought online, the tablet server checks to see if it has split marks. •If so, it assumes the splitting process was interrupted and finishes making changes to the metadata table. Page 25 © Hortonworks Inc. 2012
  • 26. Hortonworks Data Platform • Simplify deployment to get started quickly and easily • Monitor, manage any size cluster with familiar console and tools 1 • Only platform to include data integration services to interact with any data • Metadata services opens the platform for integration with existing applications • Dependable high availability architecture  Reduce risks and cost of adoption  Lower the total cost to administer and provision • Tested at scale to future proof your cluster growth  Integrate with your existing ecosystem Page 26 © Hortonworks Inc. 2012
  • 27. Hortonworks Training The expert source for Apache Hadoop training & certification Role-based Developer and Administration training – Coursework built and maintained by the core Apache Hadoop development team. – The “right” course, with the most extensive and realistic hands-on materials – Provide an immersive experience into real-world Hadoop scenarios – Public and Private courses available Comprehensive Apache Hadoop © Hortonworks Inc. 2012 Page 27
  • 28. Next Steps? 1 Download Hortonworks Data Platform hortonworks.com/download 2 Use the getting started guide hortonworks.com/get-started 3 Learn more… get support Hortonworks Support • Expert role based training • Full lifecycle technical support • Course for admins, developers across four service levels and operators • Delivered by Apache Hadoop • Certification program Experts/Committers • Custom onsite options • Forward-compatible hortonworks.com/training hortonworks.com/support Page 28 © Hortonworks Inc. 2012
  • 29. Questions? dev@accumulo.apache.org Page 29 © Hortonworks Inc. 2012

Editor's Notes

  1. Hortonworks Data Platform (HDP) is the only 100% open source Apache Hadoop distribution that provides a complete and reliable foundation for enterprises that want to build, deploy and manage big data solutions. It allows you to confidently capture, process and share data in any format, at scale on commodity hardware and/or in a cloud environment. As the foundation for the next generation enterprise data architecture, HDP delivers all of the necessary components to uncover business insights from the growing streams of data flowing into and throughout your business. HDP is a fully integrated data platform that includes the stable core functions of Apache Hadoop (HDFS and MapReduce), the baseline tools to process big data (Apache Hive, Apache HBase, Apache Pig) as well as a set of advanced capabilities (Apache Ambari, Apache HCatalog and High Availability) that make big data operational and ready for the enterprise.  Run through the points on left…