From 1819ff00b34b0518d9013233dda6455979578f60 Mon Sep 17 00:00:00 2001 From: Jeroen ter Heerdt Date: Fri, 1 Mar 2019 10:44:50 -0800 Subject: [PATCH] Adding readme for rolldice app deploy sample. --- .../app-deploy/RollDice/README.md | 119 ++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 samples/features/sql-big-data-cluster/app-deploy/RollDice/README.md diff --git a/samples/features/sql-big-data-cluster/app-deploy/RollDice/README.md b/samples/features/sql-big-data-cluster/app-deploy/RollDice/README.md new file mode 100644 index 00000000..affc909a --- /dev/null +++ b/samples/features/sql-big-data-cluster/app-deploy/RollDice/README.md @@ -0,0 +1,119 @@ +# Running a R script that returns a data frame in SQL Server big data cluster + +### Contents + +[About this sample](#about-this-sample)
+[Before you begin](#before-you-begin)
+[Run this sample](#run-this-sample)
+[Sample details](#sample-details)
+[Related links](#related-links)
+ + + +## About this sample + +This is a sample [R](https://www.r-project.org/) app, which shows how to run a R script in SQL Server big data cluster. This sample creates an app that simulates the rolling of dice. The code for this sample is in [roll-dice.R](roll-dice.R) The inputs and outputs are shown below. + +### Inputs +|Parameter|Description| +|-|-| +|`x`|The number of dice to roll| + +### Outputs +|Parameter|Description| +|-|-| +|`result`|Data frame containing the results of the dice rolls: `"Blue": [2], "Green": [6], "Red": [1]`| + + + + +## Before you begin + +To run this sample, you need the following prerequisites. + +**Software prerequisites:** + +1. SQL Server big data cluster CTP 2.3 or later. +2. `mssqlctl`. Refer to [installing mssqlctl](https://docs.microsoft.com/en-us/sql/big-data-cluster/deploy-install-mssqlctl?view=sqlallproducts-allversions) document on setting up the `mssqlctl` and connecting to a SQL Server 2019 big data cluster. + + + +## Run this sample + +1. Clone or download this sample on your computer. +2. Log in to the SQL Server big data cluster using the command below using the IP address of the `endpoint-service-proxy` in your cluster. If you are not familiar with `mssqltctl` you can refer to the [documentation](https://docs.microsoft.com/en-us/sql/big-data-cluster/big-data-cluster-create-apps?view=sqlallproducts-allversions) and then return to this sample. + + ```bash + mssqlctl login -e https://:30777 -u -p + ``` +3. Deploy the application by running the following command, specifying the folder where your `spec.yaml` and `roll-dice.R` files are located: + ```bash + mssqlctl app create --spec ./RollDice + ``` +4. Check the deployment by running the following command: + ```bash + mssqlctl app list -n roll-dice -v [version] + ``` + Once the app is listed as `Ready` you can continue to the next step. +5. Test the app by running the following command: + ```bash + mssqlctl app run -n roll-dice -v [version] --input x=[number of dice to roll] + ``` + You should get output like the example for three dice below. The results of the dice rolled are in the `result` data frame: + ```json + { + "changedFiles": [], + "consoleOutput": "", + "errorMessage": "", + "outputFiles": {}, + "outputParameters": { + "result": { + "Blue": [ + 2 + ], + "Green": [ + 6 + ], + "Red": [ + 1 + ] + } + }, + "success": true + } + ``` +6. You can clean up the sample by running the following commands: + ```bash + # delete app + mssqlctl app delete --name roll-dice --version [version] + ``` + + + +## Sample details + +Please refer to [roll-dice.R](roll-dice.R) for the code for this sample. + +### Spec file +Here is the spec file for this application. As you can see the sample uses the `R` runtime and calls the `rollEm` method in the `roll-dice.R` file, accepting an integer input named `x` for the number of dice and providing an data frame named `result` as the output. + +```yaml +name: roll-dice +version: v1 +runtime: R +src: ./roll-dice.R +entrypoint: rollEm +replicas: 1 +poolsize: 1 +inputs: + x: integer +output: + result: data.frame +``` + + + +## Related Links +For more information, see these articles: + +[How to deploy and app on SQL Server 2019 big data cluster (preview)](https://docs.microsoft.com/en-us/sql/big-data-cluster/big-data-cluster-create-apps?view=sqlallproducts-allversions) \ No newline at end of file