<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Viraj Nadkarni</title>
    <description>The latest articles on DEV Community by Viraj Nadkarni (@virajnadkarni).</description>
    <link>https://dev.to/virajnadkarni</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1193678%2Fa1c9b298-6088-41fb-9b7a-ae3a1ab34996.jpg</url>
      <title>DEV Community: Viraj Nadkarni</title>
      <link>https://dev.to/virajnadkarni</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/virajnadkarni"/>
    <language>en</language>
    <item>
      <title>Practical considerations with commitment based Pricing models on AWS</title>
      <dc:creator>Viraj Nadkarni</dc:creator>
      <pubDate>Tue, 11 Jun 2024 06:45:21 +0000</pubDate>
      <link>https://dev.to/virajnadkarni/practical-considerations-with-commitment-based-pricing-models-on-aws-3l6h</link>
      <guid>https://dev.to/virajnadkarni/practical-considerations-with-commitment-based-pricing-models-on-aws-3l6h</guid>
      <description>&lt;p&gt;Pricing of services on AWS cloud comes in different flavors such as free tier, pay as you go, spot and finally commitment based pricing models such as reservations and savings plan. &lt;/p&gt;

&lt;p&gt;The commitment based pricing models can lead to considerable savings, if utilized optimally for the right use case. However, it is important to understand the practical considerations when opting for this pricing model.&lt;/p&gt;

&lt;p&gt;This article summarizes few of the key tips to keep in mind if planning to opt for this pricing model. &lt;strong&gt;Please refer to my &lt;a href="https://www.persistent.com/wp-content/uploads/2023/10/guide-commitment-based-pricing-model.pdf"&gt;whitepaper&lt;/a&gt; for more details on each of the below items&lt;/strong&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  Over-assuming savings percentages
&lt;/h1&gt;

&lt;p&gt;The highest savings percentages often comes with riders such as longer commitment periods, stringent usage terms such as being restricted to only a particular service type and higher upfront payments. Be pragmatic with your organization's risk appetite and savings that can be obtained based on that constraint.&lt;/p&gt;

&lt;h1&gt;
  
  
  Crossover points vs breakeven point
&lt;/h1&gt;

&lt;p&gt;You may be asked to present a forecasted pricing plan and savings when proposing this pricing compared to a pay as you go model. It is important to understand when the crossover happens and when the actual breakeven occurs and not confuse the two.&lt;br&gt;
Crossover point is when the pricing of the commitment based model matches the pay as you pricing and subsequently gets cheaper. The catch here though is you have still committed to a set usage period in case of commitment based pricing whereas in pay as you go pricing, you are under no such restriction to continue using. An actual breakeven point calculation will need to take this into perspective.&lt;/p&gt;

&lt;h1&gt;
  
  
  Explore alternative commitment options
&lt;/h1&gt;

&lt;p&gt;For shorter term commitments, there are sometimes better alternatives than directly opting for a reservation or savings plan model, both of which come with a minimum of 1 year commitment such as exploring the reserved instance marketplace. An example is purchasing off the reserved instance marketplace where there is an instance available with lesser commitment period remaining. Explore these alternatives beforehand.&lt;/p&gt;

&lt;h1&gt;
  
  
  Thoroughly understand your workload patterns
&lt;/h1&gt;

&lt;p&gt;The Savings plan option is usually the more flexible of the two options but that does not mean it is also always the right option. It may turn out expensive for certain patterns and also if you need to cancel or dispose of the commitments at short notice. For example, With reserved instances you have option to sell them off on the marketplace but not with savings plan. Be sure to weigh the pros and cons of both options for your workloads.&lt;/p&gt;

&lt;h1&gt;
  
  
  Understand price calculation difference
&lt;/h1&gt;

&lt;p&gt;The Savings plan bills you on hourly commitments whereas Reservations are billed on an a monthly basis. Whereas this may not seem to be  big deal at first glance, it can very well turn out to be one when there are large fluctuations in workload usage. A key point to understand here is that with savings plans, if your workloads consistently under utilize the committed savings plan amount, the loss in commitment amount cannot be adjusted in retrospect in subsequent period maybe for some spike usage in future.&lt;br&gt;
So analyze your workload usage patterns before opting for either options.&lt;/p&gt;

