# Simulating a persistent backend

### CSV Data sources

You can upload up to 10 CSV files as data sources when editing your simulation from the Simulation tab.

This is configured at the simulation level, and the ability to store and retrieve tabular data within this data store is scoped at the service instance level.

You can both query data from a CSV data source as well as manipulate data within a data source by adding to it and deleting from it. Hoverfly supports a number of templating methods for simple read, update and delete functions. In addition Hoverfly supports a templating function that allows simple SQL like commands for SELECT, UPDATE and DELETE.

This is only available to enterprise customers.

You can read about this approach [here](/create-simulations/using-data-sources-in-simulations.md)

###

### Journal Templating

Hoverfly Cloud has the ability to retrieve from memory any past request that has been indexed with a key you provide, and then retrieve any part of that request or response for processing in your current response.

This is configured at the service instance level, and the ability to store and retrieve historical requests and responses is scoped at the service instance level.

This ability to look up in history, is one of the ways Hoverfly supports the mocking of a persistent back-end service. This is only available to enterprise customers.

You can read about this approach [here](/work-with-services/configuring-journal-indexing.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cloud.hoverfly.io/create-simulations/using-templating-in-simulations/simulating-a-persistent-backend.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
