voice.suttacentral.net
About Voice

This document describes the long term strategy for Voice storage.

The Problem

Voice uses up a lot of disk space for caches that improve overall performance and reduce system costs:

Of these, the sound caches are by far the largest. Sound caches are broken out by:

For example, the Pali Digha Nikaya spoken by Aditi would be stored in:

This combination of four attributes organizes sound caches in a way that allows each cache to address a specific translation of a Nikaya for a voice. This organization is not space optimal since the same sound file will occur in multiple Nikaya caches for the same audio rendering of common phrases such as "Why is that?" However, this slight disadvantage is far outweighed by the utility of modularity that matches users needs.

The problem these sound caches create is lack of disk storage. Amazon AWS EC2 T2 instances are allotted 4GB of disk storage extensible to 30GB with additional fees. There are at least two solutions to the sound cache problem:

  1. Increase disk storage This is a medium term solution that should handle four Nikayas and the Vinaya for English as well as perhaps one other language.
  2. Use cloud storage Using cloud storage frees up the burden on server disk storage with some increased latency. Additionally, cloud storage is billed by either capacity and/or transfer rate.

Increase Disk Storage

AWS EC2 T2 instances can have at most 30GB of storage. Increasing disk storage makes sense for the short and medium term but not for the long-term.

Cloud Storage

Amazon provides cloud storage via S3. Fortunately, cloud storage is a commodity provided by other vendors via supporting the S3 API on their own servers. Current minimum costs are for 1TB at up to USD240 annually.