One of the things that I really like about Google BigQuery is the ability to write queries right there in the web browser without having to install a hefty IDE. Sure, there are times when having the full power of something like JetBrains DataGrip comes in handy (source control integration, customisation, formatting), but sometimes you just want to dive in and write a quick query without any messing around. Amazon did this for Athena, which was really handy, but strangely never did so for Redshift…until now! Continue reading “AWS releasing in-browser Query Editor for Redshift” »
While quietly perusing Twitter this evening, I happened to notice one from the official AWS account with a link to a blog post from Amazon tech hero Randall Hunt describing the newly available capability for AWS Lambda: SQS as an event source!
— Amazon Web Services (@awscloud) June 28, 2018
This is functionality that I, personally, have been wanting for a while now. While Simple Notification Service (SNS) is absolutely brilliant for a fan-out architecture, and provides immense flexibility with a wide range of supported subscriber types, controlled, serverless polling of SQS wasn’t really a viable option. While you *could* run a Lambda for a few minutes doing long-polling on SQS, and then terminate before exhausting the 5-minute execution duration cap, it really felt a bit dirty. To properly implement a queue-polling architecture, you really had to deploy an application on EC2, which meant managing servers etc. Not that there’s anything wrong with that of course, it just seemed like there was a big glaring hole in the Serverless model.
Native SQS to Lambda event integration though really patches this omission and then some. Randall’s blog post explains it in full, but it seems like Amazon have implemented some really nice intelligent scaling mechanisms to adjust Lambda concurrency (up to a defined limit) in response to queue depth. This should really help constrain costs and ensure consistent throughput regardless of spiky traffic.
I’ve not yet had a chance to observe this in the wild though, so best tested for your workload before betting the farm on it, but this looks like yet another long-awaited piece of functionality that Amazon have knocked out the park. Have you explored SQS as an event source for Lambda yet? Any observations or gotchas so far? Let me know in the comments below!
Serverless computing and event-driven functions are what it’s all about at the moment. But what happens when the event trigger fires, and your process then encounters an error? How do you recover from this given the event has since passed and may never happen again? This is a common question in AWS when working with their serverless, event-driven Lambda Functions.
Fortunately, AWS lets you define Dead Letter Queues for this very scenario. This option allows you to designate either an SQS queue or SNS topic as a DLQ, meaning that when your Lambda function fails it will push the incoming event message (and some additional context) onto the specified resource. If it’s SNS you can send out alerts or trigger other services (maybe even a retry of the same function – although watch out for infinite loops), or any combination of the above, given its fanout nature. If it’s SQS you can persist the message and process it with another service.
So let’s look at both options in a little more detail. Continue reading “SQS vs SNS for Lambda Dead Letter Queues” »
AWS is knocking it out of the park at the moment with loads of new services and features coming out every week. Indeed, it can be hard to keep up with the degree of change. But, while working on one of our Redshift clusters today we spotted a potential scoop that would remove a key blocker for one extremely useful service, Redshift Spectrum.
Up until now it’s only been possible to use Spectrum if you don’t have Enhanced VPC Routing enabled on your Redshift cluster. There are so many benefits to using Enhanced VPC Routing (reduced data transfer cost, control, security) that it’s hard to see why anyone wouldn’t be using it, especially if you move data between Redshift and S3 a lot.
But we spotted a new parameter being applied to one of our clusters when we made some maintenance changes to a parameter group. There’s now a parameter named spectrum_enable_enhanced_vpc_routing showing, which hints that Amazon may be about to remove this crucial limitation.
Late last night, Amazon announced that their proprietary AWS data visualisation tool, Quicksight was now generally available in the US and Ireland. Quicksight aims to be a PowerBI-esque drag and drop visualisation tool, that allows you to access your data from AWS (and other sources) in seconds, regardless of scale. I’ve had a very quick go this morning, and visualised some data from a modest 1TB Redshift cluster after just a few minutes. The biggest challenge was finding out the correct IP range for Quicksight to enable access to my VPC (Thank you serverfault).
More to follow…In the meantime, try Quicksight for yourself here: https://quicksight.aws.amazon.com