&lt;h1&gt;
  
  
  Miscellaneous considerations
&lt;/h1&gt;

&lt;p&gt;Other than the above tips, there are also items to look at. Some of these include,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Pricing changes of the underlying services&lt;br&gt;
Cloud providers such as AWS regularly come up with price reductions for their services. For example an EC2 instance type that cost x USD/hour sometime back might now cost .95x USD/hour in pay per use mode. So if you have calculated the savings of commitment based pricing over pay as you go assuming x USD/hour as the pricing for pay as you go, that calculation needs to be reworked. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Calculate savings based on practical usage time&lt;br&gt;
When comparing commitment based pricing with pay as you go model, understand that with pay as you go model, you are under no restriction to use the service, 24x7. But with most commitment based pricing, you sign up for a fixed hourly or monthly commitment price, irrespective of usage.&lt;br&gt;
So account for this when comparing these pricing models. Also, below a certain threshold of usage, it may not make financial sense to commit to a commitment based pricing so understand your practical  workload usage patterns.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Introduction of newer instances at better price points&lt;br&gt;
Cloud providers regularly introduce a new class/series of instances, at  better performance but lower price point than the existing instance class. Based on how flexible the commitment option is, you may be able to take advantage of this by switching to the newer class of instance.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Centralizing your reservation strategy&lt;br&gt;
For multiple teams and accounts,  centralizing the process will lead to better usage visibility across teams and greater organizational efficiency.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To conclude, it is important to assess and plan out your commitment based pricing journey carefully, not over-commit initially and adaptatively optimize the commitments made based on past and forecasted usage data. &lt;/p&gt;

</description>
      <category>aws</category>
      <category>cost</category>
      <category>finops</category>
      <category>awswellarchitected</category>
    </item>
    <item>
      <title>Optimizing Data Management on AWS - Part 2</title>
      <dc:creator>Viraj Nadkarni</dc:creator>
      <pubDate>Tue, 11 Jun 2024 05:31:05 +0000</pubDate>
      <link>https://dev.to/virajnadkarni/optimizing-data-management-on-aws-part-2-434o</link>
      <guid>https://dev.to/virajnadkarni/optimizing-data-management-on-aws-part-2-434o</guid>
      <description>&lt;p&gt;We started out with introduction to Data management strategies on AWS in &lt;a href="https://dev.to/virajnadkarni/optimizing-data-management-on-aws-5-steps-5c2g"&gt;Part 1&lt;/a&gt;. Here are some additional strategies to look at.&lt;/p&gt;

&lt;h2&gt;
  
  
  Use policies  to manage lifecycle of your data
&lt;/h2&gt;

&lt;p&gt;Data has a lifecycle, just like everything else, and you need to have a plan to control it from the time it was first created to the time it is archived or deleted. As the data moves through this lifecycle, its storage requirements often change. If you are not managing the lifecycle of your data, chances are that your data is being stored in costly or inefficient storage. The recommended approach here is to first identify the lifecycle pattern for your data and then use automated lifecycle polices to manage the lifecycle of these datasets.&lt;br&gt;
Doing so will ensure that data is stored in the most appropriate storage tier at each stage of its lifecycle. Note that the lifecycle management  evaluation should include areas like understanding your data characteristics, data access patterns at each stage of data lifecycle, handling data that is old or rarely used, archival and finally data deletion.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get rid of redundant or unneeded data.
&lt;/h2&gt;

&lt;p&gt;Just as keeping underutilized or idle resources running on cloud costs money, so does data. Storing redundant or unneeded data not only consumes unnecessary storage resources but also increases costs. By removing such data, organizations can free up valuable storage resources and reduce their environmental impact. This problem often manifests in different forms such as data being unnecessarily backed up, duplicated or stored redundantly irrespective of its criticality(touched upon in item 2) or when the data itself is easy to recreate if the need arises.&lt;/p&gt;

&lt;h2&gt;
  
  
  Monitor data movement to reduce costs
&lt;/h2&gt;

&lt;p&gt;Monitoring, optimizing and minimizing data movement across networks can help with reducing the overall resources need for supporting data movement and indirectly reduce your overall costs besides helping in other areas such as performance.&lt;/p&gt;

