>> Hi, this is Steve Michelotti
from Azure Government Engineering.
I'm joined here today by Zach Kramer,
Lead of Azure Government Engineering.
We decided that what we wanted to
do for this next one is to have
a conversation about the Data
Science Virtual Machine on Azure GOV.
You and I have been sitting
here and having
various side conversations,
and we've thought to ourselves,
there's a lot you can
do with that DSVM.
>> No, for sure. So this is
a cool graphic about
all the things you can
do with Data Science VM.
There's lots of different tool,
languages, and things like that.
When you think of
the Data Science VM,
you obviously think of Data Science.
So there are tools to
do machine learning,
training of models,
different things like that,
and we'll take a look at that.
It really gives you a lot of
opportunity and flexibility
about what you can do and when
we're talking about this,
there is really a top 10 list of
things you can do with
the Data Science VM,
and so they indeed publish this.
It's on their docs
and you can see here.
There's lots of things about
how you can use our studio,
Jupiter Notebooks and
things like this.
I think you've done that
before Steve, right?
>> Yeah.
>> Yeah. So we'll
take a look at that,
but when we're really
talking about this,
I think there is more that you
can do with it beyond the top 10.
One of the things that
we talked about is of
course for people in government.
There are data scientists
out there that do
a lot of things whether
it's statistics,
whether it's planning, modeling of
ships in the Department of Defense or
veterans health care or
different things like that.
There's a lot of Data Science work.
But, there's lots of interesting
things you can do with the,
from an IT Pro or an IT Admin.
What do you think about that?
>> I think that's
a hugely important point here.
I mean, we talk about
instances like from
an IT Admin's standpoint.
People ask for
Cloud Shell quite often
because they can't install
tools on their machine.
But these tools are already
installed on the
Data Science Virtual Machine.
And as we look at some of
these other roles like developers,
for example, we do
Azure Government HackFest events.
Well, the Data Science
Virtual Machine
provides a perfect environment,
even if you're not going
to do Data Science,
provides a great environment
for developers.
>> Yeah, and we've seen
this also even with
Database Administrators or anyone who
wants to get started quickly
to be able to have Azure
tools at their disposal,
to be able to have
development environments,
whether it's a Linux or
a Windows environment
and to be able to get
started with using Azure
and using Azure Government.
So I think we'll take a look
at a few of these scenarios
and why don't we start
with the Data Science one.
>> All right. Sounds good.
Okay. So here I am in
my Azure Government
portal and even before we
start showing the
Data Science Virtual Machine,
we should probably
do demo number zero,
which is actually the experience
of provisioning it.
There's a few different ways
to do it but the easiest way
I found is just to click
"Create a resource",
and if you just search for DSVM
or even just the Data Science,
I'll try to spell it correctly.
We'll see the results come up.
A couple of interesting points here.
Right at the beginning,
you're going to see that we
have a couple of
different flavors of it.
If you want Windows?
Great, choose this one.
If you want Linux,
okay, that's also a choice.
So that's one key takeaway.
Right from the very beginning
is you can select
what platform you want your Data
Science Virtual Machine to be on.
So I'm just going to click in
here and we'll do govdsvm,
and I've already asked for Ubuntu.
We'll just give it a username here,
and I'm just going to put
a quick and dirty password in.
Let's see if I can actually click
the same password,
the same way twice.
Looks like I did. I can
pick my subscription,
I can create a new resource group,
dvsmrg, and we're good to go.
I've selected
my location as Virginia.
Now, the next takeaway here is I can
select my size of what
I want my DSVM to be.
So I might just be a developer,
a lowly developer that wants to do
some testing and I can't
spend too much money.
I can make that choice here.
I can also be a Data Scientist that,
I need a lot of computing power.
So I can flip right over here to GPU,
and we flipped all disks and
you can see that we have
the NV series and the NC series.
So a lot of choice for,
do you want Windows?
Do you want Linux? Do you want CPU?
Do you want GPU? A lot
of flexibility in
how that Data Science Virtual
Machine is provisioned.
One other thing that I've seen
is that a lot of customers,
and we'll talk a little bit
about this more in a minute,
but when I need to install
a tool on my desktop,
or I need to do any of
these things that takes a lot
of work to get through
the right approval board,
and you get the right version
and to do all of those things.
Having those available is great.
But, it doesn't necessarily
grant you access to things on
your network or things like this.
So this is a great playground,
a nice sandbox, but you would still,
when you want to finally
incorporate it or bring it
into some sort of production
or data access scenario,
you c would then could use
your express route connections,
could mount under VNets
and do things like that
to enable yourself to have
access in a secure manner.
So really to me, it's
the best of both worlds,
where it's giving you a sandbox
that you can play in,
that you can do a lot
of work, you can learn,
you can refine skills,
and do that unfettered.
Then, be able to bring that into
your secure and compliant
environment as you go forward.
>> Exactly.
>> Exactly. Okay. All right
so we know this takes a couple
of minutes to provision.
So I'm going to go into my Martha
Stewart quick bake oven here,
and I'm just going to bring up
a DSVM that I've already provisioned.
Now, this particular instance
that I'm in right now is
an Ubuntu machine and I actually
have provisioned this on GPU.
I've started the Jupiter Notebook
that's just running
locally on the machine.
Right off the back, you see examples
of some frameworks that
come pre-installed.
So I can click into for
example this folder for
Deep Learning Frameworks
and I can see Tensorflow,
CNTK, Caffe, and I even created
my own folder here for Keras,
and I can see some of these
notebooks I already have created.
Now, what I have right here as
a Keras notebook that's
using TensorFlow,
and it's using the MNIST
handwriting sample,
which is like the Hello World for
Data Science Computer Vision,
and you can see some of
these examples here.
I can load the data
right in and you can see
right here that this
is 60,000 images,
28 by 28 pixels.
I'm just going to
display the first few
so we can prove to people
that we have it here.
There's five, there's
zero, and there's four.
So, five, zero, four.
Then, we can see
a sampling of the label,
so sure enough five, zero,
four and this is
a very straightforward notebook
where I can come in here,
and I can see the shape of my data.
Maybe I want 10,000 of
the 60,000 images to meet
my validation set versus my training
set and that sort of thing.
To build a deep learning tool,
but here it's really come down
to these couple of lines of
code here where I have a couple
of layers and my network.
I can specify my
activation function Relu,
Softmax, whatever the case may be.
I can say what metrics I care about,
which in this case is accuracy,
and I can do a little bit
of pre-processing to
reshape my array here.
Now, down here, I come in
this line of code for fit.
This is where we actually
train the model.
So what I'm going to do here is I'm
actually going to run
this entire notebook.
I'm going to come up to "Cell"
and I'll say "Run all".
One interesting thing you see is,
when you train this particular
well-established model on CPU,
it takes a couple of minutes to run.
But because I have this
deployed on a GPU machine,
you can see it's running
right there and I did
five iterations and it
would finish in seconds.
Instead of waiting for
two or three minutes,
it actually finished in
just a few seconds again.
Because I am running on GPU
for this particular instance,
I can model my results,
I can see the accuracy and
loss is quite high over
those five iterations.
At the end, I can see
my accuracy was 98 percent.
So this is just a very quick demo to
show how we can do Deep Learning
with computer vision model
on the Data Science
Virtual Machine using
established frameworks like
TensorFlow running on GPU.
>> Yeah, and one other
thing there is that this is
obviously the purpose of the
Data Science VM and so it's great.
You've covered a lot of
different frameworks,
a lot of different tools,
and a lot of different things
that you would have to
install and have access to,
and so to be able to just
spend that VM up, up you go.
Again, having been in a lot
of government entities,
whether it's state
local, or it's federal,
or different things like that,
having to go through and say,
I need to deploy this framework.
I now need to deploy this set
of tools just to begin
playing with and seeing what you can
create and what you can come up with.
This gives you
an opportunity to really
accelerate that and have that
very quickly at your disposal,
and it opens up a lot
of opportunities.
>> Absolutely.
>> So really is a very cool thing.
>> Some of these tools that
comes pre-installed are
not trivial to install yourself.
So the fact that it comes pre-loaded,
already installed, huge time-saver.
>> Yeah, and it doesn't
necessarily mean that you have
to install them all
on your workstations.
You could also as we said before,
take this virtual machine,
add it to your VNets,
make it accessible in a way
that you want for it to be able
to be able to look at
production data or touch that.
You can even move it inside
of your network boundary.
>> Okay. So that was
just a quick look
at one bit of functionality
for data scientists.
Let's go to our next example which is
what it might look like
for an IT Pro or Admin.
>> Okay. Great. If we're
looking at the IT Admin,
they may not be
pulling up TensorFlow,
and Keras, and doing all that stuff.
But, what I have here
is a Windows DSVM,
the one you created
created, the same way you
looked at creating the Linux VM.
Basically, all I've done is I
have installed nothing on this.
This is Vanilla. This
is out of the box.
I didn't have to install anything.
So we're going do
a couple of quick things.
You mentioned before Steve,
about being able to access
the Cloud Shell and being able to do
command line configurations
basically of
Azure without having
to install tooling.
So the Data Science VM gives you
a great quick way to do this.
If you want to begin playing
around with what are
some scripts going to look like?
How am I going to do my automations?
Having been in these
environments and done things,
you're always tinkering a
bit trying to figure out
the best flow and best thing.
So we bring this up.
First thing I'm going to do
is I'm just going to type
AZ to open up the CLI.
When we look at this, we're
going to see quickly,
there's our Azure command-line
and have to install an SDK.
I didn't have to do
anything, and so off we go.
Now, we're going to connect
to Azure Government.
We're going to do az Cloud set.
Name AzureUSgovernment.
Okay. Now that we are setting
our environment to connect
to the Azure Government,
then we're going to do AZ log in.
It's going to pop up and ask
me for my signing in here.
So we're going to sign
in with my account.
It's going ask me for my password.
Okay. All good.
We can go ahead and
close this window out,
and now we're logged in.
Now, we can say AZ account locations.
As we look at this, we'll
see these are, Whoops!
I typed that one wrong,
but it actually gave me a nice
little tool here where it says,
"Hey maybe you meant this."
So now if we do AZ
account list-locations,
and I can even say output table.
It's going to give me
a nicely formatted table
of all the locations.
This will show that I'm
connected to Azure Government.
You can see there are six Azure
Government regions, and off we go.
I always feel obligated
here to tell people,
we do not publish
the exact longitude and latitude.
These are not real coordinates,
but it does drive home the point
that we're using the same Azure CLI,
that normal Azure
commercial users use.
>> Yeah.
>> Now, as I look at
what's on this VM,
I've also got PowerShell.
So I can do a quick
login-Azurermaccount-environment.
You got to do it to earn it.
I can login here. You'll
notice the same thing.
It's asking me for my account.
Type in my password,
and now I'm logged in.
So I can say Azure RM location and
similar to what we saw in
the CLI I'm now connected
in and this from here
I could do any number
of PowerShell commands or anything
I want to do to be able to do
environments and even
in pre-installed.
I've got the ISE environment
if I want to be able to debug
my PowerShell or things like that
and I've even got Visual Studio.
So one of the first time very
early on when I was
working with a customer,
they asked for some help
and we said, "Hey,
we'll help you move some
websites," and so then we said,
"You needed to copy some files. "
So they'd never done any scripting
or never done in the SDK work.
So we said, "Hey, I need
to install Visual Studio."
So immediately, they said,
"Well, I have to
install Visual Studio.
I have to go get this approval
from these people to then
whitelist it to enable
it to be installed on my
workstation," and our work
completely stopped.
That was going to take two days.
There wasn't a whole lot
else we could do at
that point so we took a break,
had to come back another time
once that was installed.
Had we had this at the time we
would have enabled to basically pop
in I could have showed them
everything and how to run it.
Then once that approval was done,
he could have brought that code
in and been able to execute it.
So this is where the power really is
that I can get up
and running quickly.
I can do the things I need to get
unblocked and be able
to move forward.
So even for an IT admin,
there's a whole lot
of power baked into
the data science VM for you to
use inside of your
government environment.
>> I think one of
the key takeaway here is that you
can do what environment
you are comfortable with.
So if you prefer the Azure CLI
or if you prefer PowerShell,
great it's your choice.
You want to use
straight command line or you
want to use PowerShell ISE,
great it's your choice because
all of these tools are available.
It's really the choice is yours.
>> Yeah, because I even
think about when I have
to set up a new laptop
and you're like,
bring down all the
tools have everything
configured I just loaded those up,
I actually provisioned it on
an airplane I was able to start
blogging it. So it's great. Yes.
>> Okay. Now, you've been
talking about the IT Pro.
>> Yeah.
>> Although, I just see that you
just launched Visual Studio.
So that's actually
a good segue for us to talk
about our third persona
here which is a developer.
>> Yeah.
>> Okay. So here I am back in my
data science virtual machine.
So we're going to do a quick demo
from a developer perspective.
I'm on an Ubuntu machine and
we're going to build a quick
Node.js application and then
we'll deploy it to Azure.
So what I'm going to do
here is I'm going to create
a directory called node
demo app and let's see
the end of that directory.
I'm going to create,
I'll just run Git nit to
initialize a Git repository
that's local on this machine.
Now, let's open
this directory in VS Code.
VS Code, which we all now love,
Microsoft flagship
open source editor.
Let's come in here and
let's add a new file,
of course, it's Node.js.
So we're obligated
to called server.js.
What I'm going to do here is
let's just make this window
a little bit bigger here.
I'm going to paste in
a snippet of code.
Okay. So now I've got
some code in here,
Hello Azure government
DSVM from Node.js.
Okay. This is good enough for me.
Now, you-all saw me run a couple
of lines on the terminal,
I'm actually running some more lines
on the terminal but I'm
going to do the terminal
from within VS Code but this
is still a bash shell here.
So we're just going to say Git add.
and now, we'll say Git commit,
and we'll just give it
a comment "initial check-in".
So notice the Git client was
already installed on this DSVM.
So I've committed it
locally but now I want
to push it to a remote
repository somewhere.
So here I am in my Azure government
portal and I already
have this blank
node-gov-app deployed.
You can see the URL is right here.
Got node-gov-appazurewebsites.us
and just
to prove it to you,
there it is right there.
Let's refresh. You can see this is
the blank blue screen that we have.
This is where we want to deploy.
Now, notice that this
has a Git clone URL,
which we can copy to our clipboard
here. Now, we come back.
We can say Git add
remote Azure and we
paste in that URL here
and we've added a remote.
Oh and I can see I just
made a mistake right there.
I mix up my words.
So let's fix that real quick.
Instead of Git add remote,
it's Git remote add.
Let's make sure we spell it right.
We'll call it Azure and we'll
paste that right in there.
Now, I think it's going to be
happier with me this time.
Okay. Cool. Now, we'll just
simply run git push Azure master.
It going to prompt
me for my password.
We're just seeing example of
automatic functionality
Azure government
where it hasn't even
run the Azure CLI.
I'm just running
Git commands but I'm pushing
this up to Azure and
it's detecting this
as a Node.js app and
it's actually doing
a CI/CD pipeline where we're
doing continuous deployment.
So let's check that out real quick.
Let's go and refresh
this blue screen that we just saw.
What we can see as sure enough we've
deployed this node app
to Azure government,
and just to make sure we're
proving this to everyone,
let's come in here
and say version two.
Now, instead of using
the command line
inside of Visual Studio code,
we'll just use
integrated functionality.
So we'll say, "Change message,"
and we'll commit it locally.
Then we will once again say,
"Push to Azure," which we
previously did on the command line.
It's going to prompt
me for my password
one more time and it's going
to run the same process.
So again, this VS Code is installed.,
Git Client is installed,
the Azure CLI is installed
and because all of
these things are installed,
you can see how quickly
and easily it is for me
to have a development process
here where I can check in
code and have a CI/CD
pipeline deploy up to
Azure and come in here
and refresh and see,
"Yep, version two just got
deploy to Azure government,"
which we can see right here .US
this is websites running
in Azure government.
So just another quick example of
the type of development
tools that are
available on the DSVM
for the developers.
>> Yeah, that was really cool to see
the developer stuff
but let's go back.
We talked about one other persona,
which was the database administrator.
So on here, the first
thing you can see
is from even a SQL
Server perspective.
I've got SQL Server Management
Studio installed so
I can connect to databases
and do any of that work.
But what's actually a little
more interesting is that I have
other tools like RStudio
installed so that I could
connect in and begin to
run R Code whether it's on
SQL or in other places.
I have, as you said, our
cross-platform editor in VS Code.
Then, I want to show
just one that was fun.
So every month the the Power BI team
provides an update to
Power BI Desktop and they
publish out a PBIX file with
the latest samples that highlight
all the new features that they
just did in the latest release.
Again, in certain environments
if I want to get
that latest release down,
I may have to get something
approved to get it
installed on my desktop
but I want to be able to
play with that and experience
those new features and see if
they actually meet my needs
for what I'm looking to do.
So here on GitHub,
we have the Power BI samples.
You can see here they
have each month,
there's a 2019 one.
So we can actually grab
the March 2019 one,
I can download it here.
You'll see again, I haven't
installed anything,
that install Power BI
Studio at desktop.
It says do you want to go and
open with it from Firefox?
>> So it's smart enough to already
associate that application
with that file?
>> Off we go. So we
say we're going to go
ahead and download and run.
It launches Power BI Desktop.
As you see it initializing the model
with the PBIX file and here we go.
I've got interactive maps.
I've got charts.
I've got graphs I can
begin drilling into
any of these things like click and
interact with the data
and begin exploring
the features that
they would talk about
in their blog or doing
anything like that.
So it's really cool to see how
from quickly I can get
to running functionality
in ways that might not have
been available to me at
other times if I had to go get
sign off and do things like that.
>> Yeah, absolutely.
Yeah. So as we look at
the Data Science Virtual Machine
from a higher level.
Certainly, it's really good at
data science and all these tools
you have installed.
But as we think about it and
as we talked to our customers,
it's really a lot more than
just a tool for data science.
We could call it the IT Pro
or Admin Virtual Machine or
the Azure Developer
Virtual Machine or
the Azure Database
Guru Virtual Machine.
It's really has
something for everyone.
>> Yeah, and all those capabilities
allowing you to get up
and running quickly.
Part of the promise of Cloud
Computing and all of these things
are being able to get up and running
quickly but you still
have to learn things.
You have to be able to try them out.
You have to be able
to experience them.
So being able to get in
do that quickly is key to
being able to unlock
the power that we're using
here with Azure government.
>> Definitely. Okay. This
has been Steve Michelotti
with Zach Kramer of
Azure Government Engineering,
talking about the
Data Science Virtual Machine
on Azure Government.
Thanks for watching.
