WEBVTT
00:00:00.000 --> 00:00:08.709
[MUSIC]
00:00:08.710 --> 00:00:10.010
Thank you for joining us today.
00:00:10.011 --> 00:00:11.534
My name is Wayne Applehans, and
00:00:11.535 --> 00:00:14.129
I am a senior product marketing
manager on the cloud and
00:00:14.130 --> 00:00:17.220
enterprise field strategy and
operations team.
00:00:17.221 --> 00:00:19.890
To help our field sellers
learn more about the practical
00:00:19.891 --> 00:00:22.250
application of our
own technology,
00:00:22.251 --> 00:00:26.480
we reached out to Microsoft's IT
team to learn a bit more about
00:00:26.481 --> 00:00:29.740
how the use of SQL Server
2016 R Services
00:00:29.741 --> 00:00:32.650
helped the company improve
the decision making process,
00:00:32.651 --> 00:00:35.850
leveraging its own supply
chain management data.
00:00:35.851 --> 00:00:37.295
Today we have Dave Langer,
00:00:37.296 --> 00:00:40.350
Principal Program Manager
within Microsoft IT, with us.
00:00:40.351 --> 00:00:43.878
And we'll be discussing
Microsoft IT's use of R Services
00:00:43.879 --> 00:00:46.170
to optimize the supply chain.
00:00:46.171 --> 00:00:47.430
Welcome, Dave.
00:00:47.431 --> 00:00:50.090
>> Thanks, Wayne, so
over my past 8 years here at
00:00:50.091 --> 00:00:52.850
Microsoft, I've been absolutely
fascinated by the sheer amount
00:00:52.851 --> 00:00:55.050
of data we have inside
the company, and
00:00:55.051 --> 00:00:57.640
how much data resides
outside of the company, and
00:00:57.641 --> 00:01:00.200
how we can potentially use that
data to make better decisions in
00:01:00.201 --> 00:01:04.230
real time, or make better
predictions about the future.
00:01:04.231 --> 00:01:08.774
In my current role as an IT
manager for the program manager
00:01:08.775 --> 00:01:12.043
team that owns the IT data
platforms that are used to run
00:01:12.044 --> 00:01:14.399
Microsoft's manufacturing
supply chain operations,
00:01:14.400 --> 00:01:17.510
I've been continually fascinated
about how I could work
00:01:17.511 --> 00:01:20.900
against this data anti-pattern
that I see across the company.
00:01:20.901 --> 00:01:22.750
>> I can see that concern,
so tell us,
00:01:22.751 --> 00:01:26.920
how did you get interested
in SQL Server R Services?
00:01:26.921 --> 00:01:27.940
>> Yeah, so that's pretty easy.
00:01:27.941 --> 00:01:30.450
So I have a data
science background, and
00:01:30.451 --> 00:01:31.490
I'm a bit of an R junkie.
00:01:31.491 --> 00:01:34.000
So it's my default language for
data science.
00:01:34.001 --> 00:01:37.003
So when I was at an internal
training conference back in
00:01:37.004 --> 00:01:40.531
January of 2016, I got really
excited when I saw the product
00:01:40.532 --> 00:01:43.473
team talking about all
the investments the company is
00:01:43.474 --> 00:01:45.851
making in R across our
product portfolio.
00:01:45.852 --> 00:01:46.664
In particular,
00:01:46.665 --> 00:01:49.573
I got very excited about R
services in SQL Server 2016.
00:01:49.574 --> 00:01:53.004
And I left inspired to try and
apply that technology to
00:01:53.005 --> 00:01:56.358
a supply chain business problem,
which I was able to
00:01:56.359 --> 00:02:00.337
during the Microsoft companywide
hackathon back in August.
00:02:00.338 --> 00:02:01.253
>> So that's inspiring, Dave.
00:02:01.254 --> 00:02:04.086
So what challenges are you
trying to resolve by
00:02:04.087 --> 00:02:07.825
leveraging SQL server using R
services in the supply chain?
00:02:07.826 --> 00:02:10.280
>> Yeah, so most of what
we try to use data for
00:02:10.281 --> 00:02:12.380
in supply chain is
optimizing operations.
00:02:12.381 --> 00:02:15.581
That's either improving
customer service levels or
00:02:15.582 --> 00:02:16.652
reducing costs.
00:02:16.653 --> 00:02:19.004
So using the data that we
have in our data warehouse
00:02:19.005 --> 00:02:21.692
in SQL Server, for example,
how could we use the power of
00:02:21.693 --> 00:02:23.720
R Services to achieve
some of those goals?
00:02:25.080 --> 00:02:26.305
>> That's very interesting, so
00:02:26.306 --> 00:02:28.242
you weren't 100% sure
what you would find.
00:02:28.243 --> 00:02:31.465
But you had a gut feeling
there was potential insights
00:02:31.466 --> 00:02:34.902
that could improve the business
value and process within
00:02:34.903 --> 00:02:38.351
the supply chain management
efforts within Microsoft?
00:02:38.352 --> 00:02:42.031
>> Yeah, so the moniker of data
science is actually apropos,
00:02:42.032 --> 00:02:45.791
because like a scientist,
when you're working with data,
00:02:45.792 --> 00:02:48.600
you postulate a theory or
hypothesis.
00:02:48.601 --> 00:02:50.460
You have to validate
your assumptions.
00:02:50.461 --> 00:02:52.281
And if everything lines up and
works out,
00:02:52.282 --> 00:02:54.881
then you need to create a model
that actually reflects those
00:02:54.882 --> 00:02:56.661
hypotheses and
theories that you have.
00:02:56.662 --> 00:02:58.320
And that's exactly
what we were doing.
00:02:58.321 --> 00:02:59.720
>> I got it, so
what did you find?
00:02:59.721 --> 00:03:02.360
>> Well, Wayne, what we found
was that the combination of
00:03:02.361 --> 00:03:05.290
SQL Server and
R Services enables a lot of
00:03:05.291 --> 00:03:07.830
really interesting scenarios for
the supply chain.
00:03:07.831 --> 00:03:11.056
So one example is that you can
pull in real-time weather data
00:03:11.057 --> 00:03:13.662
from tweets from
the National Weather Service.
00:03:13.663 --> 00:03:16.671
And then overlay that with your
supply chain operations to see,
00:03:16.672 --> 00:03:17.784
hey, is this tornado or
00:03:17.785 --> 00:03:20.770
is this earthquake gonna
impact my operations?
00:03:20.771 --> 00:03:24.260
Another aspect is R supports
linear programming, which is
00:03:24.261 --> 00:03:27.140
a particular mathematical
technique that's widely used in
00:03:27.141 --> 00:03:31.070
supply chain optimization for
inventory, strategy, logistics,
00:03:31.071 --> 00:03:34.510
cost optimization,
a whole wide range of scenarios.
00:03:34.511 --> 00:03:37.380
Another scenario is that,
oftentimes, a supply chain's
00:03:37.381 --> 00:03:41.270
data warehouse doesn't have
geographic data in it.
00:03:41.271 --> 00:03:42.590
So you have addresses, but
00:03:42.591 --> 00:03:46.800
you don't necessarily have
the longitude and latitude to
00:03:46.801 --> 00:03:49.360
understand exactly where things
are, positionally, in space.
00:03:49.361 --> 00:03:52.740
So you can use R to reach out,
grab that geospatial data, and
00:03:52.741 --> 00:03:54.590
then incorporate that
into your data warehouse.
00:03:54.591 --> 00:03:57.140
So you can have much
more rich analytics
00:03:57.141 --> 00:03:58.400
across a number of scenarios.
00:03:59.510 --> 00:04:01.620
Another option is that
you have text analytics.
00:04:01.621 --> 00:04:04.430
So for example, if you have
00:04:04.431 --> 00:04:06.520
feedback from your customers in
your database, you could say,
00:04:06.521 --> 00:04:09.230
okay, let's do some root
cause analysis on, maybe,
00:04:09.231 --> 00:04:11.870
some of the reasons why they're
returning products in my reverse
00:04:11.871 --> 00:04:13.740
logistic supply chain.
00:04:13.741 --> 00:04:17.848
Another example is that we can
use a broad range of forecasting
00:04:17.849 --> 00:04:20.692
models, and
use them together in a group,
00:04:20.693 --> 00:04:23.777
which is commonly referred
to as an ensemble.
00:04:23.778 --> 00:04:26.262
And what that does is that
allows you to create more
00:04:26.263 --> 00:04:29.342
accurate forecasts, whether
that's demand forecasting or
00:04:29.343 --> 00:04:31.828
supply forecasting,
than you would have with any
00:04:31.829 --> 00:04:33.920
individual model
working in isolation.
00:04:35.270 --> 00:04:38.580
Another scenario that we
envision for using R Services
00:04:38.581 --> 00:04:41.950
for is imagine you have
warehouse, and this warehouse is
00:04:41.951 --> 00:04:44.840
packing product, and it's
shipping it out to customers.
00:04:44.841 --> 00:04:45.920
And you have a daily goal for
00:04:45.921 --> 00:04:48.140
how much product you're
supposed to ship.
00:04:48.141 --> 00:04:50.465
You could implement
a process using R Services,
00:04:50.466 --> 00:04:53.074
where you're taking in
the constant information from
00:04:53.075 --> 00:04:56.078
that warehouse and saying, look,
am I forecasting whether or
00:04:56.079 --> 00:04:58.536
not you're gonna meet
that demand, that target?
00:04:58.537 --> 00:05:01.102
And if you're not, I can alert a
supply chain manager to then go
00:05:01.103 --> 00:05:02.119
talk to the warehouse and
00:05:02.120 --> 00:05:05.560
see what's going on there from
an operational perspective.
00:05:05.561 --> 00:05:07.320
Another scenario, and
this is one that's near and
00:05:07.321 --> 00:05:09.690
dear to our hearts at Microsoft,
as well as, I'm sure,
00:05:09.691 --> 00:05:11.850
a lot of our customers,
is that in the warehouse,
00:05:11.851 --> 00:05:14.760
a very common thing that
you do is you pick product,
00:05:14.761 --> 00:05:16.750
you pack it, and
then you ship it out.
00:05:16.751 --> 00:05:19.450
Now, if you might imagine,
if the things that commonly
00:05:19.451 --> 00:05:22.060
are bought together are closer
together in the warehouse,
00:05:22.061 --> 00:05:23.730
that makes that process
more efficient.
00:05:23.731 --> 00:05:26.600
So you can use association
rule mining, using R Services,
00:05:26.601 --> 00:05:27.450
to find that out.
00:05:27.451 --> 00:05:30.850
What are the products that are
most commonly bought together?
00:05:30.851 --> 00:05:34.470
Another broad range of scenarios
is inventory optimization.
00:05:34.471 --> 00:05:36.220
We talked about linear
programming before, but
00:05:36.221 --> 00:05:38.780
another technique you can use
with R Services is clustering.
00:05:38.781 --> 00:05:41.644
I can go out and I can take
a look at the patterns of demand
00:05:41.645 --> 00:05:44.508
that I have, the patterns of
shipping that I have, and
00:05:44.509 --> 00:05:47.935
start clustering, and say, look,
should I change my inventory
00:05:47.936 --> 00:05:51.488
mix, my inventory strategy based
on the actual behaviors that I'm
00:05:51.489 --> 00:05:53.400
seeing in my running
supply chain?
00:05:53.401 --> 00:05:55.722
Yet another example
is you can build and
00:05:55.723 --> 00:05:57.699
train machine learning models.
00:05:57.700 --> 00:05:58.455
And as you well know,
00:05:58.456 --> 00:06:00.560
machine learning is all
the rage these days.
00:06:00.561 --> 00:06:03.471
So you can build ML models
to try and predict, hey,
00:06:03.472 --> 00:06:07.266
based on customer, and product,
and geography, and channels,
00:06:07.267 --> 00:06:10.476
let's say, what purchases
are likely to be returned?
00:06:10.477 --> 00:06:13.106
And can I understand what
those behaviors are, and
00:06:13.107 --> 00:06:15.994
maybe start having some
reaction to that proactively?
00:06:15.995 --> 00:06:19.430
And lastly, you can imagine,
if you will, if you're a company
00:06:19.431 --> 00:06:22.420
that builds very capital
intensive or very difficult to
00:06:22.421 --> 00:06:25.920
service products that are in the
field, predictive maintenance
00:06:25.921 --> 00:06:28.802
models may be something
that you're interested in.
00:06:28.803 --> 00:06:31.255
So rather than waiting for
something to break down and
00:06:31.256 --> 00:06:33.982
go fix it, you can actually
start using machine learning to
00:06:33.983 --> 00:06:36.815
create a model and say, look,
based on the information I have
00:06:36.816 --> 00:06:39.488
about this product, we should
probably send someone to do
00:06:39.489 --> 00:06:41.640
some proactive maintenance
on that product.
00:06:41.641 --> 00:06:43.137
>> That's really cool, so
00:06:43.138 --> 00:06:46.930
what are you working on to bring
these things into production?
00:06:46.931 --> 00:06:50.550
What's failed,
any general comments?
00:06:50.551 --> 00:06:52.838
>> Yeah, so what we've done, so
00:06:52.839 --> 00:06:56.889
we got a lot of excitement
from our hackathon project.
00:06:56.890 --> 00:07:00.073
And so our business partners
have decided to take a few
00:07:00.074 --> 00:07:01.730
things into production.
00:07:01.731 --> 00:07:04.345
So one of the things they've
taken into production is one of
00:07:04.346 --> 00:07:06.645
the scenarios I mentioned
before, which is, hey,
00:07:06.646 --> 00:07:09.679
I'm gonna grab data about the
weather, earthquakes, tornadoes,
00:07:09.680 --> 00:07:12.294
things that can disrupt the
supply chain in near real time,
00:07:12.295 --> 00:07:13.632
and I'm gonna collect that.
00:07:13.633 --> 00:07:14.360
>> Mm-hm.
00:07:14.361 --> 00:07:15.671
>> I'm also gonna go out and
00:07:15.672 --> 00:07:18.794
actually mine social media in
near real time for other types
00:07:18.795 --> 00:07:21.667
of disruptions that may be
germane to my supply chain,
00:07:21.668 --> 00:07:24.665
which is things like maybe
there's gonna be a strike, or
00:07:24.666 --> 00:07:26.914
maybe there's some
political upheaval,
00:07:26.915 --> 00:07:28.490
that sort of thing as well.
00:07:28.491 --> 00:07:31.489
And then lastly, taking that
data that they're collecting,
00:07:31.490 --> 00:07:34.150
and then mapping it to the
global footprint of the supply
00:07:34.151 --> 00:07:36.188
chain, where our
factories are located,
00:07:36.189 --> 00:07:38.862
where shipping lanes are,
where our product is going.
00:07:38.863 --> 00:07:41.123
And then saying, look,
are there any of these potential
00:07:41.124 --> 00:07:43.551
disruptions that are close to
our supply chain operations?
00:07:43.552 --> 00:07:46.360
>> So
what did you learn from that?
00:07:46.361 --> 00:07:48.938
>> So one of the things we
learned is with the new ArcGIS
00:07:48.939 --> 00:07:52.240
mapping capabilities in
Power BI, when you use R and
00:07:52.241 --> 00:07:55.520
get all that geospatial data
that I talked about in your data
00:07:55.521 --> 00:07:58.780
warehouse, you can create these
visualizations that just pop and
00:07:58.781 --> 00:08:02.080
communicate what's going on in
the supply chain to the supply
00:08:02.081 --> 00:08:04.940
chain managers,
very efficiently.
00:08:04.941 --> 00:08:08.070
The other thing that
we learned was we're
00:08:08.071 --> 00:08:11.520
gonna mine Twitter data, so the
natural inclination is to think,
00:08:11.521 --> 00:08:13.010
well, that's a big data problem.
00:08:13.011 --> 00:08:16.280
And what we found, actually,
was that the Twitter data that
00:08:16.281 --> 00:08:18.610
we were mining for the supply
chain actually wasn't that big.
00:08:18.611 --> 00:08:21.460
And both SQL Server and R
Services scaled to that level of
00:08:21.461 --> 00:08:23.240
data just fine,
we didn't have any problems.
00:08:23.241 --> 00:08:24.010
>> Yeah.
00:08:24.011 --> 00:08:26.353
>> And then lastly,
as Microsoft's first and
00:08:26.354 --> 00:08:29.709
best customer, we learned a ton
about working with a product,
00:08:29.710 --> 00:08:31.750
iterating with it
quickly over time.
00:08:31.751 --> 00:08:33.494
And we collected all
that feedback up and
00:08:33.495 --> 00:08:34.723
gave it to the product team so
00:08:34.724 --> 00:08:37.543
they can make those improvements
so that our customers outside of
00:08:37.544 --> 00:08:39.100
Microsoft can enjoy
the benefits.
00:08:40.430 --> 00:08:41.782
>> That’s a great recap, Dave.
00:08:41.783 --> 00:08:45.350
So what's next for you and
your team, using R Services?
00:08:45.351 --> 00:08:47.450
>> Yeah, so currently, we're
doing another data experiment.
00:08:47.451 --> 00:08:51.210
So we have a hypothesis,
a theory that, for
00:08:51.211 --> 00:08:54.340
online retail deliveries in
North America, there may be
00:08:54.341 --> 00:08:56.960
patterns of behavior, especially
around the holiday, the busy
00:08:56.961 --> 00:09:00.440
holiday season, where we can
potentially apply the clustering
00:09:00.441 --> 00:09:04.640
capabilities of R to our data
and say, look, is there ways to
00:09:04.641 --> 00:09:07.990
optimize the inventory strategy
to do two things, one,
00:09:07.991 --> 00:09:10.950
improve the customer service
levels, and also, reduce cost?
00:09:12.060 --> 00:09:15.467
>> Well, thank you, Dave,
for that very intriguing
00:09:15.468 --> 00:09:19.509
conversation around how IT is
using SQL R Services to improve
00:09:19.510 --> 00:09:23.405
the supply chain management
solution here at Microsoft.
00:09:23.406 --> 00:09:25.620
And we'll see you next time.
00:09:25.621 --> 00:09:27.219
>> Thanks, Wayne.
00:09:27.220 --> 00:09:31.279
[MUSIC]