SlideShare a Scribd company logo
1 of 23
Download to read offline
Cassandra
Delivering Christmas gifts
in France since 2012
Me, myself and I
Puppet
Software

@mNantern

Cassandra

Matthieu
Nantern
mnantern@xebia.fr

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

2
From Mysql to Cassandra
Overview

1

2

3

4

Context

Why ?

How ?

Go Live!

Delivering parcels at
La Poste

Why do we need
another system ?
Project’s constraints
and alternatives

How we build our
solution. Using C*
with PHP and
managing TTL

Provisioning servers.
Performance and
resilience testing

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

3
La Poste
Mail services
Parcels distribution
More than 250 000 employees
70 000 postmen delivering parcels

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

4
La Poste
Postman’s tour
(1) A postman scans every parcels
Print

Scan

(2) He prints his list of parcels
(3) He distributes the parcels
(4) He scans every remaining parcels

Distribute

Scan

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

5
From MySQL to C*

Why ?

1
Why do we need another system ?

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

7
Project’s constraints
Max 13ms per call
15 days of retention for data
Easy to deploy and operate
Easy to scale for years to come

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

8
From MySQL to C*

How ?

2
Data Modeling

Data

key1 key2 key3

Id

1

<Xml>

k11

k21

k31

2

<Xml>

k12

k22

3

<Xml>

k13

k23

Id

|

Data

Search1 Search2

1

<Xml>

k11k31 k21k11

k32

2

<Xml>

k12k32 k22k12

k33

3

<Xml>

k13k33 k23k13

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

10
Using Cassandra with PHP
For dummies
$pool = new ConnectionPool("Keyspace1", array("cass:9160"));
$column_family = new ColumnFamily($pool, 'ColumnFamily1');
$column_family->insert('row_key', array('name1' => 'val1', 'name2' => 'val2'));
$column_family->get('row_key');

