paint-brush
Как да спечелите $1 милион с AWS за една годинаот@gianpicolonna
65,525 показания
65,525 показания

Как да спечелите $1 милион с AWS за една година

от Gianpi Colonna5m2024/04/28
Read on Terminal Reader
Read this story w/o Javascript

Твърде дълго; Чета

Намалете разходите си за AWS облак с 90%! Научете 4 стъпки за оптимизиране на разходите: предизвикайте предположения, настройте ресурси, използвайте инстанции на Graviton и наблюдавайте използването.

Company Mentioned

Mention Thumbnail
featured image - Как да спечелите $1 милион с AWS за една година
Gianpi Colonna HackerNoon profile picture
0-item
1-item


Ако сте попаднали на тази страница, мислейки, че ще забогатеете с някаква схема за бързо забогатяване, съжалявам, че ще ви разочаровам. Тази статия по-скоро ще говори за това как да намалите сметките си за облачни разходи с 1 милион долара. Като направите това, вие по същество ще генерирате допълнителен милион долара приходи — които можете да похарчите, купувайки моя онлайн курс за това как да забогатеете с AWS ( връзка към курса тук ).



Облачните разходи често се пренебрегват и не се вземат предвид в началото на проектите на компаниите. Проучването на HashiCorp от 2021 г. установи, че почти 40% от компаниите са преразходвали за разходи за облак през 2021 г. [ 1 ]. През 2023 г. почти всички компании (94%) признават, че губят пари за облака [ 1 ] и поне 30% от разходите за облака са пропилени [ 2 ]. Разходите за облак бяха почти 500 милиарда долара през 2022 г. — следователно говорим за пропилени 150 милиарда долара годишно!!


Това е не само проблем за пропуснатите приходи, но и за лоши практики за устойчивост. 150 милиарда долара загуба на енергия!


Тези констатации включват големи предприятия, както и по-малки, от зрялост с висока облачна среда до зрялост с ниска облачна среда. Отнася се за AWS, но същите принципи могат да се приложат към всеки друг доставчик на облак. Така че, ако някоя част от вашата работа е в облака, тогава тази статия е за вас.


Говоря от гледна точка на инженера по данни, но същите знания могат да бъдат приложени към други практики за софтуерно инженерство.

Нека се потопим.


Какво е необходимо, за да похарчите 1 милион долара за облачни разходи за една година?

Този вид сметки за облак обикновено са ограничени до много големи предприятия, които работят в световен мащаб с милиони клиенти.


За да ви дадем представа, сметка за облак от $1 милион може да се получи от обработка на задание на Spark ETL ~1,5Tb на час 24x7 за 365 дни в годината. Друг пример може да е приложение, което получава милиарди заявки на ден от различни места по света.


В едно голямо предприятие има стотици приложения с такъв размер - което води до договори за милиарди долари с доставчици на облачни услуги. Например Airbnb имаше ангажимент да похарчи 1,2 милиарда долара за облачни ресурси за пет години в края на 2019 г. [3 ].


В Expedia ние намалихме разходите за ETL за обработка на данни, струващ $1,1 милиона долара на година до едва $100 000 на година, като внедрихме практики за оптимизация. Това е 91% намаление на разходите!!


Не всички компании имат приложения с такъв огромен размер, но си представете да намалите разходите си в облака с 90% само за едно приложение или за цялата си компания.



Как да започнем да спестяваме?

СТЪПКА 1: Предизвикайте вашите дизайнерски предположения

Отидете и вземете списък с най-скъпите си приложения и оспорете предположенията си за дизайн .

  • Създавате ли приложение, което има 99,999% наличност и латентност под милисекунди, но реалистично потребителите биха били достатъчно добри с 99% наличност и стотици милисекунди латентност?
  • Създавате ли набори от данни с милиарди редове, но потребителите ще използват само агрегирания на някои от мерките?
  • Извличате ли данни в реално време, но данните се анализират само веднъж на ден?
  • Обновявате ли кеша на всеки 10 секунди, но той наистина се променя само през дните?


