From 920feec82558d1447dc4f5e579b180a5673adc2d Mon Sep 17 00:00:00 2001 From: tbedford Date: Wed, 25 Oct 2023 14:29:20 +0100 Subject: [PATCH 1/3] [add] - state management how to --- docs/platform/how-to/state-management.md | 70 ++++++++++++++++++ .../images/how-to/state/state-management.png | Bin 0 -> 93054 bytes mkdocs.yml | 1 + 3 files changed, 71 insertions(+) create mode 100644 docs/platform/how-to/state-management.md create mode 100644 docs/platform/images/how-to/state/state-management.png diff --git a/docs/platform/how-to/state-management.md b/docs/platform/how-to/state-management.md new file mode 100644 index 00000000..6ee0ea0a --- /dev/null +++ b/docs/platform/how-to/state-management.md @@ -0,0 +1,70 @@ +# State management + +When deploying a service it is possible for that service to maintain state between restarts. This can be done by enabling state management for the deployment. Enabling state management creates a storage area that can be used for storage of data and files, and this state is preserved between service restarts. + +## Enabling state management + +When you deploy a service, it is possible to enable state management: + +![state management](../images/how-to/state/state-management.png){width=80%} + +This creates a `state` folder in the service. + +!!! important + + Note that data stored in this area is retained between service restarts and is shared between all replicas of the service, but it is not available globally to other services. + +## Storing files in the state folder + +You can use this `state` folder as a place to download and store model and other files. + +!!! note + + While the `state` folder is not visible in the UI, it is still available for use. + +For example, the following code downloads a model file to the `state` folder. It subsequently loads the model file from the `state` folder when needed: + +``` python +import requests + +model = requests.get('https://acme.com/models/model1.pkl') +f = open('./state/model1.pkl', 'w') +f.write(model) +f.close() +... +f = open('./state/model1.pkl', 'r') +... +``` + +The model can be modified at run time, and its state is preserved between service restarts. + +!!! note + + There is a 100GB storage limit for the state management storage area. + +## Using state from Quix Streams + +If you have enabled state management for a service, then you can also use the [state management features](https://quix.io/docs/client-library/state-management.html) of Quix Streams in that service. This enables you to store and retrieve data in various formats, and retain that state between service restarts. See the [documentation](https://quix.io/docs/client-library/state-management.html) for further details. + +## Running Quix Streams locally + +If you are running Quix Streams locally, rather than using it as part of a deployed service in the cloud, then the `state` folder is created automatically for you when you use state management features of the library. For example, if you ran the following code locally: + +``` python +from quixstreams import LocalFileStorage + +storage = LocalFileStorage() +storage.clear() + +storage.set("KEY1", 12.51) +storage.set("KEY2", "str") +storage.set("KEY3", True) +storage.set("KEY4", False) +``` + +Then you would see the `state` folder and its contents: + +``` +$ ls state +key1 key2 key3 key4 +``` diff --git a/docs/platform/images/how-to/state/state-management.png b/docs/platform/images/how-to/state/state-management.png new file mode 100644 index 0000000000000000000000000000000000000000..98744cfd67aa6f4d50fc1796949b05303eb3a963 GIT binary patch literal 93054 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 literal 0 HcmV?d00001 diff --git a/mkdocs.yml b/mkdocs.yml index ef93fdf5..fa335a47 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -45,6 +45,7 @@ nav: - 'Add environment variables': 'platform/how-to/environment-variables.md' - 'Testing using Quix data store': 'platform/how-to/testing-data-store.md' - 'Configure deployments': 'platform/how-to/yaml-variables.md' + - 'State management': 'platform/how-to/state-management.md' - 'Tutorials': - 'platform/tutorials/index.md' - 'Computer vision': From b8ca1fafe5b94197269439d345e940214080729b Mon Sep 17 00:00:00 2001 From: tbedford Date: Wed, 25 Oct 2023 16:42:53 +0100 Subject: [PATCH 2/3] [fix] - example code --- docs/platform/how-to/state-management.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/platform/how-to/state-management.md b/docs/platform/how-to/state-management.md index 6ee0ea0a..8da5744e 100644 --- a/docs/platform/how-to/state-management.md +++ b/docs/platform/how-to/state-management.md @@ -27,12 +27,12 @@ For example, the following code downloads a model file to the `state` folder. It ``` python import requests -model = requests.get('https://acme.com/models/model1.pkl') -f = open('./state/model1.pkl', 'w') +model = requests.get('https://acme.com/models/model1.dat') +f = open('./state/model1.dat', 'wb') f.write(model) f.close() ... -f = open('./state/model1.pkl', 'r') +f = open('./state/model1.dat', 'rb') ... ``` From af8c2d7367735ee0d5e27237972a1c3054e37593 Mon Sep 17 00:00:00 2001 From: tbedford Date: Thu, 26 Oct 2023 14:19:39 +0100 Subject: [PATCH 3/3] [fix] - reword --- docs/platform/how-to/state-management.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/platform/how-to/state-management.md b/docs/platform/how-to/state-management.md index 8da5744e..b70573ef 100644 --- a/docs/platform/how-to/state-management.md +++ b/docs/platform/how-to/state-management.md @@ -1,14 +1,14 @@ # State management -When deploying a service it is possible for that service to maintain state between restarts. This can be done by enabling state management for the deployment. Enabling state management creates a storage area that can be used for storage of data and files, and this state is preserved between service restarts. +When deploying a service, enabling state management enables the service to maintain its state between restarts by creating a storage area for data and files, ensuring persistence across service restarts. ## Enabling state management -When you deploy a service, it is possible to enable state management: +Enable state management during service deployment if your code relies on state or expects files to persist across restarts: ![state management](../images/how-to/state/state-management.png){width=80%} -This creates a `state` folder in the service. +Enabling state creates a `state` folder that can be accessed by your code. !!! important