SlideShare a Scribd company logo
1
Galaxy Semiconductor Intelligence
Case Study: Big Data with MariaDB 10
Bernard Garros, Sandrine Chirokoff, Stéphane Varoqui
Galaxy confidential
Galaxy Big Data scalability Menu
• About Galaxy Semiconductor (BG)
• The big data challenge (BG)
• Scalable, fail-safe architecture for big data (BG)
• MariaDB challenges: compression (SV)
• MariaDB challenges: sharding (SC)
• Results (BG)
• Next Steps (BG)
• Q&A
2
Galaxy confidential
About Galaxy Semiconductor
• A software company dedicated to semiconductor:
 Quality improvement
 Yield enhancement
 NPI acceleration
 Test cell OEE optimization
• Founded in 1988
• Track record of building products that offer the best
user experience + premier customer support
• Products used by 3500+ users and all major ATE
companies
3
via
SEMICONDUCTOR
INTELLIGENCE
Galaxy confidential
4
Galaxy Teo, Ireland
HQ, G&A
Galaxy East
Sales, Marketing, Apps
Galaxy France
R&D, QA, & Apps
Partner
Taiwan Sales & Apps
Partner
Israel Sales
Partner
Singapore Sales & Apps
Galaxy West
Sales, Apps
Partner
Japan Sales & Apps
Partner
China Sales & Apps
Worldwide Presence
Galaxy confidential
Test Data production / consumption
5
ATE
Test Data
Files
ETL,
Data
Cleansing
Yield-Man
Data
Cube(s)
ETL
Galaxy TDR
Examinator-Pro
Browser-based
dashboards
Custom Agents
Data Mining
OEE Alarms
PAT
Automated Agents
SYA
Galaxy confidential
Growing volumes
6
MB
GEX
STDF
STDF
STDF
GB/TB
GEX, Dashboard,
Monitoring
TDR
YM
STDF
STDF
STDF
TB/PB
GEX, Dashboard,
Monitoring
TDR
YM
STDF
STDF
STDF
Galaxy confidential
Big Data, Big Problem
• More data can produce more knowledge and higher profits
• Modern systems make it easy to generate more data
• The problem is how to create a hardware and software platform
that can make full and effective use of all this data as it
continues to grow
• Galaxy has the expertise to guide you to a solution for this big
data problem that includes:
– Real-time data streams
– High data insertion rates
– Scalable database to extreme data volumes
– Automatic compensation for server failures
– Use of inexpensive, commodity servers
– Load balancing
7
Galaxy confidential
First-level solutions
• Partitioning
– SUMMARY data
• High level reports
• 10% of the volume
• Must be persistent for a long period (years)
– RAW data
• Detailed data inspection
• 90% of the volume
• Must be persistent for a short period (months)
• PURGE
– Partitioning per date (e.g. daily) on RAW data
tables
– Instant purge by drop partitions
• Parallel insertion
8
Yield-Man
Yield-Man
Yield-Man
Galaxy confidential
New customer use case
9
• Solution needs to be easily setup
• Solution needs to handle large (~50TB+) data
• Need to handle large insertion speed of approximately 2 MB/sec
Solutions
• Solution 1: Single scale-up node (lots of RAM, lots of CPU,
expensive high-speed SSD storage, single point of failure, not
scalable, heavy for replication)
• Solution 2: Cluster of commodity nodes (see later)
Galaxy confidential
Cluster of Nodes
Other customer applications
and systems
Other Test Data Files
Event Data Stream
ATE config &
maintenance events
Real-time Tester Status
Test Floor
Data Sources
STDF Data Files
.
.
.
RESTful
API
RESTful API
Test
Hardware
Management
System
MES
Galaxy Cluster of Commodity Servers
DB Node
DB Node
DB Node
DB Node
Compute
Node
Compute
Node
Head Node
Dashboard
Node
Yield-Man
PAT-Man
Yield-Man
PAT-Man
Real-Time Interface
Test Data Stream
10
Galaxy confidential
Easy Scalability
Other customer applications
and systems
Other Test Data Files
Event Data Stream
ATE config &
maintenance events
Real-time Tester Status
Test Floor
Data Sources
STDF Data Files
.
.
.
RESTful
API
Test
Hardware
Management
System
MES
Galaxy Cluster of Commodity Servers
DB Node
DB Node
DB Node
DB Node
Compute
Node
Compute
Node
Head Node
Dashboard
Node
Yield-Man
PAT-Man
Yield-Man PAT-Man
Real-Time Interface
Test Data Stream
DB Node
DB Node
Compute
Node
RESTful API
11
Galaxy confidential
MariaDB challenges
12
❏ From a single box to elastic architecture
❏ Reducing the TCO
❏ OEM solution
❏ Minimizing the impact on existing code
❏ Reach 200B records
Galaxy confidential
A classic case
13
SENSOR
SENSOR
SENSOR
SENSOR
SENSOR
STORE
QUERY
QUERY
QUERY
QUERY
QUERY
❏ Millions of records/s sorted by timeline
❏ Data is queried in other order
❏ Indexes don’t fit into main memory
❏ Disk IOps become bottleneck
Galaxy confidential
B-tree gotcha
14
2ms disk or network latency, 100 head
seeks/s, 2 options:
❏ Increase concurrency
❏ Increase packet size
Increased both long time ago using
innodb_write_io_threads , innodb_io_capacity, bulk load
Galaxy confidential
B-tree gotcha
15
With a Billion records, a single partition B-tree stops staying in
main memory, a single write produces read IOps to traverse the
tree:
❏ Use partitioning
❏ Insert in primary key order
❏ Big redo log and smaller amount of dirty pages
❏ Covering index
The next step is to radically change the IO pattern
Galaxy confidential
Data Structuring modeling
16
INDEXES MAINTENANCE
NO INDEXES
COLUMN STORE
TTREE BTREE FRACTAL TREE
STORE NDB
InnoDB - MyISAM
ZFS
TokuDB
LevelDB
Cassandra
Hbase
InfiniDB
Vertica
MEMORY
WRITE
+++++
++++ +++ +++++ +++++
READ 99% ++ + ++++ ++++++
READ 1% +++++ ++++ +++ ------- ------
DISK
WRITE
BTREE
- +++ ++++ +++++
READ 99% - + ++++ +++++
READ 1% + +++ ----- -
Galaxy confidential
INDEXES MAINTENANCE
NO INDEXES
COLUMN STORE
TTREE BTREE FRACTAL TREE
NDB
InnoDB - MyISAM
ZFS
TokuDB
LevelDB
Cassandra
Hbase
InfiniDB
Average Compression Rate
NA 1/2 1/6 1/3 1/12
IO Size
NA 4K to 64K
Variable base on
compression & Depth
64M 8M To 64M
READ Disk Access Model
NA O(Log(N)/ Log(B)) ~O(Log(N)/ Log(B)) O(N/B )
O(N/B - B
Elimination)
WRITE Disk Access Model
NA O(Log(N)/ Log(B)) ~O(Log(N)/B) O(1/B ) O(1/B)
Data Structure for big data
17
Galaxy confidential
Top 10 Alexa’s PETA Bytes store is InnoDB
18
Top Alexa
InnoDB
Galaxy
TokuDB
❏ DBA to setup Insert buffer + Dirty pages
❏ Admins to monitor IO
❏ Admins to increase # nodes
❏ Use flash & hybride storage
❏ DBAs to partition and shard
❏ DBAs to organize maintenance
❏ DBAs to set covering and clustering
indexes
❏ Zipf read distribution
❏ Concurrent by design
❏ Remove fragmentation
❏ Constant insert rate regardless
memory/disk ratio
❏ High compression rate
❏ No control over client architecture
❏ All indexes can be clustered
Galaxy confidential
19
1/5 Compression on 6 Billion Rows
Key point for 200 Billion records
Galaxy confidential
20
2 times slower insert time vs. InnoDB
2.5 times faster insert vs. InnoDB compressed
Key point for 200 Billion records
Galaxy confidential
21
❏ Disk IOps on InnoDB was bottleneck,
despite partitioning
❏ Moving to TokuDB, move bottleneck to
CPU for compression
❏ So how to increase performance more?
Sharding!!
Galaxy take away for 200 Billion records
Galaxy confidential
22
INDEXES MAINTENANCE NO INDEXES
COLUMN STORE
TTREE BTREE FRACTAL TREE
NDB
InnoDB
MyISAM
ZFS
TokuDB
LevelDB
Cassandra
Hbase
InfiniDB
Vetica
CLUSTERING
Native
Manual, Spider,
Vitess, Fabric,
Shardquery
Manual, Spider,
Vitess, Fabric,
Shardquery
Native Native
# OF NODES
+++++ +++ ++ +++++ +
Sharding to fix CPU Bottleneck
Galaxy confidential
23
NO DATA IS STORED IN SPIDER NODES
Spider… it’s a MED storage engine
Galaxy confidential
24
Preserve data consistency
between shards
Allow shard replica
Enable joining
between shards
ha_spider.cc SEMI TRX
Galaxy confidential
Spider - A Sharding + HA solution
25
Galaxy confidential
Implemented architecture
26
SUMMARY
universal tables
RAW
Sharded tables
DATA NODE #1
COMPUTE NODE #1
…
DATA NODE #2 DATA NODE #3 DATA NODE #4
HEAD NODE COMPUTE NODE #2
…
•SPIDER
•NO DATA
•MONITORING
•TOKUDB
•COMPRESSED DATA
•PARTITIONS
Delay current
insertion
Replay insertion with
new shard key
1/4
OR
1/2
1/4
OR
1/2
1/4
OR
1/2
1/4
OR
1/2
Galaxy confidential
Re-sharding without data copy
27
Spider table L1.1
Node 01
Node 02
Spider table L1.2
Node 01
Node 02
Node 03
Node 04
Spider table L2
CURRENT
Toku table
P#Week 01
P#Week 02
Spider table L2
BEFORE
AFTER
Toku table
P#Week 01
P#Week 02
Toku table
P#Week 03
P#Week 04
Toku table
P#Week 03
P#Week 04
Toku table
P#Week 03
P#Week 04
Toku table
P#Week 03
P#Week 04
Partition by date (e.g. daily) Shard by node modulo Shard by date range
Galaxy confidential
Proven Performance
28
Galaxy has deployed its big data solution at a major test subcontractor in Asia
with the following performance:
• Peak data insertion rate : 2 TB of STDF data per day
• Data compression of raw data : 60-80 %
• DB retention of raw data : 3 months
• DB retention of summary data : 1 year
• Archiving of test data : Automatic
• Target was 2MB/sec, we get about 10MB/sec
• Since 17th June, steady production :
– Constant insertion speed
– 1400 files/day, 120 GB/day
– ft_ptest_results: 92 billion rows / 1.5 TB across 4 nodes
– ft_mptest_results: 14 billion rows / 266 GB acroos 4 nodes
– wt_ptest_results: 9 billion rows / 153 GB across 4 nodes
– 50TB available volume, total DB size is 8TB across all 4 nodes
• 7 servers (22k$) + SAN ($$$) OR DAS (15k$)
Galaxy confidential
File count inserted per day
29
• Integration issues up to May 7
• Raw & Summary-only data insertion up to May 18
• Raw & Summary data insertion, Problem solving, fine tuning up to June 16
• Steady production insertion of Raw & Summary data since June 17
Galaxy confidential
File count and data size per day
30
• Up to 2TB inserted per day
• Up to 20k files per day
Galaxy confidential
Raw data insertion duration over file size
(each colored series is 1 day)
31
Consistant insertion performance
Galaxy confidential
What’s next?
32
• Make Yield-Man more SPIDER-aware:
– Integrated scale-out (add compute/data nodes)
– Native database schema upgrade on compute/data nodes
• Add more monitoring capability to monitor SPIDER events (node
failure, table desynchronization across nodes…)
• Automate recover after failures/issues, today:
– Manual script to detect de-synchronization
– PT table sync from Percona to manually re-sync
– Manual script to reintroduce table nodes in the cluster
IN SPIDER 2014 ROADMAP
Thank you!!
Q&A?
33

