Amazon S3: un servicio bueno, bonito y barato pero nada práctico.

Recientemente compré (y luego cancelé) una cuenta de Amazon Simple Storage Service (Amazon S3). Un espacio de almacenamiento virtual, digámosle un disco duro, a un precio muy competitivo.

Con S3, pagas tan sólo lo que usas. En dos conceptos diferentes: por espacio que consumes al mes, y por peticiones que recibe el servidor.

Para hacernos una rápida idea de los precios, si tenemos que almacenar unos 10GB nos costarían 1,5$ al mes. Luego, la transferencia de datos a parte, que cuesta 0,01$ por escribir o listar 1000 objetos (operaciones PUT/LIST) y otro céntimo de dólar por descargar (GET) 10.000 objetos. No se cobra por borrar. Vaya, que pagas más de la comisión del banco por cambio de moneda que lo que vas a gastar haciendo copias de seguridad de tus ficheros

Básicamente este servicio te permite:

Amazon S3 tiene realmente un precio muy competente, pero no está todavía preparado para el usuario final (ni creo que lo prentedan por ahora)

Aunque hay gente que se ha espabilado y han salido diversas aplicaciones que te permiten interactuar con el servicio, en mi opinión Amazon debería proporcionar una interfaz WEB bajo la cual se pudieran gestionar los ficheros, cambiar permisos, etc... Sobretodo el tema referente al cambiar permisos, decidir cuales son públicos y cuales no, ya que hay que ser un poco freaky para organizar todo esto :(

Recursos para gestionar S3

La aplicación que más me ha gustado mientras he tenido la cuenta ha sido JungleDisk, que te permite montar Amazon S3 como una unidad de disco utilizando WebDAV: tanto en Mac, Windows como en Linux (este último no lo llegué a probar), ahi van un par de pantallazos de la versión Windows mientras lo usaba:

Con JungleDisk puedes arrastrar los ficheros a la unidad y se suben automáticamente, como si fuera otra unidad de red más. Los cambios parecen instantáneos pero lo que realmente sucede es que JungleDisk pone en una cola los ficheros y los va subiendo poco a poco, a velocidad real de red. Si algo tiene muy bueno es que cachea los listados y tu cuenta no sube de precio por hacer LIST innecesariamente y que también tiene una versión USB en 8MB que funciona en linux, win y mac a la vez, muy interesante.

También hay otros scripts interesantes en ruby, python y muchisimas utilidades command-line que encontrarás fácilmente por la red. Asimismo. también existe una API interesante para PHP llamada PHP-AWS que descargué (checkout subversion) y utilizé para programar una sencilla interfaz web (nada que enseñar). También hay APIs disponibles para otros lenguajes.

En cuanto a la generación de código REST y SOAP para utilizar Amazon S3 en su pleno potencial no te queda más remedio que darle a la manija y ponerte las pilas. Una ayudita para generar código la tienes en el AWS Zone

Más recursos en el blog de Jeremy Zawodny

Inconvenientes de S3 y por qué he dejado de usarlo (por ahora)

Bueno, habrás visto que de usuario final nada, que uno tiene que poner mucho de su parte si quiere sacarle partido a la cuenta. A parte de eso:

Amazon S3 está muy bien para complementar el almacenamiento de las webs de tus clientes, pero para hacer backups, la red no da tanto de sí. Siempre va a ser mucho más rápido hacerlo en local. En cuanto al usuario i final y guardar mis documentos online, si te conformas con arrastrar y soltar, y depender de JungleDisk por el resto de tus días, quizá tampoco está mal. Eso sí, para guardar Gigas de información.... ármate de paciencia.

Si como yo, lo quieres probar, a mi la broma me ha costado 1.13? :)