$row1 = array('name1' => 'val1', 'name2' => 'val2');
$row2 = array('foo' => 'bar');
$column_family->batch_insert(array('row1' => $row1, 'row2' => $row2);
|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

11
Using Cassandra with PHP
Level 2

$index_exp=CassandraUtil::create_index_expression($indexName, $indexValue,
$operator);
$index_clause = CassandraUtil::create_index_clause($indexArray);
$rows = $columnFamily->get_indexed_slices($index_clause);

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

12
TTL in C*
$cf->insert('row_key', array('col1' => 'col_val1','col2' =>'col_val2'),null,TTL);

$columnsTTL = array('col1'=>3, 'col2'=>4);
$cf->insert('row_key', array('col1' => 'val1','col2' =>'val2'),null, $columnsTTL);

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

13
From MySQL to C*

Go Live!

3
Provisioning C* with Puppet
12 servers with Ubuntu 10.04

package { 'cassandra':
ensure => installed
}

initial_token: <%= ((2**127) * (current_cdb_server.to_i-1) / cdb_servers_number.to_i ) %>

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

15
Provisioning C* with Puppet
Managing the data model
package { 'cassandra-data-model':
ensure => latest
}

migration_1.txt
migration_2.txt
migration_3.txt
migration_4.txt

Current Migration Id
2

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

16
Testing our cluster
Mysql performance

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

17
Testing our cluster
Cassandra performance

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

18
Testing our cluster
Resilience

|

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

19
Migration plan
t=0

t+15d

Read

Write

|

Read

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

Write

20
From MySQL to C*

Final words

4
THANK
YOU

For watching

Merci!
Thanks !

Thank you for trusting
me on Cassandra (and
everything else)!

|

Thank you for the
support !

Thank you for the
opportunity to work at
La Poste !

www.xebia.fr | http://blog.xebia.fr | #CassandraEU
Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris

23

More Related Content

Viewers also liked

What is Web 2.0 ... (and why should we care?)
What is Web 2.0 ... (and why should we care?)What is Web 2.0 ... (and why should we care?)
What is Web 2.0 ... (and why should we care?)Leo Havemann
 
OER16 - Skills not Silos - Open Data as OER
OER16 - Skills not Silos - Open Data as OEROER16 - Skills not Silos - Open Data as OER
OER16 - Skills not Silos - Open Data as OERLeo Havemann
 
Are repositories holding back OER?
Are repositories holding back OER?Are repositories holding back OER?
Are repositories holding back OER?Leo Havemann
 
Creative uses of Moodle? - MUGGL presentation and feedback
Creative uses of Moodle? - MUGGL presentation and feedbackCreative uses of Moodle? - MUGGL presentation and feedback
Creative uses of Moodle? - MUGGL presentation and feedbackLeo Havemann
 
Paychex Presentation
Paychex PresentationPaychex Presentation
Paychex PresentationDonna Barney
 
Sicu Power Point Presentation
Sicu Power Point PresentationSicu Power Point Presentation
Sicu Power Point PresentationTom Merilahti
 
Independence Ridge Retirement Community Unit Models, Part 2
Independence Ridge Retirement Community Unit Models, Part 2Independence Ridge Retirement Community Unit Models, Part 2
Independence Ridge Retirement Community Unit Models, Part 2mandeedoll
 

Viewers also liked (7)

What is Web 2.0 ... (and why should we care?)
What is Web 2.0 ... (and why should we care?)What is Web 2.0 ... (and why should we care?)
What is Web 2.0 ... (and why should we care?)
 
OER16 - Skills not Silos - Open Data as OER
OER16 - Skills not Silos - Open Data as OEROER16 - Skills not Silos - Open Data as OER
OER16 - Skills not Silos - Open Data as OER
 
Are repositories holding back OER?
Are repositories holding back OER?Are repositories holding back OER?
Are repositories holding back OER?
 
Creative uses of Moodle? - MUGGL presentation and feedback
Creative uses of Moodle? - MUGGL presentation and feedbackCreative uses of Moodle? - MUGGL presentation and feedback
Creative uses of Moodle? - MUGGL presentation and feedback
 
Paychex Presentation
Paychex PresentationPaychex Presentation
Paychex Presentation
 
Sicu Power Point Presentation
Sicu Power Point PresentationSicu Power Point Presentation
Sicu Power Point Presentation
 
Independence Ridge Retirement Community Unit Models, Part 2
Independence Ridge Retirement Community Unit Models, Part 2Independence Ridge Retirement Community Unit Models, Part 2
Independence Ridge Retirement Community Unit Models, Part 2
 

Recently uploaded

The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
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
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
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
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
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
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
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
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 

Recently uploaded (20)

The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
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.
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
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
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
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
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
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
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 

C* - Delivering Christmas gifts in France since 2012

  • 2. Me, myself and I Puppet Software @mNantern Cassandra Matthieu Nantern mnantern@xebia.fr | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 2
  • 3. From Mysql to Cassandra Overview 1 2 3 4 Context Why ? How ? Go Live! Delivering parcels at La Poste Why do we need another system ? Project’s constraints and alternatives How we build our solution. Using C* with PHP and managing TTL Provisioning servers. Performance and resilience testing | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 3
  • 4. La Poste Mail services Parcels distribution More than 250 000 employees 70 000 postmen delivering parcels | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 4
  • 5. La Poste Postman’s tour (1) A postman scans every parcels Print Scan (2) He prints his list of parcels (3) He distributes the parcels (4) He scans every remaining parcels Distribute Scan | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 5
  • 6. From MySQL to C* Why ? 1
  • 7. Why do we need another system ? | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 7
  • 8. Project’s constraints Max 13ms per call 15 days of retention for data Easy to deploy and operate Easy to scale for years to come | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 8
  • 9. From MySQL to C* How ? 2
  • 10. Data Modeling Data key1 key2 key3 Id 1 <Xml> k11 k21 k31 2 <Xml> k12 k22 3 <Xml> k13 k23 Id | Data Search1 Search2 1 <Xml> k11k31 k21k11 k32 2 <Xml> k12k32 k22k12 k33 3 <Xml> k13k33 k23k13 www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 10
  • 11. Using Cassandra with PHP For dummies $pool = new ConnectionPool("Keyspace1", array("cass:9160")); $column_family = new ColumnFamily($pool, 'ColumnFamily1'); $column_family->insert('row_key', array('name1' => 'val1', 'name2' => 'val2')); $column_family->get('row_key'); $row1 = array('name1' => 'val1', 'name2' => 'val2'); $row2 = array('foo' => 'bar'); $column_family->batch_insert(array('row1' => $row1, 'row2' => $row2); | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 11
  • 12. Using Cassandra with PHP Level 2 $index_exp=CassandraUtil::create_index_expression($indexName, $indexValue, $operator); $index_clause = CassandraUtil::create_index_clause($indexArray); $rows = $columnFamily->get_indexed_slices($index_clause); | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 12
  • 13. TTL in C* $cf->insert('row_key', array('col1' => 'col_val1','col2' =>'col_val2'),null,TTL); $columnsTTL = array('col1'=>3, 'col2'=>4); $cf->insert('row_key', array('col1' => 'val1','col2' =>'val2'),null, $columnsTTL); | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 13
  • 14. From MySQL to C* Go Live! 3
  • 15. Provisioning C* with Puppet 12 servers with Ubuntu 10.04 package { 'cassandra': ensure => installed } initial_token: <%= ((2**127) * (current_cdb_server.to_i-1) / cdb_servers_number.to_i ) %> | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 15
  • 16. Provisioning C* with Puppet Managing the data model package { 'cassandra-data-model': ensure => latest } migration_1.txt migration_2.txt migration_3.txt migration_4.txt Current Migration Id 2 | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 16
  • 17. Testing our cluster Mysql performance | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 17
  • 18. Testing our cluster Cassandra performance | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 18
  • 19. Testing our cluster Resilience | www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 19
  • 20. Migration plan t=0 t+15d Read Write | Read www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris Write 20
  • 21. From MySQL to C* Final words 4
  • 23. Thanks ! Thank you for trusting me on Cassandra (and everything else)! | Thank you for the support ! Thank you for the opportunity to work at La Poste ! www.xebia.fr | http://blog.xebia.fr | #CassandraEU Telephone : 33 (0)1 53 89 99 99 | email : info@xebia.fr | 156 bd Haussmann - 75008 Paris 23