General questions

What are the main EdgeKV features?

EdgeKV product features include:

  • Key-Value database. Stores data in string or JSON format.
  • JavaScript helper library. Abstracts CRUD data operations on EdgeKV databases from inside EdgeWorkers code.
  • Replicated storage. Ensures high availability of stored data by replicating it across multiple geographic locations based on the configured geoLocation of each namespace.
  • Administrative API. Enables control of EdgeKV database functions outside EdgeWorkers code.
  • Tokenized access. Enforces access controls to EdgeKV databases.

What are the prerequisites for EdgeKV?

The primary prerequisite for EdgeKV is the EdgeWorkers Dynamic Compute product on contract. EdgeWorkers itself requires an underlying ​Akamai​ delivery product. Refer to the EdgeWorkers limitations section for a complete list of supported delivery products.

How do I gain access to EdgeKV?

If you're an ​Akamai​ customer interested in participating in the EdgeKV program, you can use the Marketplace app store to provision EdgeKV, or speak with your ​Akamai​ account representative. If you're not a current ​Akamai​ customer, submit a request using this form.

Does EdgeKV use a strong or eventual consistency model?

EdgeKV uses an eventual consistency model to achieve high availability.

When I write a value, why doesn't it show up immediately?

EdgeKV is an eventually consistent system. This means that there's a period of time (called the “inconsistency window”) when a write operation must propagate across the network to update that object. Before a read operation can be consistently completed against that object, this window of time must expire. This period of time is 10 seconds or less in the majority of cases.

How do I create a group?

Groups can only be created in tandem with the creation of an item to store in that group. They cannot be directly created. A group is automatically created for you if it doesn't already exist when using an API call or a CLI command.

How is data stored in EdgeKV?

EdgeKV stores data as unstructured text objects that are not strongly typed. Please specify the data return format using the getText() or getJSON() library helper method. ​Akamai​ automatically transforms text into a JSON object.

Can I delete a namespace?

Currently you cannot delete a namespace via the API or CLI. In the future this functionality will be available with some safeguards to avoid accidental deletion. Until then, you can configure the retention period to automatically handle the deletion of data that is not updated within the retention period. To immediately delete a namespace contact ​Akamai​ to perform the deletion on your behalf. For example, you might require an immediate deletion if you're about to reach the limit on the number of namespaces per account. Please note that this deletion is permanent and irreversible once completed.

If I set an infinite retention period, is it durable over time, or do I need to refresh it periodically?

Indefinite retention means that data will persist until it is explicitly deleted.


Did this page help you?