More Related Content

DOCX
Sql Queries
PPTX
Sql joins inner join self join outer joins
PDF
SQL Joins and Query Optimization
PPTX
Introduction to SQL
PPTX
Understanding Oracle GoldenGate 12c
PPTX
Estructura semantica Html5.pptx
DOCX
Top 40 sql queries for testers
Sql Queries
Sql joins inner join self join outer joins
SQL Joins and Query Optimization
Introduction to SQL
Understanding Oracle GoldenGate 12c
Estructura semantica Html5.pptx
Top 40 sql queries for testers

What's hot (20)

PPTX
Data Manipulation Language (DML).pptx
PPTX
Deadlock in database
PPTX
DATABASE CONSTRAINTS
PPTX
Introduction to database
PPTX
Lecture 2 - Relational Model and Terminology.pptx
PPT
10 Creating Triggers
PDF
Vsam interview questions and answers.
PDF
Advanced Sharding Techniques with Spider (MUC2010)
PDF
Episode 2 DB2 pureScale Installation, Instance Management & Monitoring
PPTX
Tableau groups vs sets
PPTX
Sql joins
PPTX
QUEUE.pptx
PPT
Oracle data pump
PDF
Oracle User Management
DOC
DB2 utilities
PPTX
Normalization
PPTX
1.2 sql create and drop table
PPTX
SKILLWISE-DB2 DBA
PDF
Inmon & kimball method
PPTX
pl/sql Procedure
Data Manipulation Language (DML).pptx
Deadlock in database
DATABASE CONSTRAINTS
Introduction to database
Lecture 2 - Relational Model and Terminology.pptx
10 Creating Triggers
Vsam interview questions and answers.
Advanced Sharding Techniques with Spider (MUC2010)
Episode 2 DB2 pureScale Installation, Instance Management & Monitoring
Tableau groups vs sets
Sql joins
QUEUE.pptx
Oracle data pump
Oracle User Management
DB2 utilities
Normalization
1.2 sql create and drop table
SKILLWISE-DB2 DBA
Inmon & kimball method
pl/sql Procedure
Ad

