Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Hate organising your photos? Try it with 5 tera...

Hate organising your photos? Try it with 5 terabytes

Avatar for Arto Liukkonen

Arto Liukkonen

December 06, 2019

More Decks by Arto Liukkonen

Other Decks in Programming

Transcript

  1. ARTO LIUKKONEN Full-stack developer Serverless (AWS) + ReactJS for ~5

    years Live in Jyväskylä, Finland Work at Nordcloud (recruiting in 10 countries) “
  2. BUSINESS REQUIREMENTS • Easy to use • Cheap ◦ 10-20€/month

    • Durable storage • Photo browser “
  3. No thumbnails from RAWs Galleries are hard to browse Not

    magical enough 🦄 ...but first, that 5TB RAW backup “
  4. AWS S3 Glacier Deep Archive + Cheap + Unlimited storage

    - Retrieval price 0.02€/Gb - Retrieval time +12 hours “
  5. Two ways to Glacier - Glacier Vault • aws glacier

    create-vault • Usage through Glacier API • Vault lock can prevent object delete even from root user “
  6. Two ways to Glacier - S3 API • aws s3

    cp --storage-class=GLACIER ... • Usage through S3 API • Can also move using Lifecycle rules • ...more of this later “
  7. Magic Copy files to home NAS CLOUD BACKUP 2.0 Raw

    files in S3 Magic Photo browser ✅
  8. Upload RAW to S3 Standard IA EXTRACTING JPG FROM RAW

    Extract PreviewImage with exiftool Copy EXIF with exiftool Resize to 2000px with ImageMagick Lifecycle move RAW to Glacier after ~2 days
  9. Previews from RAW require native binaries Lambda layers could do

    the job ImageMagick layer is available ...anyone got exiftool working? “
  10. Raspberry Pi resize & sync Raw files in S3 Copy

    files to home NAS CLOUD BACKUP 2.0 Magic Photo browser ✅✅
  11. AWS Rekognition • Face recognition ◦ Find same person from

    different photoshoots • Object & scene recognition ◦ Browse photos by occasion ◦ Weddings, cooking, animals, etc “
  12. 1$/1000 images & run two times per image ...quite a

    lot, but luckily only once AWS REKOGNITION (free tier 5000 per month)
  13. Copy files to home NAS SO HOW DOES THE SOLUTION

    LOOK? Raspberry Pi resize & sync AWS Rekognition AWS Lambda AWS DynamoDB Photo browser (Amplify, ReactJS)
  14. Finished & tagged photos to S3 PORTFOLIO WEBSITE S3 trigger

    Lambda Object metadata stored to DynamoDB www.eijahelena.com
  15. Finished & tagged photos to S3 NEXT STEP: WEBSHOP S3

    trigger Lambda Watermark images? Password protected galleries? Stripe?
  16. 5Tb of raws: 5$/month Rekognition: 0-5$/month 2000px previews: 1$/month DynamoDB,

    traffic, Lambda: ~0.5$/month Time spent: priceless TOTAL COST