Всички тези въпроси се връщат към най-важния въпрос: как ще се използва приложението? Каква е бизнес стойността, за да съществува? Как приложението ни помага да постигнем дадена цел?


Разбира се, всички тези отговори много често са неясни в началото на проекта; но затова дизайнът винаги трябва да бъде итеративен процес - позволяващ промените да се случват възможно най-безпроблемно. Инженерите трябва да приемат еволюцията и промяната, като съгласуват разработката на приложения с въздействието.


СТЪПКА 2: Настройте фино вашите инфраструктурни ресурси според вашите нужди

Втората стъпка се състои в предоставяне на приложението на правилните ресурси и настройването му към правилната инфраструктура.


Като инженер, бъдете наясно как се изчисляват разходите за облак. Например AWS предоставя спот инстанции, където можете да наддавате за цената на клъстера — това е особено полезно, ако имате устойчиви на грешки и гъвкави приложения. Използвайте ги, ако можете — AWS твърди до 90% намаление на разходите [ 4 ].


Някои други съображения, на които може да искате да обърнете внимание, са:

  • Глобално ли обслужвате клиенти или само в една географска област? Наистина ли имате нужда от вашата инфраструктура, за да живеете по целия свят, или можете да я настроите по-близо до вашата клиентска база?
  • Прекалявате ли с осигуряването на вашите клъстерни екземпляри? Опитайте се да осигурите достатъчно капацитет за справяне с пиковите натоварвания без ненужни разходи. Използвайте автоматично мащабиране, за да коригирате динамично ресурсите въз основа на действителното търсене, предотвратявайки надплащане за неизползвани ресурси.
  • Ако работите с данни и Spark, уверете се, че разбирате концепциите и настройката на Spark! Ако не го направите, разгледайте следните ресурси [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ].

СТЪПКА 3: Използвайте копия на AWS Graviton

Има малко или никакви недостатъци при използването на инстанции на AWS Graviton. AWS инвестира сериозно в създаването на най-рентабилните процесори. Можете да получите до 40% намаление на разходите за облак само като преминете от процесор, базиран на Intel, към процесор, базиран на ARM [ 10 ].


Единственото предупреждение за това е, че вашето приложение трябва да е съвместимо с ARM-базирани процесори, на които работи Graviton. Ако имате работа с управлявана услуга като RDS или OpenSearch, тогава няма никакво усложнение при превключването — AWS се занимава с основната операционна система и съвместимостта на приложенията. Ако изграждате свое собствено приложение, тогава може да се наложи да компилирате повторно пакета в зависимост от езика, който използвате — Java и други езици не изискват промяна, докато Python изисква известно внимание.


СТЪПКА 4: Наблюдавайте разходите си и обучавайте за осъзнаване на разходите

И накрая, не забравяйте да продължите да следите разходите си за неочаквани пикове и изненади. Цената в ден 0 на вашето приложение ще бъде различна от цената в ден 170. Уверете се, че следите промените и разбирате защо се случва промяната: натрупване ли е на разходите за s3 съхранение или е само еднократна шип?


Настройте необходимите предупреждения и оперативни ръководства !


Важно е да внедрите маркери за разпределение на разходите, за да проследявате разходите по отдел, проект или среда. Избягвайте риска от създаване на блато от данни, където цената е непроследима или изисква дълго пътуване през различни регистрационни системи. Трябва да е бързо и лесно да се върнете към дадена цена на приложението.


Последни мисли

Където и да работите, балансирането на предоставянето на нови функции с оптимизирането на текущите е трудно. Кой не е бил принуден да предоставя нови странни функции със скоростта на светлината.


Въпреки това е важно както за инженерите, така и за мениджърите да вземат обмислени и проактивни решения относно текущите си проекти, като управляват ефективно рисковете и възможностите.