Viewers also liked (6)

PDF
CCM Escape Case Study - SkySQL Paris Meetup 17.12.2013
PDF
hs_spider_hs_something_20110906
PDF
High Performance Drupal with MariaDB
PPTX
Get More Out of MySQL with TokuDB
PPTX
Presentation mariaDB 10 and fork
PDF
Mariadb mysql avancé
CCM Escape Case Study - SkySQL Paris Meetup 17.12.2013
hs_spider_hs_something_20110906
High Performance Drupal with MariaDB
Get More Out of MySQL with TokuDB
Presentation mariaDB 10 and fork
Mariadb mysql avancé
Ad

Similar to Galaxy Big Data with MariaDB (20)

PDF
Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...
PDF
Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...
PPTX
Introduction to TokuDB v7.5 and Read Free Replication
PDF
Getting 100B Metrics to Disk
PDF
Using ScyllaDB for Real-Time Write-Heavy Workloads
PPTX
20140128 webinar-get-more-out-of-mysql-with-tokudb-140319063324-phpapp02
PPTX
Solving Challenges With 'Huge Data'
PPTX
Augmenting Mongo DB with Treasure Data
PPTX
Augmenting Mongo DB with treasure data
PPTX
SQREAM DB on IBM Power9
PDF
Re-inventing the Database: What to Keep and What to Throw Away
PDF
Big challenges
PDF
Terror & Hysteria: Cost Effective Scaling of Time Series Data with Cassandra ...
PDF
What’s New in ScyllaDB Open Source 5.0
PDF
Hybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
PPTX
Percona FT / TokuDB
PDF
Scylla Summit 2016: Scylla at Samsung SDS
PDF
MariaDB: Connect Storage Engine
PDF
Say Hello to MyRocks
PPTX
Why databases cry at night
Cómo se diseña una base de datos que pueda ingerir más de cuatro millones de ...
Ingesting Over Four Million Rows Per Second With QuestDB Timeseries Database ...
Introduction to TokuDB v7.5 and Read Free Replication
Getting 100B Metrics to Disk
Using ScyllaDB for Real-Time Write-Heavy Workloads
20140128 webinar-get-more-out-of-mysql-with-tokudb-140319063324-phpapp02
Solving Challenges With 'Huge Data'
Augmenting Mongo DB with Treasure Data
Augmenting Mongo DB with treasure data
SQREAM DB on IBM Power9
Re-inventing the Database: What to Keep and What to Throw Away
Big challenges
Terror & Hysteria: Cost Effective Scaling of Time Series Data with Cassandra ...
What’s New in ScyllaDB Open Source 5.0
Hybrid solutions – combining in memory solutions with SSD - Christos Erotocritou
Percona FT / TokuDB
Scylla Summit 2016: Scylla at Samsung SDS
MariaDB: Connect Storage Engine
Say Hello to MyRocks
Why databases cry at night

