SlideShare a Scribd company logo
1 of 55
Download to read offline
Data Science | Design | Technology
(October 24, 2017)
https://www.meetup.com/DSDTMTL
1
Agenda 6:00 - 6:15: Welcome
6:15 - 7:00: Inventory Optimization
7:00 - 7:30: Graph Databases
7:30 - 8:00: Q&A + Networking
2
Optimization Algorithms & Graph
Structures
Tools for Better Decision Making
Tools for Better
Decision Making
Inventory
Optimization
Data Science | Design | Technology 3
(Source: https://en.wikipedia.org/wiki/Markov_decision_process)
4
INVENTORY OPTIMIZATION :
HOW TO DEAL WITH SLOW-MOVING ITEMS
WHAT IS INVENTORY
OPTIMIZATION?
You all do it!
0
10
20
30
40
50
60
demand inventory total inventory
WHAT IS INVENTORY OPTIMIZATION?
s
S
LEADTIME
PREDICTIVE
PRESCRIPTIVE
0
10
20
30
40
50
60
demand inventory total inventory
WHAT IS INVENTORY OPTIMIZATION?
s
S
LEADTIME
FORECASTING
Predictive
0
5
10
15
20
25
30
8/8/2017 8/22/2017 9/5/2017 9/19/2017 10/3/2017 10/17/2017 10/31/2017 11/14/2017
Fast moving sales
Up to
75%*
of Retail products
are slow Moving
*https://smartech.gatech.edu/bitstream/handle/1853/13469/Managing%20Slow%20Moving%20Perishables%20in%20the%20
Grocery%20Industry.pdf
SLOW-MOVING ITEMS
Slow-movers are products with very
low sales, maybe one unit per week
or even less.
They are important!
Where are slow-movers?
0
1
2
3
8/8/2017 8/22/2017 9/5/2017 9/19/2017 10/3/2017 10/17/2017 10/31/2017 11/14/2017
Slow moving sales
0
1
2
3
8/8/2017 8/22/2017 9/5/2017 9/19/2017 10/3/2017 10/17/2017 10/31/2017 11/14/2017
Slow moving sales
0 1 2
0 1 2 3
0 1 2
MAXIMUM LIKELIHOOD
ESTIMATION
1
6
1
1
MAXIMUM LIKELIHOOD
ESTIMATION
What is the cause most likely to
produce the observed effect.
0
1
2
3
8/8/2017 8/22/2017 9/5/2017 9/19/2017 10/3/2017 10/17/2017 10/31/2017 11/14/2017
Slow moving sales
0 1 2
0 1 2 3
0 1 2
MAXIMUM LIKELIHOOD
ESTIMATION
OPTIMIZATION
Prescriptive
S
s
Time
But we want the best (s, S) policy!
It must minimize costs and match a service level.
INVENTORY
OPTIMIZATION
(s, S) Policy
When the inventory contains s or less items, an
order is made to reach level S.
Order &
shipping cost
Inventory cost Backorders
Service level
80%
DEMAND
FORECAST
INVENTORY OPTIMIZATION FULFILLMENT
Demand distribution profile
Normal Poisson
(mean, variance) (mean)
Stationary (long term)
demand distribution
Lead time distribution profile
Normal Poisson
(mean, variance) (mean)
Uncertainty profiles
selection
Optimization Inventory
Policy
(s, S)
TRADITIONAL
INVENTORY
OPTIMIZATION
Slow moversFast movers
SLOW-MOVERS VS
FAST MOVERS
23
Markov Decision Process vs traditional inventory optimization
Normal Poisson
(mean, variance) (mean)
Uncertainty profiles selection
(s, S)
Optimization Inventory Policy
DEMAND
FORECAST
INVENTORY OPTIMIZATION FULFILLMENT
EOQ
ROP
DISCRETE DEMAND
DISTRIBUTION
PERIOD 1 PERIOD 2 PERIOD 3
1
+0
+1
+2
+3
-1
0
1
2
3
-1
0
1
2
3
2
1
0
3%
20%
77% 1
0
50%
50%
+0
+1
+2
+3
1
0
50%
50%
MARKOV DECISION PROCESS
Empirical Distribution
Distributional Forecast
0 4 5 6 7 10 25
qty
probability
35%
30%
5% 5%
10% 10%
5%
OR
MARKOV DECISION PROCESS
• Andrey Andreyevich Markov
• Based on
• the probability to transition from one state to
another
• the possible actions
• The cost associated to each state and action
• What is the best action at each state?
STATES
ACTIONS
INVENTORY QUANTITIES
DEMAND DISTRIBUTION
ORDER QUANTITIES
INVENTORY COSTS
TRANSITIONS
REWARDS
25
2
1
0
3%
20%
77%
Period 2 Period 3
STATES
ACTIONS
INVENTORY QUANTITIES
DEMAND DISTRIBUTION
ORDER QUANTITIES
1
INVENTORY COSTS
TRANSITIONS
REWARDS
0
-1
1
2
3
4
INDIVIDUAL ITEM AT A SINGLE LOCATION OVER 3 PERIODS
MARKOV DECISION PROCESS
2
1
0
3%
20%
77%
2
1
0
3%
20%
77%
0
-1
1
2
3
4
+ 0
+ 1
+ 2
+ 3
Period 1
$60
$60
$60
$10
26
Period 2 Period 3
2 3%
STATES
ACTIONS
INVENTORY QUANTITIES
DEMAND DISTRIBUTION
ORDER QUANTITIES
1
INVENTORY COSTS
0
-1
1
2
3
4
+ 0
+ 1
+ 2
+ 3
$60
$60
$60
$10
Period 1
TRANSITIONS
REWARDS
0
-1
1
2
3
4
+ 0
+ 1
+ 2
+ 3
$1050
$1050
$1050
$1000
INDIVIDUAL ITEM AT A SINGLE LOCATION OVER 3 PERIODS
MARKOV DECISION PROCESS
27
1
0
50%
50%
Period 2 Period 3
STATES
ACTIONS
INVENTORY QUANTITIES
DEMAND DISTRIBUTION
ORDER QUANTITIES
1
INVENTORY COSTS
0
-1
1
2
3
4
+ 0
+ 1
+ 2
+ 3
$60
$60
$60
$10
Period 1
TRANSITIONS
REWARDS
0
-1
1
2
3
4
2 3%
+ 0
+ 1
+ 2
+ 3
$60
$60
$60
$10
0 20%
1 77%
1
0
50%
50%
INDIVIDUAL ITEM AT A SINGLE LOCATION OVER 3 PERIODS
MARKOV DECISION PROCESS
28
Period 2 Period 3
STATES
ACTIONS
INVENTORY QUANTITIES
DEMAND DISTRIBUTION
ORDER QUANTITIES
2
1
0
3%
20%
77%
1
INVENTORY COSTS
0
-1
1
2
3
4
+ 1
$60
Period 1
TRANSITIONS
REWARDS
1
0
50%
50%
+ 0
$10
1
0
50%
50%
+ 0
$20
1
0
50%
50%
+ 3
$60
+ 2
$50
+ 0
$20
+ 3
$60
+ 0
$30
0
-1
1
2
3
4
3%
32%
47%
18%
0
-1
1
2
3
4
INDIVIDUAL ITEM AT A SINGLE LOCATION OVER 3 PERIODS RESULT: DYNAMIC POLICY
MARKOV DECISION PROCESS
29
2
1
0
3%
20%
77%
STATES
ACTIONS
TRANSITIONS
REWARDS
INVENTORY QUANTITIES
DEMAND DISTRIBUTION
EXPECTED LEADTIME
ORDER QUANTITIES
2
1
0
3%
20%
77%
INVENTORY COSTS
2
1
0
3%
20%
77%
0
-1
1
2
3
4
+ 0
+ 1
+ 2
+ 3
$60
$60
$60
$10
INDIVIDUAL ITEM AT A SINGLE LOCATION STEADY STATE
0
-1
1
2
3
4
MARKOV DECISION PROCESS
30
2
1
0
3%
20%
77%
STATES
ACTIONS
TRANSITIONS
REWARDS
INVENTORY QUANTITIES
DEMAND DISTRIBUTION
EXPECTED LEADTIME
ORDER QUANTITIES
2
1
0
3%
20%
77%
INVENTORY COSTS
2
1
0
3%
20%
77%
0
-1
1
2
3
4
+ 0
+ 1
+ 2
+ 3
$70
$70
$70
$20
INDIVIDUAL ITEM AT A SINGLE LOCATION STEADY STATE RESULT: STATIC POLICY
INVENTORY
QUANTITY -1 0 1 2 3 4 5 6
OPTIMAL ORDER
QUANTITY 6 6 5 4 0 0 0 0
(2, 6)
0
-1
1
2
3
4
WHAT IS THE SERVICE LEVEL????
MARKOV DECISION PROCESS
Initial states
Final states
Demand probabilities:
Expected service level
Order 0 unit
State Expected service level
-2 (1 – 0.0169 – 0.2262) = 0.7569
-1 (1 – 0.0169 – 0.2262) = 0.7569
0 (1 – 0.0169 – 0.2262) = 0.7569
1 (1 – 0.0169 - 0 ) = 0.9831
2 (1 – 0 – 0) = 1.0
… …
Inventor optimization is about balancing cost and
service level
Slow movers are a large part of most inventories
They must be handled differently than fast movers
• Through better forecast
• Specialized optimization algorithms
CONCLUSION
Tools for Better
Decision Making
Graph Databases
Data Science | Design | Technology 34
(Source: http://docs.janusgraph.org/latest/getting-started.html)
Graph Databases,
When Relationships Matter
Fraud Detection
Recommendation
Engines
• Growing processing complexity
• Massive growth in volumes of data
• Greater demand
• Real-time processing constraints
Context
Can Relational
DBs Do It?
• Identify patterns of relationships between records
• Join relevant tables together
• Number of joins can quickly increase
• Wildcard search cannot be done using SQL queries
Can Relational
DBs Do It?
Graph DBs to the
Rescue
• A database management system with CRUD
operations working on a graph data model
• Part of the NoSQL family
• Graph data model: composed of vertices, edges and
attributes
• Nodes represent entities
• Edges represent associations between vertices
What is a Graph
Database?
Fraud Detection
• Neo4j: most popular graph database
• JanusGraph: graph framework with a variety of
storage (BigTable, HBase and Cassandra) and
indexing (Elasticsearch, Solr and Lucene)
backends
• ArangoDB: multi-model (graph, document and
key-value) database
Popular Graph
Databases
Let’s Try It On The Cloud
• Low latency
• Horizontal autoscaling
• Resilient
Requirements
• Configuration 1: Single-node Neo4j DB
• Configuration 2: JanusGraph with a single-node
Cassandra backend
• Configuration 3: JanusGraph with a 3-node HBase
backend
• DB and Java application running on the same
Kubernetes cluster
What We Have
Tried
Results Neo4j JanusGraph
Resilience HA cluster with a master-
slave replication setup.
Traffic can be directed to
slave as a failover plan.
Available only in
Enterprise Edition.
Both Cassandra and
HBase provide a
replication mechanism.
Traffic can be directed to
a second JanusGrpah
instance.
Horizontal Autoscaling - Additional nodes can be added at runtime to a HA
cluster
- Both Kubernetes and GKE support horizontal
autoscaling
- Disks cannot be dynamically provisioned on
Kubernetes
Querying the Database - Cypher query
language
- Drivers
- Gremlin query
language
- Java driver
• Powerful in analyzing relationships
• Cannot be used as a main data store
• Adds more complexity to code (transaction
management)
• Cluster management requires admin knowledge
• HBase requires knowledge of the Hadoop
ecosystem
• Current stable Kubernetes supports only CPU
autoscaling
Lessons Learned
Based on our constraints
and experiments
Demo
• BigTable as a backend
• Voice commands
• ArangoDB
Future Work
• Meetup group created in April 2017
• Now 952 members (Oct 24th)
• One meetup per month.
• This is your meetup! Propose topics
you would like to present
Data Science | Design | Technology
53
members…..Once we reach
… one lucky participant of our
meetups will win a prize!
Invite your friends to join
the DSDT group
Next
Meetup
Nov 14
54
Co-presentation on cloud data
streaming with
Merci / Thank You
55
@jdalabsmtl
Data Science | Design | Technology
(Check for next DSDT meetup at https://www.meetup.com/DSDTMTL)

More Related Content

Similar to DSDT Meetup October 2017

How to Use Big Data to Transform IT Operations
How to Use Big Data to Transform IT OperationsHow to Use Big Data to Transform IT Operations
How to Use Big Data to Transform IT OperationsExtraHop Networks
 
Paradigmas de procesamiento en Big Data: estado actual, tendencias y oportu...
Paradigmas de procesamiento en  Big Data: estado actual,  tendencias y oportu...Paradigmas de procesamiento en  Big Data: estado actual,  tendencias y oportu...
Paradigmas de procesamiento en Big Data: estado actual, tendencias y oportu...Facultad de Informática UCM
 
DockerCon SF 2019 - Observability Workshop
DockerCon SF 2019 - Observability WorkshopDockerCon SF 2019 - Observability Workshop
DockerCon SF 2019 - Observability WorkshopKevin Crawley
 
Big Data Ecosystem for Data-Driven Decision Making
Big Data Ecosystem for Data-Driven Decision MakingBig Data Ecosystem for Data-Driven Decision Making
Big Data Ecosystem for Data-Driven Decision MakingAbzetdin Adamov
 
20160000 Cloud Discovery Event - Cloud Access Security Brokers
20160000 Cloud Discovery Event - Cloud Access Security Brokers20160000 Cloud Discovery Event - Cloud Access Security Brokers
20160000 Cloud Discovery Event - Cloud Access Security BrokersRobin Vermeirsch
 
Big Data Paris : Hadoop and NoSQL
Big Data Paris : Hadoop and NoSQLBig Data Paris : Hadoop and NoSQL
Big Data Paris : Hadoop and NoSQLTugdual Grall
 
(BDT207) Real-Time Analytics In Service Of Self-Healing Ecosystems
(BDT207) Real-Time Analytics In Service Of Self-Healing Ecosystems(BDT207) Real-Time Analytics In Service Of Self-Healing Ecosystems
(BDT207) Real-Time Analytics In Service Of Self-Healing EcosystemsAmazon Web Services
 
Benchmark Showdown: Which Relational Database is the Fastest on AWS?
Benchmark Showdown: Which Relational Database is the Fastest on AWS?Benchmark Showdown: Which Relational Database is the Fastest on AWS?
Benchmark Showdown: Which Relational Database is the Fastest on AWS?Clustrix
 
Stream Processing in Uber
Stream Processing in UberStream Processing in Uber
Stream Processing in UberC4Media
 
RS in the context of Big Data-v4
RS in the context of Big Data-v4RS in the context of Big Data-v4
RS in the context of Big Data-v4Khadija Atiya
 
Delivering fast, powerful and scalable analytics
Delivering fast, powerful and scalable analyticsDelivering fast, powerful and scalable analytics
Delivering fast, powerful and scalable analyticsMariaDB plc
 
Disruptive Technologies
Disruptive TechnologiesDisruptive Technologies
Disruptive TechnologiesEran Stiller
 
Tapping the cloud for real time data analytics
 Tapping the cloud for real time data analytics Tapping the cloud for real time data analytics
Tapping the cloud for real time data analyticsAmazon Web Services
 
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander Zaitsev
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander ZaitsevClickHouse in Real Life. Case Studies and Best Practices, by Alexander Zaitsev
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander ZaitsevAltinity Ltd
 
Where Should You Deliver Database Services From?
Where Should You Deliver Database Services From?Where Should You Deliver Database Services From?
Where Should You Deliver Database Services From?EDB
 
Migrating to MongoDB: Best Practices
Migrating to MongoDB: Best PracticesMigrating to MongoDB: Best Practices
Migrating to MongoDB: Best PracticesMongoDB
 
Best Practices for Supercharging Cloud Analytics on Amazon Redshift
Best Practices for Supercharging Cloud Analytics on Amazon RedshiftBest Practices for Supercharging Cloud Analytics on Amazon Redshift
Best Practices for Supercharging Cloud Analytics on Amazon RedshiftSnapLogic
 
Big Data Storage Challenges and Solutions
Big Data Storage Challenges and SolutionsBig Data Storage Challenges and Solutions
Big Data Storage Challenges and SolutionsWSO2
 

Similar to DSDT Meetup October 2017 (20)

Advanced Analytics in Banking, CITI
Advanced Analytics in Banking, CITIAdvanced Analytics in Banking, CITI
Advanced Analytics in Banking, CITI
 
How to Use Big Data to Transform IT Operations
How to Use Big Data to Transform IT OperationsHow to Use Big Data to Transform IT Operations
How to Use Big Data to Transform IT Operations
 
Paradigmas de procesamiento en Big Data: estado actual, tendencias y oportu...
Paradigmas de procesamiento en  Big Data: estado actual,  tendencias y oportu...Paradigmas de procesamiento en  Big Data: estado actual,  tendencias y oportu...
Paradigmas de procesamiento en Big Data: estado actual, tendencias y oportu...
 
DockerCon SF 2019 - Observability Workshop
DockerCon SF 2019 - Observability WorkshopDockerCon SF 2019 - Observability Workshop
DockerCon SF 2019 - Observability Workshop
 
Big Data Ecosystem for Data-Driven Decision Making
Big Data Ecosystem for Data-Driven Decision MakingBig Data Ecosystem for Data-Driven Decision Making
Big Data Ecosystem for Data-Driven Decision Making
 
20160000 Cloud Discovery Event - Cloud Access Security Brokers
20160000 Cloud Discovery Event - Cloud Access Security Brokers20160000 Cloud Discovery Event - Cloud Access Security Brokers
20160000 Cloud Discovery Event - Cloud Access Security Brokers
 
Big Data Paris : Hadoop and NoSQL
Big Data Paris : Hadoop and NoSQLBig Data Paris : Hadoop and NoSQL
Big Data Paris : Hadoop and NoSQL
 
(BDT207) Real-Time Analytics In Service Of Self-Healing Ecosystems
(BDT207) Real-Time Analytics In Service Of Self-Healing Ecosystems(BDT207) Real-Time Analytics In Service Of Self-Healing Ecosystems
(BDT207) Real-Time Analytics In Service Of Self-Healing Ecosystems
 
Benchmark Showdown: Which Relational Database is the Fastest on AWS?
Benchmark Showdown: Which Relational Database is the Fastest on AWS?Benchmark Showdown: Which Relational Database is the Fastest on AWS?
Benchmark Showdown: Which Relational Database is the Fastest on AWS?
 
Stream Processing in Uber
Stream Processing in UberStream Processing in Uber
Stream Processing in Uber
 
RS in the context of Big Data-v4
RS in the context of Big Data-v4RS in the context of Big Data-v4
RS in the context of Big Data-v4
 
Nic solution strategy
Nic solution strategyNic solution strategy
Nic solution strategy
 
Delivering fast, powerful and scalable analytics
Delivering fast, powerful and scalable analyticsDelivering fast, powerful and scalable analytics
Delivering fast, powerful and scalable analytics
 
Disruptive Technologies
Disruptive TechnologiesDisruptive Technologies
Disruptive Technologies
 
Tapping the cloud for real time data analytics
 Tapping the cloud for real time data analytics Tapping the cloud for real time data analytics
Tapping the cloud for real time data analytics
 
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander Zaitsev
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander ZaitsevClickHouse in Real Life. Case Studies and Best Practices, by Alexander Zaitsev
ClickHouse in Real Life. Case Studies and Best Practices, by Alexander Zaitsev
 
Where Should You Deliver Database Services From?
Where Should You Deliver Database Services From?Where Should You Deliver Database Services From?
Where Should You Deliver Database Services From?
 
Migrating to MongoDB: Best Practices
Migrating to MongoDB: Best PracticesMigrating to MongoDB: Best Practices
Migrating to MongoDB: Best Practices
 
Best Practices for Supercharging Cloud Analytics on Amazon Redshift
Best Practices for Supercharging Cloud Analytics on Amazon RedshiftBest Practices for Supercharging Cloud Analytics on Amazon Redshift
Best Practices for Supercharging Cloud Analytics on Amazon Redshift
 
Big Data Storage Challenges and Solutions
Big Data Storage Challenges and SolutionsBig Data Storage Challenges and Solutions
Big Data Storage Challenges and Solutions
 

More from DSDT_MTL

DSDT Meetup Septembre 2021
DSDT Meetup Septembre 2021DSDT Meetup Septembre 2021
DSDT Meetup Septembre 2021DSDT_MTL
 
DSDT Meetup August 2021
DSDT Meetup August 2021DSDT Meetup August 2021
DSDT Meetup August 2021DSDT_MTL
 
DSDT meetup July 2021
DSDT meetup July 2021DSDT meetup July 2021
DSDT meetup July 2021DSDT_MTL
 
DSDT Meetup May 2021
DSDT Meetup May 2021DSDT Meetup May 2021
DSDT Meetup May 2021DSDT_MTL
 
DSDT Meetup April 2021
DSDT Meetup April 2021DSDT Meetup April 2021
DSDT Meetup April 2021DSDT_MTL
 
DSDT Meetup May 2019
DSDT Meetup May 2019DSDT Meetup May 2019
DSDT Meetup May 2019DSDT_MTL
 
DSDT Meetup March 2019
DSDT Meetup March 2019DSDT Meetup March 2019
DSDT Meetup March 2019DSDT_MTL
 
DSDT Meetup February 2019
DSDT Meetup February 2019DSDT Meetup February 2019
DSDT Meetup February 2019DSDT_MTL
 
DSDT Meetup May 2017
DSDT Meetup May 2017DSDT Meetup May 2017
DSDT Meetup May 2017DSDT_MTL
 
DSDT Meetup July 2017
DSDT Meetup July 2017DSDT Meetup July 2017
DSDT Meetup July 2017DSDT_MTL
 
DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT_MTL
 
DSDT Meetup January 2018
DSDT Meetup January 2018DSDT Meetup January 2018
DSDT Meetup January 2018DSDT_MTL
 
DSDT Meetup February 2018
DSDT Meetup February 2018DSDT Meetup February 2018
DSDT Meetup February 2018DSDT_MTL
 
DSDT Meetup May 2018
DSDT Meetup May 2018DSDT Meetup May 2018
DSDT Meetup May 2018DSDT_MTL
 
DSDT Meetup June 2018
DSDT Meetup June 2018DSDT Meetup June 2018
DSDT Meetup June 2018DSDT_MTL
 
DSDT Meetup July 2018
DSDT Meetup July 2018DSDT Meetup July 2018
DSDT Meetup July 2018DSDT_MTL
 
DSDT Meetup November 2018
DSDT Meetup November 2018DSDT Meetup November 2018
DSDT Meetup November 2018DSDT_MTL
 

More from DSDT_MTL (17)

DSDT Meetup Septembre 2021
DSDT Meetup Septembre 2021DSDT Meetup Septembre 2021
DSDT Meetup Septembre 2021
 
DSDT Meetup August 2021
DSDT Meetup August 2021DSDT Meetup August 2021
DSDT Meetup August 2021
 
DSDT meetup July 2021
DSDT meetup July 2021DSDT meetup July 2021
DSDT meetup July 2021
 
DSDT Meetup May 2021
DSDT Meetup May 2021DSDT Meetup May 2021
DSDT Meetup May 2021
 
DSDT Meetup April 2021
DSDT Meetup April 2021DSDT Meetup April 2021
DSDT Meetup April 2021
 
DSDT Meetup May 2019
DSDT Meetup May 2019DSDT Meetup May 2019
DSDT Meetup May 2019
 
DSDT Meetup March 2019
DSDT Meetup March 2019DSDT Meetup March 2019
DSDT Meetup March 2019
 
DSDT Meetup February 2019
DSDT Meetup February 2019DSDT Meetup February 2019
DSDT Meetup February 2019
 
DSDT Meetup May 2017
DSDT Meetup May 2017DSDT Meetup May 2017
DSDT Meetup May 2017
 
DSDT Meetup July 2017
DSDT Meetup July 2017DSDT Meetup July 2017
DSDT Meetup July 2017
 
DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT Meetup Nov 2017
DSDT Meetup Nov 2017
 
DSDT Meetup January 2018
DSDT Meetup January 2018DSDT Meetup January 2018
DSDT Meetup January 2018
 
DSDT Meetup February 2018
DSDT Meetup February 2018DSDT Meetup February 2018
DSDT Meetup February 2018
 
DSDT Meetup May 2018
DSDT Meetup May 2018DSDT Meetup May 2018
DSDT Meetup May 2018
 
DSDT Meetup June 2018
DSDT Meetup June 2018DSDT Meetup June 2018
DSDT Meetup June 2018
 
DSDT Meetup July 2018
DSDT Meetup July 2018DSDT Meetup July 2018
DSDT Meetup July 2018
 
DSDT Meetup November 2018
DSDT Meetup November 2018DSDT Meetup November 2018
DSDT Meetup November 2018
 

Recently uploaded

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 

Recently uploaded (20)

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 

DSDT Meetup October 2017

  • 1. Data Science | Design | Technology (October 24, 2017) https://www.meetup.com/DSDTMTL 1
  • 2. Agenda 6:00 - 6:15: Welcome 6:15 - 7:00: Inventory Optimization 7:00 - 7:30: Graph Databases 7:30 - 8:00: Q&A + Networking 2 Optimization Algorithms & Graph Structures Tools for Better Decision Making
  • 3. Tools for Better Decision Making Inventory Optimization Data Science | Design | Technology 3 (Source: https://en.wikipedia.org/wiki/Markov_decision_process)
  • 4. 4 INVENTORY OPTIMIZATION : HOW TO DEAL WITH SLOW-MOVING ITEMS
  • 6. 0 10 20 30 40 50 60 demand inventory total inventory WHAT IS INVENTORY OPTIMIZATION? s S LEADTIME PREDICTIVE PRESCRIPTIVE
  • 7. 0 10 20 30 40 50 60 demand inventory total inventory WHAT IS INVENTORY OPTIMIZATION? s S LEADTIME
  • 9. 0 5 10 15 20 25 30 8/8/2017 8/22/2017 9/5/2017 9/19/2017 10/3/2017 10/17/2017 10/31/2017 11/14/2017 Fast moving sales
  • 10. Up to 75%* of Retail products are slow Moving *https://smartech.gatech.edu/bitstream/handle/1853/13469/Managing%20Slow%20Moving%20Perishables%20in%20the%20 Grocery%20Industry.pdf SLOW-MOVING ITEMS Slow-movers are products with very low sales, maybe one unit per week or even less. They are important!
  • 12. 0 1 2 3 8/8/2017 8/22/2017 9/5/2017 9/19/2017 10/3/2017 10/17/2017 10/31/2017 11/14/2017 Slow moving sales
  • 13. 0 1 2 3 8/8/2017 8/22/2017 9/5/2017 9/19/2017 10/3/2017 10/17/2017 10/31/2017 11/14/2017 Slow moving sales 0 1 2 0 1 2 3 0 1 2
  • 15. MAXIMUM LIKELIHOOD ESTIMATION What is the cause most likely to produce the observed effect.
  • 16. 0 1 2 3 8/8/2017 8/22/2017 9/5/2017 9/19/2017 10/3/2017 10/17/2017 10/31/2017 11/14/2017 Slow moving sales 0 1 2 0 1 2 3 0 1 2 MAXIMUM LIKELIHOOD ESTIMATION
  • 18. S s Time But we want the best (s, S) policy! It must minimize costs and match a service level. INVENTORY OPTIMIZATION (s, S) Policy When the inventory contains s or less items, an order is made to reach level S.
  • 21. DEMAND FORECAST INVENTORY OPTIMIZATION FULFILLMENT Demand distribution profile Normal Poisson (mean, variance) (mean) Stationary (long term) demand distribution Lead time distribution profile Normal Poisson (mean, variance) (mean) Uncertainty profiles selection Optimization Inventory Policy (s, S) TRADITIONAL INVENTORY OPTIMIZATION
  • 23. 23 Markov Decision Process vs traditional inventory optimization Normal Poisson (mean, variance) (mean) Uncertainty profiles selection (s, S) Optimization Inventory Policy DEMAND FORECAST INVENTORY OPTIMIZATION FULFILLMENT EOQ ROP DISCRETE DEMAND DISTRIBUTION PERIOD 1 PERIOD 2 PERIOD 3 1 +0 +1 +2 +3 -1 0 1 2 3 -1 0 1 2 3 2 1 0 3% 20% 77% 1 0 50% 50% +0 +1 +2 +3 1 0 50% 50% MARKOV DECISION PROCESS Empirical Distribution Distributional Forecast 0 4 5 6 7 10 25 qty probability 35% 30% 5% 5% 10% 10% 5% OR
  • 24. MARKOV DECISION PROCESS • Andrey Andreyevich Markov • Based on • the probability to transition from one state to another • the possible actions • The cost associated to each state and action • What is the best action at each state? STATES ACTIONS INVENTORY QUANTITIES DEMAND DISTRIBUTION ORDER QUANTITIES INVENTORY COSTS TRANSITIONS REWARDS
  • 25. 25 2 1 0 3% 20% 77% Period 2 Period 3 STATES ACTIONS INVENTORY QUANTITIES DEMAND DISTRIBUTION ORDER QUANTITIES 1 INVENTORY COSTS TRANSITIONS REWARDS 0 -1 1 2 3 4 INDIVIDUAL ITEM AT A SINGLE LOCATION OVER 3 PERIODS MARKOV DECISION PROCESS 2 1 0 3% 20% 77% 2 1 0 3% 20% 77% 0 -1 1 2 3 4 + 0 + 1 + 2 + 3 Period 1 $60 $60 $60 $10
  • 26. 26 Period 2 Period 3 2 3% STATES ACTIONS INVENTORY QUANTITIES DEMAND DISTRIBUTION ORDER QUANTITIES 1 INVENTORY COSTS 0 -1 1 2 3 4 + 0 + 1 + 2 + 3 $60 $60 $60 $10 Period 1 TRANSITIONS REWARDS 0 -1 1 2 3 4 + 0 + 1 + 2 + 3 $1050 $1050 $1050 $1000 INDIVIDUAL ITEM AT A SINGLE LOCATION OVER 3 PERIODS MARKOV DECISION PROCESS
  • 27. 27 1 0 50% 50% Period 2 Period 3 STATES ACTIONS INVENTORY QUANTITIES DEMAND DISTRIBUTION ORDER QUANTITIES 1 INVENTORY COSTS 0 -1 1 2 3 4 + 0 + 1 + 2 + 3 $60 $60 $60 $10 Period 1 TRANSITIONS REWARDS 0 -1 1 2 3 4 2 3% + 0 + 1 + 2 + 3 $60 $60 $60 $10 0 20% 1 77% 1 0 50% 50% INDIVIDUAL ITEM AT A SINGLE LOCATION OVER 3 PERIODS MARKOV DECISION PROCESS
  • 28. 28 Period 2 Period 3 STATES ACTIONS INVENTORY QUANTITIES DEMAND DISTRIBUTION ORDER QUANTITIES 2 1 0 3% 20% 77% 1 INVENTORY COSTS 0 -1 1 2 3 4 + 1 $60 Period 1 TRANSITIONS REWARDS 1 0 50% 50% + 0 $10 1 0 50% 50% + 0 $20 1 0 50% 50% + 3 $60 + 2 $50 + 0 $20 + 3 $60 + 0 $30 0 -1 1 2 3 4 3% 32% 47% 18% 0 -1 1 2 3 4 INDIVIDUAL ITEM AT A SINGLE LOCATION OVER 3 PERIODS RESULT: DYNAMIC POLICY MARKOV DECISION PROCESS
  • 29. 29 2 1 0 3% 20% 77% STATES ACTIONS TRANSITIONS REWARDS INVENTORY QUANTITIES DEMAND DISTRIBUTION EXPECTED LEADTIME ORDER QUANTITIES 2 1 0 3% 20% 77% INVENTORY COSTS 2 1 0 3% 20% 77% 0 -1 1 2 3 4 + 0 + 1 + 2 + 3 $60 $60 $60 $10 INDIVIDUAL ITEM AT A SINGLE LOCATION STEADY STATE 0 -1 1 2 3 4 MARKOV DECISION PROCESS
  • 30. 30 2 1 0 3% 20% 77% STATES ACTIONS TRANSITIONS REWARDS INVENTORY QUANTITIES DEMAND DISTRIBUTION EXPECTED LEADTIME ORDER QUANTITIES 2 1 0 3% 20% 77% INVENTORY COSTS 2 1 0 3% 20% 77% 0 -1 1 2 3 4 + 0 + 1 + 2 + 3 $70 $70 $70 $20 INDIVIDUAL ITEM AT A SINGLE LOCATION STEADY STATE RESULT: STATIC POLICY INVENTORY QUANTITY -1 0 1 2 3 4 5 6 OPTIMAL ORDER QUANTITY 6 6 5 4 0 0 0 0 (2, 6) 0 -1 1 2 3 4 WHAT IS THE SERVICE LEVEL???? MARKOV DECISION PROCESS
  • 32. Expected service level Order 0 unit State Expected service level -2 (1 – 0.0169 – 0.2262) = 0.7569 -1 (1 – 0.0169 – 0.2262) = 0.7569 0 (1 – 0.0169 – 0.2262) = 0.7569 1 (1 – 0.0169 - 0 ) = 0.9831 2 (1 – 0 – 0) = 1.0 … …
  • 33. Inventor optimization is about balancing cost and service level Slow movers are a large part of most inventories They must be handled differently than fast movers • Through better forecast • Specialized optimization algorithms CONCLUSION
  • 34. Tools for Better Decision Making Graph Databases Data Science | Design | Technology 34 (Source: http://docs.janusgraph.org/latest/getting-started.html)
  • 38. • Growing processing complexity • Massive growth in volumes of data • Greater demand • Real-time processing constraints Context
  • 40. • Identify patterns of relationships between records • Join relevant tables together • Number of joins can quickly increase • Wildcard search cannot be done using SQL queries Can Relational DBs Do It?
  • 41. Graph DBs to the Rescue
  • 42. • A database management system with CRUD operations working on a graph data model • Part of the NoSQL family • Graph data model: composed of vertices, edges and attributes • Nodes represent entities • Edges represent associations between vertices What is a Graph Database?
  • 44. • Neo4j: most popular graph database • JanusGraph: graph framework with a variety of storage (BigTable, HBase and Cassandra) and indexing (Elasticsearch, Solr and Lucene) backends • ArangoDB: multi-model (graph, document and key-value) database Popular Graph Databases
  • 45. Let’s Try It On The Cloud
  • 46. • Low latency • Horizontal autoscaling • Resilient Requirements
  • 47. • Configuration 1: Single-node Neo4j DB • Configuration 2: JanusGraph with a single-node Cassandra backend • Configuration 3: JanusGraph with a 3-node HBase backend • DB and Java application running on the same Kubernetes cluster What We Have Tried
  • 48. Results Neo4j JanusGraph Resilience HA cluster with a master- slave replication setup. Traffic can be directed to slave as a failover plan. Available only in Enterprise Edition. Both Cassandra and HBase provide a replication mechanism. Traffic can be directed to a second JanusGrpah instance. Horizontal Autoscaling - Additional nodes can be added at runtime to a HA cluster - Both Kubernetes and GKE support horizontal autoscaling - Disks cannot be dynamically provisioned on Kubernetes Querying the Database - Cypher query language - Drivers - Gremlin query language - Java driver
  • 49. • Powerful in analyzing relationships • Cannot be used as a main data store • Adds more complexity to code (transaction management) • Cluster management requires admin knowledge • HBase requires knowledge of the Hadoop ecosystem • Current stable Kubernetes supports only CPU autoscaling Lessons Learned Based on our constraints and experiments
  • 50. Demo
  • 51. • BigTable as a backend • Voice commands • ArangoDB Future Work
  • 52. • Meetup group created in April 2017 • Now 952 members (Oct 24th) • One meetup per month. • This is your meetup! Propose topics you would like to present Data Science | Design | Technology
  • 53. 53 members…..Once we reach … one lucky participant of our meetups will win a prize! Invite your friends to join the DSDT group
  • 54. Next Meetup Nov 14 54 Co-presentation on cloud data streaming with
  • 55. Merci / Thank You 55 @jdalabsmtl Data Science | Design | Technology (Check for next DSDT meetup at https://www.meetup.com/DSDTMTL)