&lt;p&gt;Ask yourself, have you considered proximity of data or users of your workload when selecting a region on where to store data ? Are you leveraging services such as &lt;a href="https://aws.amazon.com/lambda/edge/"&gt;Lambda@Edge&lt;/a&gt; or &lt;a href="https://aws.amazon.com/blogs/aws/introducing-cloudfront-functions-run-your-code-at-the-edge-with-low-latency-at-any-scale/"&gt;CloudFront Functions&lt;/a&gt; that help you run data closer to your users ? Is the serving of data itself optimized ? Is the data being served up in efficient file formats or compressed ? Is the data being moved in line with your business needs ? Have you evaulated that only relevant data and too in the level of granularity that is needed by your application is being passed around? &lt;/p&gt;

&lt;p&gt;To conclude, data management plays a pivotal role in an organization's sustainability journey. By avoiding these anti-patterns and implementing the associated best practices, organizations can ensure that they are using their resources efficiently, and thereby reduce the costs and minimize environmental impact.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>datamanagement</category>
      <category>awswellarchitected</category>
    </item>
    <item>
      <title>New Launch - AWS Free Tier API</title>
      <dc:creator>Viraj Nadkarni</dc:creator>
      <pubDate>Tue, 28 Nov 2023 06:18:50 +0000</pubDate>
      <link>https://dev.to/virajnadkarni/new-launch-aws-free-tier-api-4di4</link>
      <guid>https://dev.to/virajnadkarni/new-launch-aws-free-tier-api-4di4</guid>
      <description>&lt;p&gt;Like other cloud providers, AWS provides free tier pricing to specifically allow users the ability to try out its services up to a certain limit. &lt;/p&gt;

&lt;p&gt;Ignoring some services that are always free such as AWS IAM,&lt;br&gt;
few considerations to note with the free tier model is that not all AWS services are covered under the free tier model. &lt;br&gt;
For the ones that are covered under this pricing model, the free tier structure varies. For example, &lt;br&gt;
a) there are some that are free for a longer duration (typically 12 months) up to a specified limit (e.g., AWS S3 is free for up to 5 GB usage with get/put request limits), &lt;br&gt;
b) there are others that are always free services up to a certain limit usage (e.g., Azure functions with a million executions free per month) and &lt;br&gt;
c) then there is another category that is free upto a certain shorter duration and/or credit limit. example, Amazon Redshift.&lt;/p&gt;

&lt;p&gt;Once free tier exhausts, you are switched to pay-as-you-go pricing. This was often a source of confusion in practice for newbies who often do not have proper cost governance in place as it would be difficult to track when the transition to a paid pricing model has happened. Not that this information was entirely unavailable but it had to be figured out using the AWS billing and cost management service. &lt;a href="https://docs.aws.amazon.com/cost-management/latest/userguide/budget-templates.html"&gt;Zero spend budget template&lt;/a&gt; is a handy way to know when you have moved out of free tier and the AWS free tier under the cost analysis section in &lt;a href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-what-is.html"&gt;Billing and cost management&lt;/a&gt; provides the current and forecasted usage of free tier eligible services.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--v1JDN-YX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qs4krdinck85hqa5oa0w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v1JDN-YX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qs4krdinck85hqa5oa0w.png" alt="Image description" width="800" height="523"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--chBXk013--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cyjriyguedn2znrwluzj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--chBXk013--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cyjriyguedn2znrwluzj.png" alt="Image description" width="800" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;AWS has now released the &lt;a href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/using-free-tier-api.html"&gt;free tier API &lt;/a&gt;, which provides an alternate way to tackle this problem by providing details such as the actual consumption, the forecasted consumption for the billing period and the limit of the free tier usage. If the forecasted consumption is greater than the free tier limit, then it means that you will incur some cost if the service consumption continues at the same rate.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--pwxV1ecn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9yxc1iaof96v8kzekr47.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--pwxV1ecn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9yxc1iaof96v8kzekr47.png" alt="Image description" width="747" height="646"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For now, this is available only using the SDK or CLI and any reporting, automation and alerting needs to be custom built. &lt;br&gt;
A caveat - dont quote me on this as I haven't exhaustively used this API:). Like the free tier item in Billing and cost management, this API returns list of services that are eligible for some free tier usage in your current account. Ones that are not eligible, for example those that come under free tier pricing only for new users for specified duration (first 12 months after account creation as in case of AWS EC2) may not appear in the list based on how long this account has been in use. So, do not restrict monitoring of your AWS usage outside the free tier to only using these techniques.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>reinvent2023</category>
      <category>costmonitoring</category>
    </item>
    <item>
      <title>Optimizing Data Management on AWS - Part 1</title>
      <dc:creator>Viraj Nadkarni</dc:creator>
      <pubDate>Tue, 07 Nov 2023 05:14:43 +0000</pubDate>
      <link>https://dev.to/virajnadkarni/optimizing-data-management-on-aws-5-steps-5c2g</link>
      <guid>https://dev.to/virajnadkarni/optimizing-data-management-on-aws-5-steps-5c2g</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;In the cloud setup, having a good data management plan on Cloud is of utmost importance for multiple reasons. Reasons for this are many. Cloud costs are typically linked to usage and as such poor data handling can result in rising costs due to unnecessary or outdated data. Further, since cloud data might cross several regions, it's essential to adhere to different regulations and uphold strict security standards, which includes measures like encryption and controlling access.&lt;/p&gt;