More from MariaDB Corporation (20)

PDF
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
PPTX
MaxScale - The Pluggable Router
PPTX
MariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin Frankfurt
PPTX
Skalierbarkeit mit MariaDB und MaxScale - MariaDB Roadshow Summer 2014 Hambur...
PPTX
Hochverfügbarkeit mit MariaDB Enterprise - MariaDB Roadshow Summer 2014 Hambu...
PDF
Automatisierung & Verwaltung von Datenbank - Clustern mit Severalnines - Mari...
PPTX
The New MariaDB Offering: MariaDB 10, MaxScale and More
PPTX
MaxScale - The Pluggibale Router MariaDB Roadshow 2014 Paris
PPTX
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014 F...
PPTX
High Availability with MariaDB Enterprise
PPTX
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
PDF
Automatisation et Gestion de Cluster de Bases de Données MariaDB Roadshow
PDF
Automation and Management of Database Clusters MariaDB Roadshow 2014
PDF
Automation and Management of Database Clusters
PDF
The New MariaDB Offering - MariaDB 10, MaxScale and more
PDF
MaxScale - The Pluggable Router
PDF
High Availability with MariaDB Enterprise
PDF
MariaDB 10 and Beyond
PDF
MaxScale - the pluggable router
PPT
Galera cluster - SkySQL Paris Meetup 17.12.2013
Webseminar: MariaDB Enterprise und MariaDB Enterprise Cluster
MaxScale - The Pluggable Router
MariaDB und mehr - MariaDB Roadshow Summer 2014 Hamburg Berlin Frankfurt
Skalierbarkeit mit MariaDB und MaxScale - MariaDB Roadshow Summer 2014 Hambur...
Hochverfügbarkeit mit MariaDB Enterprise - MariaDB Roadshow Summer 2014 Hambu...
Automatisierung & Verwaltung von Datenbank - Clustern mit Severalnines - Mari...
The New MariaDB Offering: MariaDB 10, MaxScale and More
MaxScale - The Pluggibale Router MariaDB Roadshow 2014 Paris
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014 F...
High Availability with MariaDB Enterprise
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
Automatisation et Gestion de Cluster de Bases de Données MariaDB Roadshow
Automation and Management of Database Clusters MariaDB Roadshow 2014
Automation and Management of Database Clusters
The New MariaDB Offering - MariaDB 10, MaxScale and more
MaxScale - The Pluggable Router
High Availability with MariaDB Enterprise
MariaDB 10 and Beyond
MaxScale - the pluggable router
Galera cluster - SkySQL Paris Meetup 17.12.2013

