así que sé que esto es una pregunta común pero simplemente no parece haber ningún buenas respuestas para ella.¿Cómo elimino/cuento objetos en un cubo s3?
Tengo un cubo con pegotes (no tengo idea de cuántos) número de archivos en ellos. Todos están dentro de 2k por pieza.
1) ¿Cómo averiguo cuántos de estos archivos tengo SIN el listado ellos? He utilizado el s3cmd.rb, AWS/s3, y esas cosas jets3t y lo mejor que puedo encontrar es un comando para contar los primeros 1000 registros (en realidad llevar a cabo llega a ella).
He estado usando el applet de jets3t porque es realmente agradable trabajar con él, pero incluso eso no puedo enumerar todos mis objetos porque me quedo sin espacio. (Presumiblemente CAUSA Es peforming entra en contacto con todos ellos y mantenerlos en la memoria)
2) ¿Cómo puedo eliminar sólo un cubo? Lo mejor que he visto es un bucle de eliminación en paralelo y eso tiene problemas porque a veces intenta eliminar el mismo archivo. Esto es lo que hacen todos los comandos 'deleteall' que he encontrado.
Qué hacen ustedes que han hecho alarde de alojamiento millones de imágenes/txts ?? ¿Qué sucede cuando quieres eliminarlo?
3) Por último, ¿hay respuestas alternativas a esto? Todos estos archivos son archivos txt/xml, así que ni siquiera estoy seguro de que S3 sea una preocupación, ¿tal vez debería mover esto a una base de datos de documentos?
Lo que se reduce a esto es que amazon S3 API simplemente está perdiendo 2 operaciones muy importantes: COUNT y DEL_BUCKET. (en realidad hay un comando de eliminación de cubos, pero solo funciona cuando el contenedor está vacío). Si a alguien se le ocurre un método que no apetece para hacer estas dos operaciones, con mucho gusto dejaría muchas recompensas.
ACTUALIZACIÓN
Sólo para responder a algunas preguntas. La razón por la que pregunto esto es por el año pasado estuve almacenando cientos de miles, más como millones de documentos 2k txt y xml. La última vez, hace un par de meses, quise borrar el cubo que literalmente llevó DAYS porque el cubo debe estar vacío antes de poder eliminarlo. Esto fue un dolor de cabeza. Temo tener que hacer esto de nuevo sin el apoyo de la API.
ACTUALIZACIÓN
este oscila la casa!
http://github.com/SFEley/s3nuke/
I rm'd un buen par de conciertos por valor de archivos 1-2K en cuestión de minutos.
incluso enumerar las llaves en 1000 veces o lo que sea que fue el número - eso llevó una eternidad - más de una tarde y finalmente lo maté después de que me aburrí y noté que mi montón estaba demasiado lleno. – eyberg
No creo que haya una llamada API para obtener el número de elementos. Probablemente haya utilizado una herramienta que también obtiene el contenido de los archivos, por eso tardó tanto. Solo use Fiddler o alguna otra herramienta para enviar la solicitud de canasta GET (vea el enlace REST API en mi respuesta). No debería tomar mucho tiempo recuperar el xml. Me temo que no tengo un cubo tan grande para probarlo yo mismo. – kgiannakakis