&lt;p&gt;This blog touches upon 5 critical areas you should be looking at with regards to data management. This part highlights the first two, Part 2 covers the remaining three. For more exhaustive details, please refer to the &lt;a href="https://aws.amazon.com/architecture/well-architected/?wa-lens-whitepapers.sort-by=item.additionalFields.sortDate&amp;amp;wa-lens-whitepapers.sort-order=desc&amp;amp;wa-guidance-whitepapers.sort-by=item.additionalFields.sortDate&amp;amp;wa-guidance-whitepapers.sort-order=desc"&gt;AWS well architected whitepaper&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Do not assume Uniform Data Storage and Access Patterns
&lt;/h2&gt;

&lt;p&gt;Too often, we assume that all data storage can be managed uniformly in the same storage type. But for multiple workloads of any sizeable complexity, this is not likely to be the case. Every workload has its unique data storage and access requirements. Hence assuming that that all workloads have similar patterns or using a single storage tier for all workloads can lead to inefficiencies. The sooner these patterns are recognized the better. The advantage of recognizing and catering to these patterns is that it reduces the resources required to meet business needs, and thereby the overall efficiency of the cloud workload. To address this issue, regularly evaluate your data characteristics, your access patterns and plan to migrate data to the appropriate storage type that best aligns with these patterns. Also, understand that this will not be a one time activity but an exercise that needs to be conducted regularly.&lt;/p&gt;

&lt;p&gt;For a comprehensive evaluation, the decision guides provided by AWS for &lt;a href="https://aws.amazon.com/getting-started/decision-guides/storage-on-aws-how-to-choose/"&gt;storage&lt;/a&gt; and &lt;a href="https://aws.amazon.com/getting-started/decision-guides/databases-on-aws-how-to-choose/"&gt;database &lt;/a&gt;services should be a good starting point.&lt;/p&gt;

&lt;h2&gt;
  
  
  Have a solid data classification strategy
&lt;/h2&gt;

&lt;p&gt;Data classification is the process of categorizing data based on its sensitivity and criticality. A common mistake is not identifying the types of data they process and stored based on its sensitivity and importance. This ends up being a massive oversight and not having a classification strategy could lead to other consequences such as inappropriate security controls in place and even lead to compliance, regulatory or legal issues. &lt;br&gt;
By having a proper data classification policy, organizations can determine the most performant and cost optimized storage(and even energy efficient, if sustainability is one of the key drivers) tier for their data. To come up with a data classification strategy, one should conduct an inventory of the various data types and then determine their criticality. Also have a periodical audit the environment not just for untagged and unclassified data but also to re-evaluate the data classification conducted earlier to see if that needs any change as per changing business conditions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/whitepapers/latest/data-classification/data-classification-overview.html"&gt;AWS Data classification guide&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Few other strategies are covered in &lt;a href="https://dev.to/virajnadkarni/optimizing-data-management-on-aws-part-2-434o"&gt;Part 2 &lt;/a&gt;of this blog.&lt;/p&gt;

</description>
      <category>awscloud</category>
      <category>datamanagement</category>
      <category>awswellarchitected</category>
      <category>aws</category>
    </item>
  </channel>
</rss>