Recently uploaded (20)

PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Digital Strategies for Manufacturing Companies
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
L1 - Introduction to python Backend.pptx
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
System and Network Administration Chapter 2
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PTS Company Brochure 2025 (1).pdf.......
wealthsignaloriginal-com-DS-text-... (1).pdf
Understanding Forklifts - TECH EHS Solution
Odoo POS Development Services by CandidRoot Solutions
Upgrade and Innovation Strategies for SAP ERP Customers
Design an Analysis of Algorithms II-SECS-1021-03
Which alternative to Crystal Reports is best for small or large businesses.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Digital Strategies for Manufacturing Companies
How to Choose the Right IT Partner for Your Business in Malaysia
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
L1 - Introduction to python Backend.pptx
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
System and Network Administration Chapter 2
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Operating system designcfffgfgggggggvggggggggg
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free

Galaxy Big Data with MariaDB

  • 1. 1 Galaxy Semiconductor Intelligence Case Study: Big Data with MariaDB 10 Bernard Garros, Sandrine Chirokoff, Stéphane Varoqui
  • 2. Galaxy confidential Galaxy Big Data scalability Menu • About Galaxy Semiconductor (BG) • The big data challenge (BG) • Scalable, fail-safe architecture for big data (BG) • MariaDB challenges: compression (SV) • MariaDB challenges: sharding (SC) • Results (BG) • Next Steps (BG) • Q&A 2
  • 3. Galaxy confidential About Galaxy Semiconductor • A software company dedicated to semiconductor:  Quality improvement  Yield enhancement  NPI acceleration  Test cell OEE optimization • Founded in 1988 • Track record of building products that offer the best user experience + premier customer support • Products used by 3500+ users and all major ATE companies 3 via SEMICONDUCTOR INTELLIGENCE
  • 4. Galaxy confidential 4 Galaxy Teo, Ireland HQ, G&A Galaxy East Sales, Marketing, Apps Galaxy France R&D, QA, & Apps Partner Taiwan Sales & Apps Partner Israel Sales Partner Singapore Sales & Apps Galaxy West Sales, Apps Partner Japan Sales & Apps Partner China Sales & Apps Worldwide Presence
  • 5. Galaxy confidential Test Data production / consumption 5 ATE Test Data Files ETL, Data Cleansing Yield-Man Data Cube(s) ETL Galaxy TDR Examinator-Pro Browser-based dashboards Custom Agents Data Mining OEE Alarms PAT Automated Agents SYA
  • 6. Galaxy confidential Growing volumes 6 MB GEX STDF STDF STDF GB/TB GEX, Dashboard, Monitoring TDR YM STDF STDF STDF TB/PB GEX, Dashboard, Monitoring TDR YM STDF STDF STDF
  • 7. Galaxy confidential Big Data, Big Problem • More data can produce more knowledge and higher profits • Modern systems make it easy to generate more data • The problem is how to create a hardware and software platform that can make full and effective use of all this data as it continues to grow • Galaxy has the expertise to guide you to a solution for this big data problem that includes: – Real-time data streams – High data insertion rates – Scalable database to extreme data volumes – Automatic compensation for server failures – Use of inexpensive, commodity servers – Load balancing 7
  • 8. Galaxy confidential First-level solutions • Partitioning – SUMMARY data • High level reports • 10% of the volume • Must be persistent for a long period (years) – RAW data • Detailed data inspection • 90% of the volume • Must be persistent for a short period (months) • PURGE – Partitioning per date (e.g. daily) on RAW data tables – Instant purge by drop partitions • Parallel insertion 8 Yield-Man Yield-Man Yield-Man
  • 9. Galaxy confidential New customer use case 9 • Solution needs to be easily setup • Solution needs to handle large (~50TB+) data • Need to handle large insertion speed of approximately 2 MB/sec Solutions • Solution 1: Single scale-up node (lots of RAM, lots of CPU, expensive high-speed SSD storage, single point of failure, not scalable, heavy for replication) • Solution 2: Cluster of commodity nodes (see later)
  • 10. Galaxy confidential Cluster of Nodes Other customer applications and systems Other Test Data Files Event Data Stream ATE config & maintenance events Real-time Tester Status Test Floor Data Sources STDF Data Files . . . RESTful API RESTful API Test Hardware Management System MES Galaxy Cluster of Commodity Servers DB Node DB Node DB Node DB Node Compute Node Compute Node Head Node Dashboard Node Yield-Man PAT-Man Yield-Man PAT-Man Real-Time Interface Test Data Stream 10
  • 11. Galaxy confidential Easy Scalability Other customer applications and systems Other Test Data Files Event Data Stream ATE config & maintenance events Real-time Tester Status Test Floor Data Sources STDF Data Files . . . RESTful API Test Hardware Management System MES Galaxy Cluster of Commodity Servers DB Node DB Node DB Node DB Node Compute Node Compute Node Head Node Dashboard Node Yield-Man PAT-Man Yield-Man PAT-Man Real-Time Interface Test Data Stream DB Node DB Node Compute Node RESTful API 11
  • 12. Galaxy confidential MariaDB challenges 12 ❏ From a single box to elastic architecture ❏ Reducing the TCO ❏ OEM solution ❏ Minimizing the impact on existing code ❏ Reach 200B records
  • 13. Galaxy confidential A classic case 13 SENSOR SENSOR SENSOR SENSOR SENSOR STORE QUERY QUERY QUERY QUERY QUERY ❏ Millions of records/s sorted by timeline ❏ Data is queried in other order ❏ Indexes don’t fit into main memory ❏ Disk IOps become bottleneck
  • 14. Galaxy confidential B-tree gotcha 14 2ms disk or network latency, 100 head seeks/s, 2 options: ❏ Increase concurrency ❏ Increase packet size Increased both long time ago using innodb_write_io_threads , innodb_io_capacity, bulk load
  • 15. Galaxy confidential B-tree gotcha 15 With a Billion records, a single partition B-tree stops staying in main memory, a single write produces read IOps to traverse the tree: ❏ Use partitioning ❏ Insert in primary key order ❏ Big redo log and smaller amount of dirty pages ❏ Covering index The next step is to radically change the IO pattern
  • 16. Galaxy confidential Data Structuring modeling 16 INDEXES MAINTENANCE NO INDEXES COLUMN STORE TTREE BTREE FRACTAL TREE STORE NDB InnoDB - MyISAM ZFS TokuDB LevelDB Cassandra Hbase InfiniDB Vertica MEMORY WRITE +++++ ++++ +++ +++++ +++++ READ 99% ++ + ++++ ++++++ READ 1% +++++ ++++ +++ ------- ------ DISK WRITE BTREE - +++ ++++ +++++ READ 99% - + ++++ +++++ READ 1% + +++ ----- -
  • 17. Galaxy confidential INDEXES MAINTENANCE NO INDEXES COLUMN STORE TTREE BTREE FRACTAL TREE NDB InnoDB - MyISAM ZFS TokuDB LevelDB Cassandra Hbase InfiniDB Average Compression Rate NA 1/2 1/6 1/3 1/12 IO Size NA 4K to 64K Variable base on compression & Depth 64M 8M To 64M READ Disk Access Model NA O(Log(N)/ Log(B)) ~O(Log(N)/ Log(B)) O(N/B ) O(N/B - B Elimination) WRITE Disk Access Model NA O(Log(N)/ Log(B)) ~O(Log(N)/B) O(1/B ) O(1/B) Data Structure for big data 17
  • 18. Galaxy confidential Top 10 Alexa’s PETA Bytes store is InnoDB 18 Top Alexa InnoDB Galaxy TokuDB ❏ DBA to setup Insert buffer + Dirty pages ❏ Admins to monitor IO ❏ Admins to increase # nodes ❏ Use flash & hybride storage ❏ DBAs to partition and shard ❏ DBAs to organize maintenance ❏ DBAs to set covering and clustering indexes ❏ Zipf read distribution ❏ Concurrent by design ❏ Remove fragmentation ❏ Constant insert rate regardless memory/disk ratio ❏ High compression rate ❏ No control over client architecture ❏ All indexes can be clustered
  • 19. Galaxy confidential 19 1/5 Compression on 6 Billion Rows Key point for 200 Billion records
  • 20. Galaxy confidential 20 2 times slower insert time vs. InnoDB 2.5 times faster insert vs. InnoDB compressed Key point for 200 Billion records
  • 21. Galaxy confidential 21 ❏ Disk IOps on InnoDB was bottleneck, despite partitioning ❏ Moving to TokuDB, move bottleneck to CPU for compression ❏ So how to increase performance more? Sharding!! Galaxy take away for 200 Billion records
  • 22. Galaxy confidential 22 INDEXES MAINTENANCE NO INDEXES COLUMN STORE TTREE BTREE FRACTAL TREE NDB InnoDB MyISAM ZFS TokuDB LevelDB Cassandra Hbase InfiniDB Vetica CLUSTERING Native Manual, Spider, Vitess, Fabric, Shardquery Manual, Spider, Vitess, Fabric, Shardquery Native Native # OF NODES +++++ +++ ++ +++++ + Sharding to fix CPU Bottleneck
  • 23. Galaxy confidential 23 NO DATA IS STORED IN SPIDER NODES Spider… it’s a MED storage engine
  • 24. Galaxy confidential 24 Preserve data consistency between shards Allow shard replica Enable joining between shards ha_spider.cc SEMI TRX
  • 25. Galaxy confidential Spider - A Sharding + HA solution 25
  • 26. Galaxy confidential Implemented architecture 26 SUMMARY universal tables RAW Sharded tables DATA NODE #1 COMPUTE NODE #1 … DATA NODE #2 DATA NODE #3 DATA NODE #4 HEAD NODE COMPUTE NODE #2 … •SPIDER •NO DATA •MONITORING •TOKUDB •COMPRESSED DATA •PARTITIONS Delay current insertion Replay insertion with new shard key 1/4 OR 1/2 1/4 OR 1/2 1/4 OR 1/2 1/4 OR 1/2
  • 27. Galaxy confidential Re-sharding without data copy 27 Spider table L1.1 Node 01 Node 02 Spider table L1.2 Node 01 Node 02 Node 03 Node 04 Spider table L2 CURRENT Toku table P#Week 01 P#Week 02 Spider table L2 BEFORE AFTER Toku table P#Week 01 P#Week 02 Toku table P#Week 03 P#Week 04 Toku table P#Week 03 P#Week 04 Toku table P#Week 03 P#Week 04 Toku table P#Week 03 P#Week 04 Partition by date (e.g. daily) Shard by node modulo Shard by date range
  • 28. Galaxy confidential Proven Performance 28 Galaxy has deployed its big data solution at a major test subcontractor in Asia with the following performance: • Peak data insertion rate : 2 TB of STDF data per day • Data compression of raw data : 60-80 % • DB retention of raw data : 3 months • DB retention of summary data : 1 year • Archiving of test data : Automatic • Target was 2MB/sec, we get about 10MB/sec • Since 17th June, steady production : – Constant insertion speed – 1400 files/day, 120 GB/day – ft_ptest_results: 92 billion rows / 1.5 TB across 4 nodes – ft_mptest_results: 14 billion rows / 266 GB acroos 4 nodes – wt_ptest_results: 9 billion rows / 153 GB across 4 nodes – 50TB available volume, total DB size is 8TB across all 4 nodes • 7 servers (22k$) + SAN ($$$) OR DAS (15k$)
  • 29. Galaxy confidential File count inserted per day 29 • Integration issues up to May 7 • Raw & Summary-only data insertion up to May 18 • Raw & Summary data insertion, Problem solving, fine tuning up to June 16 • Steady production insertion of Raw & Summary data since June 17
  • 30. Galaxy confidential File count and data size per day 30 • Up to 2TB inserted per day • Up to 20k files per day
  • 31. Galaxy confidential Raw data insertion duration over file size (each colored series is 1 day) 31 Consistant insertion performance
  • 32. Galaxy confidential What’s next? 32 • Make Yield-Man more SPIDER-aware: – Integrated scale-out (add compute/data nodes) – Native database schema upgrade on compute/data nodes • Add more monitoring capability to monitor SPIDER events (node failure, table desynchronization across nodes…) • Automate recover after failures/issues, today: – Manual script to detect de-synchronization – PT table sync from Percona to manually re-sync – Manual script to reintroduce table nodes in the cluster IN SPIDER 2014 ROADMAP