{"id":1510,"date":"2017-12-04T16:51:49","date_gmt":"2017-12-04T16:51:49","guid":{"rendered":"https:\/\/gosqeng.test\/?p=1510"},"modified":"2019-11-28T11:11:19","modified_gmt":"2019-11-28T11:11:19","slug":"aws-reinvent-2017","status":"publish","type":"post","link":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017","title":{"rendered":"AWS re:Invent 2017: A few of our favourite things"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/static.gosquared.com\/images\/liquidicity\/17_12_04_reinvent\/17_12_04_reinvent_01@2x.png\" alt=\"New at re:Invent 2017\"\/><\/p>\n<p>We spent last week in Las Vegas at AWS re:Invent, Amazon Web Services\u2019 global cloud computing conference.<\/p>\n<p>As always there was a <em>huge<\/em> number of new services and features announced this year. It can be hard to get your head around all the new stuff AWS throws out every year, so here\u2019s our pick of the ones that caught our eye and made us the most excited for the future.<\/p>\n<p>This obviously isn\u2019t an exhaustive list &#8211; it\u2019s mostly those services most relevant to us. If you want the full list, AWS has a big page of <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/new\/reinvent\/\" rel=\"noopener noreferrer\">everything announced at re:Invent<\/a> which we recommend you check out. But without further ado, here is a list of our favourite things:<\/p>\n<ul>\n<li><a href=\"#fargate\">Fargate<\/a><\/li>\n<li><a href=\"#instance-types\">New Instance Types: M5\/H1<\/a><\/li>\n<li><a href=\"#spot-pricing\">New Spot Instance options<\/a><\/li>\n<li><a href=\"#spot-hibernation\">Spot Hibernation<\/a><\/li>\n<li><a href=\"#t2\">T2 Unlimited<\/a><\/li>\n<li><a href=\"#aurora\">Aurora: Multi-Master, Multi-Region and Serverless<\/a><\/li>\n<li><a href=\"#dynamodb\">DynamoDB Global Tables<\/a><\/li>\n<li><a href=\"#mq\">Amazon MQ<\/a><\/li>\n<li><a href=\"#big-lambda\">Bigger Lambdas<\/a><\/li>\n<li><a href=\"#concurrent-lambda\">Lambda concurrency control<\/a><\/li>\n<li><a href=\"#deployment-lambda\">Lambda deployment options<\/a><\/li>\n<li><a href=\"#api-gateway\">API Gateway deployment options<\/a><\/li>\n<li><a href=\"#ai\">AI: DeepLens, Comprehend, Transcribe, Translate, SageMaker<\/a><\/li>\n<li><a href=\"#guardduty\">GuardDuty<\/a><\/li>\n<li><a href=\"#waf\">Managed WAF rules<\/a><\/li>\n<li><a href=\"#s3-select\">S3 Select<\/a><\/li>\n<\/ul>\n<h2 id=\"fargate\">Fargate<\/h2>\n<p>We\u2019re super-excited for the introduction of <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/aws-fargate\/\" rel=\"noopener noreferrer\">Fargate<\/a> for Elastic Container Service. Fargate essentially completely removes the concept of host instances from <a target=\"_blank\" href=\"https:\/\/www.gosquared.com\/blog\/running-node-app-amazon-ecs\" rel=\"noopener noreferrer\">running containers on ECS<\/a>. You simply tell AWS \u201crun these containers for me\u201d and Fargate takes care of all the infrastructure invisibly and under the hood. This especially makes things like Auto Scaling a lot easier where you don\u2019t have to worry about whether you\u2019re using your host instance resources efficiently.<\/p>\n<h2 id=\"instance-types\">New Instance Types: M5, H1<\/h2>\n<p>AWS is constantly iterating on the performance of their EC2 instance types, so the <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/m5-the-next-generation-of-general-purpose-ec2-instances\/\" rel=\"noopener noreferrer\">M5 instances<\/a> come as no surprise &#8211; they effectively replace the previous generation of M4 instances, with better performance and lower price. The <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/new-h1-instances-fast-dense-storage-for-big-data-applications\/\" rel=\"noopener noreferrer\">H1 instances<\/a> come with a ton of local disk storage and are ideal for performing big batch jobs against large amounts of data.<\/p>\n<h2 id=\"spot-pricing\">New Spot Instance Options<\/h2>\n<p>Probably the biggest change to EC2\u2019s pricing model since the Spot market was first introduced a few years ago, Spot Instances <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/amazon-ec2-update-streamlined-access-to-spot-capacity-smooth-price-changes-instance-hibernation\/\" rel=\"noopener noreferrer\">can now be launched instantly<\/a> via the <code>RunInstances<\/code> command exactly like On-Demand instances and without a bid price, with all the pricing benefit previously afforded by Spot Instances. It\u2019s now just as easy to launch a Spot instance as an On-Demand; the only difference is that Spots are often around a tenth of the price (and they occasionally get shut down if the price fluctuates). There\u2019s also been a few changes under the hood to how the pricing system works so it\u2019s less likely to fluctuate wildly and shut down a bunch of your instances at once.<\/p>\n<h2 id=\"spot-hibernation\">Spot Hibernation<\/h2>\n<p>One of the key features of Spot Instances is that they may get shut down at any moment if AWS needs the extra capacity for On-Demand instances. For a while now it\u2019s been possible to receive a warning that your instance is about to be shut down, but until now the only option at that point has been to save all your data somewhere external before the instance is terminated. Now, Spot Instances <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/amazon-ec2-update-streamlined-access-to-spot-capacity-smooth-price-changes-instance-hibernation\/\" rel=\"noopener noreferrer\">support hibernation<\/a>, effectively saving the machine\u2019s full state to EBS so it can be seamlessly resumed when the Instance is re-launched, rather than being forced to stash your data somewhere external and retrieve it once the instance is restored.<\/p>\n<h2 id=\"t2\">T2 Unlimited<\/h2>\n<p>We love T2 instances at GoSquared. We\u2019ve <a target=\"_blank\" href=\"https:\/\/www.gosquared.com\/blog\/t2-instances\" rel=\"noopener noreferrer\">written about them<\/a> in the past. They\u2019re an ideal instance type for low-CPU or very spiky workloads. Out of the box you get a certain amount of CPU usage for a T2 instance, which allows you to maintain a specific low utilisation on average, or the occasional burst of high-CPU for intensive workloads. The new <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/new-t2-unlimited-going-beyond-the-burst-with-high-performance\/\" rel=\"noopener noreferrer\">T2 Unlimited<\/a> feature allows you to extend the amount you\u2019re allowed to burst by borrowing future CPU credits up to a day in advance, or charging on a millisecond-by-millisecond surplus basis.<\/p>\n<h2 id=\"aurora\">Aurora<\/h2>\n<p>Aurora is AWS\u2019s game-changing cloud-first implementation of MySQL and PostgreSQL. It\u2019s their fastest-growing product ever, and with the features it provides that\u2019s hardly surprising. And this year they\u2019ve added yet more features that may change the way we think about cloud-based relational databases:<\/p>\n<h3>Multi-Master<\/h3>\n<p>Aurora has always supported scaling database reads by adding several read replicas &#8211; much like the old-school MySQL replication system, you can spool up as many replicas as you like and spread your read requests across them all to scale indefinitely. Previously however it wasn\u2019t possible to scale any writes to the database. With <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/about-aws\/whats-new\/2017\/11\/sign-up-for-the-preview-of-amazon-aurora-multi-master\/\" rel=\"noopener noreferrer\">Aurora Multi-Master<\/a> that\u2019s now possible &#8211; you can spin up multiple write instances as well as read replicas to make Aurora fully horizontally-scalable.<\/p>\n<h3>Multi-Region Multi-Master<\/h3>\n<p>This announcement didn\u2019t even make it onto AWS\u2019s announcement page for new products at re:Invent, but we think this is game-changing too. Aurora has supported cross-region replication for read replicas for a while, but in 2018 the service will be adding support for multi-region multi-master configurations. That means the database can scale reads and writes across multiple regions and provide availability that was previously unimaginable with just standard primary\/secondary replication.<\/p>\n<h3>Aurora Serverless<\/h3>\n<p><a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/in-the-works-amazon-aurora-serverless\/\" rel=\"noopener noreferrer\">Aurora Serverless<\/a> is a new option in the works for the MySQL version of Aurora which takes away a lot of the thinking required when predicting workloads for MySQL. Instead of having to choose a particular instance type and scale for a certain amount of capacity and headroom, Aurora Serverless effectively removes all the thought of scaling databases up and down based on usage and replaces it with a model similar to how ELBs currently work (there are still instances under the hood, but you only pay in terms of \u201ccapacity units\u201d used)<\/p>\n<h2 id=\"dynamodb\">DynamoDB Global Tables<\/h2>\n<p>Aurora wasn\u2019t the only service to get a multi-region upgrade at re:Invent this year. DynamoDB now has support for <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/new-for-amazon-dynamodb-global-tables-and-on-demand-backup\/\" rel=\"noopener noreferrer\">Global Tables<\/a>, effectively replicating writes and eventually-consistent reads across multiple regions. Combine this with recent announcements such as increased runtime limits for <a target=\"_blank\" href=\"https:\/\/www.gosquared.com\/blog\/lambda-edge\" rel=\"noopener noreferrer\">Lambda@Edge<\/a> and it\u2019s now easier than ever to move your data closer to your users.<\/p>\n<h2 id=\"mq\">Amazon MQ<\/h2>\n<p><a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/amazon-mq-managed-message-broker-service-for-activemq\/\" rel=\"noopener noreferrer\">Amazon MQ<\/a> is a managed Apache ActiveMQ service that takes care of all the ops work needed to maintain a highly-available broker service. It\u2019s not a fully-managed scalable serverless service like SQS or DynamoDB; instead you still choose an instance type for deployment, which makes it a little more like ElastiCache or RDS. Still, since we use RabbitMQ internally here at GoSquared for a lot of its brokering\/routing power, so we\u2019re interested to see where Amazon MQ goes and how it can help take away that ops work for us.<\/p>\n<h2 id=\"big-lambda\">Bigger Lambdas<\/h2>\n<p>Lambda functions <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/about-aws\/whats-new\/2017\/11\/aws-lambda-doubles-maximum-memory-capacity-for-lambda-functions\/\" rel=\"noopener noreferrer\">can now consume up to 3008MB<\/a> of memory, which is great if you\u2019re using them for memory-intensive workloads such as big data analysis or processing large images.<\/p>\n<h2 id=\"concurrent-lambda\">More Control over Lambda concurrency<\/h2>\n<p>Lambda has always had an invisible under-the-hood limit on the number of concurrent functions you can have running at any one time in your account. This limit has previously always been opaque and the only way to know that you\u2019ve run into it is when your functions suddenly stop working. Lambda <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/about-aws\/whats-new\/2017\/11\/set-concurrency-limits-on-individual-aws-lambda-functions\/\" rel=\"noopener noreferrer\">now has new controls<\/a> over this limit, allowing you to view concurrency metrics and limit concurrency on a per-function level (so no single function can run away exhaust your account-level limit, for example)<\/p>\n<h2 id=\"deployment-lambda\">New Lambda deployment options<\/h2>\n<p>We use Lambda all over the place here at GoSquared. One thing we\u2019ve always found tricky is how best to develop and test our functions. In an ideal world we\u2019d write completely exhaustive test suites, so we know that every function works perfectly before we roll it out. But in the real world, there\u2019s always something that your tests can\u2019t catch. Now with Lambda\u2019s new <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/about-aws\/whats-new\/2017\/11\/aws-lambda-supports-traffic-shifting-and-phased-deployments-with-aws-codedeploy\/\" rel=\"noopener noreferrer\">Traffic Shifting feature<\/a>, it\u2019s possible to gradually shift traffic from old to new versions of functions, making it easier to spot errors without having to do a full all-or-nothing deploy.<\/p>\n<h2 id=\"api-gateway\">API Gateway deployment options<\/h2>\n<p>Much like the new Lambda deployment options, API Gateway now allows for <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/about-aws\/whats-new\/2017\/11\/amazon-api-gateway-supports-canary-release-deployments\/\" rel=\"noopener noreferrer\">better control of deployments<\/a> with gradual rollouts rather than all-or-nothing releases which allow little room for errors not covered by tests.<\/p>\n<h2 id=\"ai\">AI<\/h2>\n<p>AWS has been making big strides in the field of AI and machine learning recently. We\u2019ve been involved in the announcements for a few of these so we\u2019re super-excited for what they entail:<\/p>\n<h3>DeepLens<\/h3>\n<p><a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/deeplens\/\" rel=\"noopener noreferrer\">DeepLens<\/a> is AWS\u2019s first deep-learning-enabled cloud-connected camera. It\u2019s primarily geared up to facilitate the teaching of machine learning. While it\u2019s not the sort of thing we\u2019ll be using directly here at GoSquared, we\u2019re impressed by AWS\u2019s ambition for this device to enable the future of machine learning education.<\/p>\n<h3>AI Services: Comprehend, Translate, Transcribe<\/h3>\n<p><a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/amazon-comprehend-continuously-trained-natural-language-processing\/\" rel=\"noopener noreferrer\">Comprehend<\/a>, <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/introducing-amazon-translate-real-time-text-language-translation\/\" rel=\"noopener noreferrer\">Translate<\/a> and <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/amazon-transcribe-scalable-and-accurate-automatic-speech-recognition\/\" rel=\"noopener noreferrer\">Transcribe<\/a> are AWS\u2019s new services for natural language processing, machine translation, and automatic speech recognition. These do pretty much exactly what it says on the tin, as a scalable and serverless API. We\u2019re excited to see what we can do with these to enable future features in Assistant.<\/p>\n<h3>SageMaker<\/h3>\n<p><a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/sagemaker\/\" rel=\"noopener noreferrer\">SageMaker<\/a> is a new service which makes it easier than ever to get up and running with custom ML models. Previously there has been a lot of knowledge required in order to get up and running with training, optimising, deploying and scaling ML models, but SageMaker takes away a lot of that undifferentiated heavy lifting and makes it much easier to focus on what matters: working with models and data.<\/p>\n<h2 id=\"guardduty\">GuardDuty<\/h2>\n<p>AWS has had features for logging activity in your AWS account for a long while: CloudTrail, network flow logs, and DNS logs have been available for a while. But unless you know what you\u2019re looking for, it\u2019s hard to spot suspicious activity. <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/blogs\/aws\/amazon-guardduty-continuous-security-monitoring-threat-detection\/\" rel=\"noopener noreferrer\">GuardDuty<\/a> takes on this role, automatically plugging into all your available logs and flagging any suspicious activity on your account.<\/p>\n<h2 id=\"waf\">Managed WAF rules<\/h2>\n<p>AWS WAF is great for mitigating suspicious HTTP activity on ELBs, filtering out requests that match certain rules and preventing them from hitting your infrastructure. But you have to set up and maintain those rules for yourself and know what you\u2019re looking for. Now AWS have enabled sellers on their Marketplace to set up <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/about-aws\/whats-new\/2017\/11\/ready-to-use-managed-rules-now-available-on-aws-waf\/\" rel=\"noopener noreferrer\">managed rules<\/a>, effectively rule templates which get continually updated, so you don\u2019t have to worry about keeping them maintained yourself.<\/p>\n<h2 id=\"s3-select\">S3 and Glacier Select<\/h2>\n<p>When doing large-scale analysis across lots of data in S3 it\u2019s important to be efficient. But if for example you only need certain columns of data from a CSV file, or certain items in large JSON objects, your only option was previously to fetch the entire file and then filter out the data you\u2019re interested in. <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/about-aws\/whats-new\/2017\/11\/amazon-s3-select-is-now-available-in-limited-preview\/\" rel=\"noopener noreferrer\">S3 Select<\/a> is an interesting new way of running that filtering entirely on the S3 side, drastically cutting down on the amount of data you need to shift back and forth. And even better, it\u2019s also available for data that\u2019s been cycled out to Glacier, which means dramatic saving on the amount of data you need to restore to S3\u2019s standard storage classes.<\/p>\n<h2>But wait, there&#8217;s more!<\/h2>\n<p>We&#8217;ve simply picked out our favourite new AWS services and features here. There&#8217;s a whole bunch more that got announced during re:Invent. <a target=\"_blank\" href=\"https:\/\/aws.amazon.com\/new\/reinvent\/\" rel=\"noopener noreferrer\">AWS&#8217;s page<\/a> on new releases has a more exhaustive list, plust they&#8217;re announcing new things all the time. We can&#8217;t wait to see what they announce next.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We spent last week in Las Vegas at AWS re:Invent, Amazon Web Services\u2019 global cloud computing conference. Here\u2019s our pick of the announcements that caught our eye and made us the most excited for the future.<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1452],"tags":[],"class_list":["post-1510","post","type-post","status-publish","format-standard","hentry","category-engineering"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.6 (Yoast SEO v19.0) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>AWS re:Invent 2017: A few of our favourite things - GoSquared Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AWS re:Invent 2017: A few of our favourite things\" \/>\n<meta property=\"og:description\" content=\"We spent last week in Las Vegas at AWS re:Invent, Amazon Web Services\u2019 global cloud computing conference. Here\u2019s our pick of the announcements that caught our eye and made us the most excited for the future.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017\" \/>\n<meta property=\"og:site_name\" content=\"GoSquared Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/GoSquared\" \/>\n<meta property=\"article:published_time\" content=\"2017-12-04T16:51:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-11-28T11:11:19+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/static.gosquared.com\/images\/liquidicity\/17_12_04_reinvent\/17_12_04_reinvent_twitter_01@2x.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@floopily\" \/>\n<meta name=\"twitter:site\" content=\"@GoSquared\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"JT\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/#organization\",\"name\":\"GoSquared\",\"url\":\"https:\/\/www.gosquared.com\/blog\/\",\"sameAs\":[\"https:\/\/instagram.com\/gosquaredteam\",\"https:\/\/www.linkedin.com\/company\/go-squared-ltd.\",\"https:\/\/www.facebook.com\/GoSquared\",\"https:\/\/twitter.com\/GoSquared\"],\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.gosquared.com\/blog\/wp-content\/uploads\/2015\/07\/gosquared.png\",\"contentUrl\":\"https:\/\/www.gosquared.com\/blog\/wp-content\/uploads\/2015\/07\/gosquared.png\",\"width\":1270,\"height\":250,\"caption\":\"GoSquared\"},\"image\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/#website\",\"url\":\"https:\/\/www.gosquared.com\/blog\/\",\"name\":\"GoSquared Blog\",\"description\":\"Turn visitors into customers.\",\"publisher\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.gosquared.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#primaryimage\",\"url\":\"\",\"contentUrl\":\"\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#webpage\",\"url\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017\",\"name\":\"AWS re:Invent 2017: A few of our favourite things - GoSquared Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#primaryimage\"},\"datePublished\":\"2017-12-04T16:51:49+00:00\",\"dateModified\":\"2019-11-28T11:11:19+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.gosquared.com\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AWS re:Invent 2017: A few of our favourite things\"}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#webpage\"},\"author\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/#\/schema\/person\/bfcd35bf2eba92ecbeea67937cd23eef\"},\"headline\":\"AWS re:Invent 2017: A few of our favourite things\",\"datePublished\":\"2017-12-04T16:51:49+00:00\",\"dateModified\":\"2019-11-28T11:11:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#webpage\"},\"wordCount\":1927,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#primaryimage\"},\"thumbnailUrl\":\"\",\"articleSection\":[\"Engineering\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#respond\"]}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/#\/schema\/person\/bfcd35bf2eba92ecbeea67937cd23eef\",\"name\":\"JT\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.gosquared.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/772e026206b900a5ba17ebbe63e34a4c8a9103524cf0ba3accfa38b14d7d03ba?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/772e026206b900a5ba17ebbe63e34a4c8a9103524cf0ba3accfa38b14d7d03ba?s=96&d=mm&r=g\",\"caption\":\"JT\"},\"description\":\"JT is a co-founder and the lead front-end engineer at GoSquared. He's responsible for the shiniest of the shiny projects we work on.\",\"sameAs\":[\"https:\/\/twitter.com\/floopily\"],\"url\":\"https:\/\/www.gosquared.com\/blog\/author\/jt\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"AWS re:Invent 2017: A few of our favourite things - GoSquared Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017","og_locale":"en_US","og_type":"article","og_title":"AWS re:Invent 2017: A few of our favourite things","og_description":"We spent last week in Las Vegas at AWS re:Invent, Amazon Web Services\u2019 global cloud computing conference. Here\u2019s our pick of the announcements that caught our eye and made us the most excited for the future.","og_url":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017","og_site_name":"GoSquared Blog","article_publisher":"https:\/\/www.facebook.com\/GoSquared","article_published_time":"2017-12-04T16:51:49+00:00","article_modified_time":"2019-11-28T11:11:19+00:00","twitter_card":"summary_large_image","twitter_image":"https:\/\/static.gosquared.com\/images\/liquidicity\/17_12_04_reinvent\/17_12_04_reinvent_twitter_01@2x.jpg","twitter_creator":"@floopily","twitter_site":"@GoSquared","twitter_misc":{"Written by":"JT","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Organization","@id":"https:\/\/www.gosquared.com\/blog\/#organization","name":"GoSquared","url":"https:\/\/www.gosquared.com\/blog\/","sameAs":["https:\/\/instagram.com\/gosquaredteam","https:\/\/www.linkedin.com\/company\/go-squared-ltd.","https:\/\/www.facebook.com\/GoSquared","https:\/\/twitter.com\/GoSquared"],"logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.gosquared.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.gosquared.com\/blog\/wp-content\/uploads\/2015\/07\/gosquared.png","contentUrl":"https:\/\/www.gosquared.com\/blog\/wp-content\/uploads\/2015\/07\/gosquared.png","width":1270,"height":250,"caption":"GoSquared"},"image":{"@id":"https:\/\/www.gosquared.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"WebSite","@id":"https:\/\/www.gosquared.com\/blog\/#website","url":"https:\/\/www.gosquared.com\/blog\/","name":"GoSquared Blog","description":"Turn visitors into customers.","publisher":{"@id":"https:\/\/www.gosquared.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.gosquared.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#primaryimage","url":"","contentUrl":""},{"@type":"WebPage","@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#webpage","url":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017","name":"AWS re:Invent 2017: A few of our favourite things - GoSquared Blog","isPartOf":{"@id":"https:\/\/www.gosquared.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#primaryimage"},"datePublished":"2017-12-04T16:51:49+00:00","dateModified":"2019-11-28T11:11:19+00:00","breadcrumb":{"@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.gosquared.com\/blog"},{"@type":"ListItem","position":2,"name":"AWS re:Invent 2017: A few of our favourite things"}]},{"@type":"Article","@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#article","isPartOf":{"@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#webpage"},"author":{"@id":"https:\/\/www.gosquared.com\/blog\/#\/schema\/person\/bfcd35bf2eba92ecbeea67937cd23eef"},"headline":"AWS re:Invent 2017: A few of our favourite things","datePublished":"2017-12-04T16:51:49+00:00","dateModified":"2019-11-28T11:11:19+00:00","mainEntityOfPage":{"@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#webpage"},"wordCount":1927,"commentCount":0,"publisher":{"@id":"https:\/\/www.gosquared.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#primaryimage"},"thumbnailUrl":"","articleSection":["Engineering"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.gosquared.com\/blog\/aws-reinvent-2017#respond"]}]},{"@type":"Person","@id":"https:\/\/www.gosquared.com\/blog\/#\/schema\/person\/bfcd35bf2eba92ecbeea67937cd23eef","name":"JT","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.gosquared.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/772e026206b900a5ba17ebbe63e34a4c8a9103524cf0ba3accfa38b14d7d03ba?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/772e026206b900a5ba17ebbe63e34a4c8a9103524cf0ba3accfa38b14d7d03ba?s=96&d=mm&r=g","caption":"JT"},"description":"JT is a co-founder and the lead front-end engineer at GoSquared. He's responsible for the shiniest of the shiny projects we work on.","sameAs":["https:\/\/twitter.com\/floopily"],"url":"https:\/\/www.gosquared.com\/blog\/author\/jt"}]}},"wps_subtitle":"(besides raindrops on roses and whiskers on kittens, that is)","_links":{"self":[{"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/posts\/1510","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/comments?post=1510"}],"version-history":[{"count":0,"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/posts\/1510\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/media?parent=1510"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/categories?post=1510"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gosquared.com\/blog\/wp-json\/wp\/v2\/tags?post=1510"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}