AI, Data and Analytics Services Overview
|
This content was generated with the assistance of AI and should be verified against the official documentation before being relied on in production. See the section bibliography for the reference material consulted while preparing these pages. |
This page is the landing map for the AWS services that sit around the core compute, storage, database and networking
pages: generative AI, machine learning, prebuilt AI services, analytics, streaming, business intelligence and IoT, plus a
short list of other end-user and business services that have no better home. It is an overview, not a hands-on guide:
each service gets one paragraph, a console and AWS CLI first step, and a link to the official documentation for the
depth this page deliberately skips. Names, availability and lifecycle status of almost every service below changed
during 2024-2026, so everything was re-checked against the official documentation and the AWS service lifecycle pages
on 2026-10-01; confirm with aws --version (the 2.37 line was current) and the linked pages before relying on a detail.
Examples use the placeholder Region us-east-1, the placeholder account ID 111122223333 ($ACCOUNT_ID) and the
shell variables AWS_REGION and BUCKET. Service availability differs per Region, so check the Region table of each
service before picking a Region.
In the running Bookshelf scenario these services answer questions that the application tier does not:
-
"Ask the catalog" — a natural-language question answered from the book descriptions held in the
bookshelf-catalogAurora PostgreSQL database, using Amazon Bedrock and a vector store. -
Cover-image checks and alt-text suggestions for files uploaded to
bookshelf-uploads-<account-id>(Rekognition). -
Order and click events that
orders-apialready publishes (see Messaging and integration) landing in S3 for SQL analysis (Firehose, Glue, Athena) and a sales dashboard (Amazon Quick).
Terminology and the map
Four terms are often used interchangeably but are nested. Artificial intelligence is the broad goal of software doing tasks that normally need human judgement. Machine learning (ML) is the subset that learns patterns from data instead of following hand-written rules. Deep learning (DL) is ML with many-layered neural networks, behind most image, speech and language models. Generative AI is deep learning that produces new content (text, images, code, audio) from a prompt, typically with a pre-trained foundation model that you call rather than train. AWS offers three levels of involvement for all of them: call a prebuilt AI service (Rekognition, Textract, Polly), call a foundation model through Amazon Bedrock, or build and train your own model on Amazon SageMaker AI. Pick the highest level that solves the problem; each lower level adds flexibility and operational work.
order events"] --> KDS["Kinesis Data Streams"] KDS --> FH["Amazon Data Firehose"] end FH --> S3[("S3 data lake
bookshelf-uploads or analytics bucket")] S3 --> GL["Glue crawler
Data Catalog"] GL --> ATH["Athena
SQL on S3"] ATH --> QS["Amazon Quick Sight
dashboards"] S3 --> EMR["EMR or Glue ETL
large transforms"] EMR --> RS["Redshift
warehouse"] RS --> QS S3 --> SM["SageMaker AI
train and host models"] S3 --> BKB["Bedrock Knowledge Bases
RAG"] BKB --> BR["Bedrock models
AgentCore agents"] S3 --> AIS["Rekognition, Textract,
Transcribe, Comprehend"]
| Service | What it is for | CLI namespace | Status (checked 2026-10-01) |
|---|---|---|---|
Amazon Bedrock |
Foundation models behind one API, Knowledge Bases, Guardrails |
|
Generally available; Agents Classic closed to new customers 2026-07-30 |
Amazon Bedrock AgentCore |
Build, run and govern AI agents |
|
Generally available; the recommended agent platform |
Amazon SageMaker AI |
Build, train, deploy ML and foundation models |
|
Renamed from Amazon SageMaker on 2024-12-03 |
Amazon Q Developer / Kiro |
AI coding assistant and agentic IDE |
(IDE based) |
Q Developer IDE plugins end of support 2027-04-30 |
Rekognition, Textract, Transcribe, Polly, Comprehend, Lex |
Prebuilt vision, document, speech, language and chatbot APIs |
|
Available; some Comprehend and Rekognition features closed to new customers 2026-04-30 |
Amazon Kendra |
Enterprise search |
|
Closed to new customers 2026-07-30 |
Amazon Athena |
Serverless SQL over S3 |
|
Generally available |
AWS Glue, Lake Formation |
ETL, Data Catalog, crawlers, data-lake permissions |
|
Generally available; Glue for Ray closed to new customers 2026-04-30 |
Amazon Kinesis, Amazon Data Firehose, Managed Service for Apache Flink |
Streaming ingestion, delivery and processing |
|
Renamed services; Kinesis Data Analytics for SQL shut down 2026-01-27 |
Amazon EMR, Amazon Redshift |
Managed big-data frameworks, data warehouse |
|
Generally available |
Amazon Quick (Quick Sight) |
Business intelligence and AI assistant |
|
QuickSight evolved into Amazon Quick in 2025-2026 |
AWS IoT Core |
Device connectivity (MQTT), rules, device registry |
|
Generally available |
Amazon Bedrock
Amazon Bedrock is a fully managed service that exposes more than a hundred foundation models from Amazon and other
providers (the catalogue changes monthly) through a single, IAM-protected API, so an application can switch models by
changing a model or inference-profile identifier. New code should use the bedrock-runtime endpoint: the Converse
API is the provider-neutral call for text and multimodal chat, InvokeModel sends a provider-specific body, and the
endpoint also offers Anthropic Messages-compatible and OpenAI-compatible (Responses and Chat Completions) routes. Cross-Region inference
profiles (identifiers prefixed global., us., eu. and so on) spread requests over Regions for throughput. Around
inference, Bedrock adds Guardrails (content, prompt-attack, denied-topic and sensitive-information filters, also
callable on their own with apply-guardrail), model evaluation, batch inference (create-model-invocation-job),
prompt management, customization (fine-tuning, distillation) and provisioned throughput for steady high-volume use.
Access is controlled by IAM like any other service; short-term and long-term Bedrock API keys exist for quick starts, but
production code should use IAM roles and the default credential chain (see
Identity and access).
In the AWS Management Console
-
Open Amazon Bedrock and pick the Region from the selector (not every model is in every Region).
-
Choose Model catalog, select a model and review its model card (modalities, context window, Regions, quotas).
-
Open the Playground (chat or text), select the model and send a prompt to see the response and token counts.
-
Use Guardrails to create a guardrail and attach it in the playground, or Knowledge Bases for retrieval (below).
With the AWS CLI
export AWS_REGION=us-east-1
# What is available in this Region?
aws bedrock list-foundation-models --by-provider anthropic \
--query 'modelSummaries[].modelId' --output text
# Cross-Region inference profiles you can call
aws bedrock list-inference-profiles \
--query 'inferenceProfileSummaries[].inferenceProfileId' --output text
# First request: take any identifier printed above
MODEL_ID="<paste-a-model-or-inference-profile-id>"
aws bedrock-runtime converse \
--model-id "$MODEL_ID" \
--messages '[{"role":"user","content":[{"text":"Summarise what a Bookshelf catalog is in one sentence."}]}]' \
--query 'output.message.content[0].text' --output text
See the converse command reference and
the Bedrock quickstart.
From Java, the AWS SDK for Java 2.x BedrockRuntimeClient wraps the same call; Spring applications normally go through
Spring AI instead, which is covered in Integrating with Spring AI.
import software.amazon.awssdk.services.bedrockruntime.BedrockRuntimeClient;
import software.amazon.awssdk.services.bedrockruntime.model.ContentBlock;
import software.amazon.awssdk.services.bedrockruntime.model.ConversationRole;
import software.amazon.awssdk.services.bedrockruntime.model.Message;
try (BedrockRuntimeClient client = BedrockRuntimeClient.create()) { // default credential chain
String answer = client.converse(r -> r
.modelId(System.getenv("MODEL_ID"))
.messages(Message.builder()
.role(ConversationRole.USER)
.content(ContentBlock.fromText("Recommend a book about distributed systems."))
.build()))
.output().message().content().get(0).text();
System.out.println(answer);
}
See the Converse API guide.
Knowledge Bases and retrieval-augmented generation
Amazon Bedrock Knowledge Bases is the managed retrieval-augmented generation (RAG) pipeline: it ingests documents from
S3 and other sources, chunks and embeds them, stores the vectors in a vector store you choose (Aurora PostgreSQL with
pgvector, OpenSearch Serverless or Managed Cluster, Amazon S3 Vectors, and others), and answers with retrieve or
retrieve-and-generate. The concepts it automates (chunking, embeddings, ANN indexes, reranking, evaluation) are explained
vendor-neutrally in RAG fundamentals,
document ingestion and chunking and
PostgreSQL with pgvector; choosing the store is covered in
comparing vector databases and, for the AWS options,
Managed databases overview and
OpenSearch and search. Amazon Kendra’s GenAI index was the earlier route; AWS now
points new work at Knowledge Bases.
First step. Console: Bedrock → Knowledge Bases → Create, point it at an S3 bucket holding book descriptions and select a vector store. CLI: list what exists with the command below, then query a knowledge base.
aws bedrock-agent list-knowledge-bases --query 'knowledgeBaseSummaries[].[name,knowledgeBaseId,status]' --output table
aws bedrock-agent-runtime retrieve \
--knowledge-base-id "$KB_ID" \
--retrieval-query text="books about event-driven architecture" \
--query 'retrievalResults[].content.text'
See Knowledge Bases for Amazon Bedrock and the
retrieve reference.
Agents: AgentCore and Agents Classic
Amazon Bedrock AgentCore is the platform for building, deploying and operating agents with any framework and any model. Its modular services include a managed agent Harness, a serverless Runtime with isolated sessions, Memory, Gateway (turns APIs and Lambda functions into Model Context Protocol tools), Identity, a Code Interpreter sandbox, a managed Browser, Observability (OpenTelemetry-based, through CloudWatch), Evaluations, Policy and a Registry. The original Amazon Bedrock Agents was renamed Agents Classic, is in maintenance mode, and has not been open to new customers since 2026-07-30; AWS recommends AgentCore for new agents. The generic agent and agent-memory patterns are in agentic RAG and agent memory and semantic cache.
First step. Console: Bedrock AgentCore in the console navigation, or the AgentCore CLI described in its developer guide. CLI: list the agent runtimes of the account.
aws bedrock-agentcore-control list-agent-runtimes
Least-privilege IAM for Bedrock
An application role that may only call two models needs bedrock:InvokeModel (and, for streaming,
bedrock:InvokeModelWithResponseStream) on those model and inference-profile resources, nothing else. Cross-Region
inference profiles need permission on both the profile and the foundation-model ARNs in every Region the profile can route
to.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream"],
"Resource": [
"arn:aws:bedrock:*::foundation-model/<model-id>",
"arn:aws:bedrock:us-east-1:111122223333:inference-profile/<inference-profile-id>"
]
}
]
}
Amazon SageMaker AI and the next generation of SageMaker
Amazon SageMaker AI is the managed ML platform for building, training and hosting your own models or customising
foundation models: notebooks and IDEs in SageMaker Studio, managed training jobs, real-time, serverless, asynchronous and
batch inference endpoints, Pipelines for MLOps, JumpStart (pre-trained models and solution templates), Canvas (no-code ML)
and HyperPod for large training clusters. Two naming facts cause most confusion. First, on 2024-12-03 the original Amazon
SageMaker was renamed Amazon SageMaker AI; APIs, the aws sagemaker CLI group, IAM prefixes (AmazonSageMaker…),
CloudFormation AWS::SageMaker:: types and console URLs did not change. Second, the same day AWS launched a next
generation of Amazon SageMaker: a unified data, analytics and AI platform that brings SageMaker AI, SageMaker Lakehouse
(open-table-format access across S3 and Redshift), SageMaker Catalog and governance (built on DataZone), SQL analytics
(Redshift), data processing (Athena, EMR, Glue) and SageMaker Unified Studio into one environment, alongside Bedrock.
For a plain "train and host a model" job, you still want SageMaker AI; for a data-and-AI team workspace, look at Unified
Studio. A group of lesser-used SageMaker AI features entered maintenance during 2026, so check the lifecycle page before
adopting Ground Truth, Model Monitor, Debugger, Clarify or Augmented AI.
First step. Console: Amazon SageMaker AI → Studio (or Unified Studio for the platform), create a domain with an IAM role, open JumpStart and deploy a pre-trained model to an endpoint. CLI: inspect what exists.
aws sagemaker list-domains --query 'Domains[].[DomainName,Status]' --output table
aws sagemaker list-endpoints --query 'Endpoints[].[EndpointName,EndpointStatus]' --output table
aws sagemaker-runtime invoke-endpoint --endpoint-name "$ENDPOINT" \
--content-type application/json --cli-binary-format raw-in-base64-out \
--body '{"inputs":"hello"}' out.json
See What is Amazon SageMaker AI? and the
sagemaker command reference. Real-time endpoints
bill while they exist, so delete them when finished (see Clean up).
AI assistants for builders: Amazon Q Developer and Kiro
Amazon Q Developer was the AWS coding assistant (IDE plugins, console chat, command-line help). AWS announced that the Q Developer IDE plugins and paid subscriptions reach end of support on 2027-04-30, that new sign-ups stopped in May 2026, and that Kiro, a spec-driven, agentic IDE with Model Context Protocol support, is the recommended replacement. Amazon Q Business (the workplace assistant) moved into maintenance in July 2026 with Amazon Quick as the successor. None of these are needed to run the services on this page; they are developer tools, so see Developer tools and DevOps for the IDE and CI/CD side. First step. Install Kiro from its official site and follow the Q Developer migration guide linked below; there is no AWS CLI command.
Prebuilt AI services
The prebuilt services are single-purpose APIs: you send an image, document, audio file or text and get structured JSON back, with no model to train. They remain the cheapest and most predictable route when the task matches one of them, and a foundation model through Bedrock is the alternative when it does not. All of them read inputs from S3 (so the bucket policy and KMS key must allow the calling role) and publish asynchronous results to S3 or SNS.
Rekognition (images and video)
Amazon Rekognition detects labels, faces, text in images and video, celebrities, unsafe content and custom labels.
For Bookshelf it can flag unsuitable cover uploads and propose alt text from detected labels, called from the S3-triggered
thumbnailer Lambda (see Lambda: event-driven apps).
Text detection in video (start-text-detection) is asynchronous. The streaming-events and batch image content-moderation
features moved to maintenance on 2026-04-30 and are closed to new customers.
aws rekognition detect-labels \
--image "S3Object={Bucket=$BUCKET,Name=covers/book-1.jpg}" --max-labels 5 \
--query 'Labels[].[Name,Confidence]' --output table
aws rekognition detect-text \
--image "S3Object={Bucket=$BUCKET,Name=covers/book-1.jpg}" \
--query 'TextDetections[?Type==`LINE`].DetectedText'
Console: Rekognition → Label detection (or Text in image), upload a file and read the JSON. See What is Amazon Rekognition?.
Textract (documents)
Amazon Textract extracts printed and handwritten text, forms (key-value pairs), tables, signatures and layout geometry
(bounding boxes and page positions of each word or line) from scans and PDFs, with queries and an expense/ID-specific API.
detect-document-text is the cheapest call; analyze-document adds FORMS, TABLES, QUERIES and LAYOUT;
multi-page PDFs use the asynchronous start-document-analysis.
aws textract analyze-document \
--document "S3Object={Bucket=$BUCKET,Name=invoices/inv-001.png}" \
--feature-types FORMS TABLES \
--query 'Blocks[?BlockType==`KEY_VALUE_SET`] | length(@)'
Console: Textract → Analyze document. See What is Amazon Textract?.
Transcribe (speech to text)
Amazon Transcribe converts audio and video to text in batch or streaming mode, with speaker diarization, language
identification, custom vocabularies, redaction and call analytics. A separate medical variant, Amazon Transcribe Medical,
targets clinical dictation and conversations by specialty (start-medical-transcription-job).
aws transcribe start-transcription-job \
--transcription-job-name bookshelf-podcast-001 \
--media "MediaFileUri=s3://$BUCKET/audio/episode-1.mp3" \
--identify-language --output-bucket-name "$BUCKET"
aws transcribe get-transcription-job --transcription-job-name bookshelf-podcast-001 \
--query 'TranscriptionJob.TranscriptionJobStatus'
Console: Transcribe → Transcription jobs → Create job. See What is Amazon Transcribe?.
Polly (text to speech)
Amazon Polly turns text into lifelike speech in many languages, with standard, neural, long-form and generative voice engines (availability varies by voice and Region), speech marks and SSML (Speech Synthesis Markup Language) for pauses, emphasis and pronunciation. It fits an "audio preview" button in Bookshelf.
aws polly describe-voices --language-code en-US --query 'Voices[].[Id,SupportedEngines]' --output text
aws polly synthesize-speech --engine neural --voice-id "$VOICE_ID" --output-format mp3 \
--text-type ssml --text '<speak>Welcome to <emphasis>Bookshelf</emphasis>.</speak>' welcome.mp3
Console: Polly → Text-to-Speech. See What is Amazon Polly?.
Comprehend (language) and Comprehend Medical
Amazon Comprehend analyses text: entities, key phrases, sentiment, language, syntax, custom classification and custom
entity recognition, and PII detection and redaction, which is the most useful feature for logs and customer messages
(detect-pii-entities for short text, start-pii-entities-detection-job to redact files in S3). Amazon Comprehend
Medical extracts medical entities, ICD-10-CM, RxNorm and SNOMED CT codes and protected health information. Topic modeling,
event detection and prompt safety classification are closed to new customers since 2026-04-30; AWS suggests Bedrock models
for topics and events and Bedrock Guardrails for prompt safety.
aws comprehend detect-pii-entities --language-code en \
--text "Contact Ana Ruiz at ana@example.com" \
--query 'Entities[].[Type,Score]' --output table
Console: Comprehend → Real-time analysis. See What is Amazon Comprehend? and the Comprehend availability change.
Lex (chatbots)
Amazon Lex V2 builds conversational interfaces (text and voice) from intents, slots and utterances, with Lambda
fulfilment hooks and integration with Amazon Connect. A "track my order" bot for Bookshelf would fulfil through the
orders-api. Use the V2 CLI groups; the V1 interfaces are legacy. For free-form questions a Bedrock model or Knowledge Base
is now usually a better fit than hand-written intents.
aws lexv2-models list-bots --query 'botSummaries[].[botName,botStatus]' --output table
Console: Amazon Lex → Bots → Create bot. See What is Amazon Lex V2?.
Kendra (enterprise search, closed to new customers)
Amazon Kendra is a managed semantic search service over connected repositories. It went into maintenance on 2026-06-30 and has not been open to new customers since 2026-07-30; AWS recommends Bedrock Knowledge Bases for similar capability, and OpenSearch for classic search. Existing indexes keep working and bill while they exist.
aws kendra list-indices --query 'IndexConfigurationSummaryItems[].[Name,Id,Status]' --output table
Analytics and data lakes
The AWS analytics pattern is a data lake on S3 (cheap, durable, open formats such as Parquet and Apache Iceberg) described by a catalog, queried by whichever engine fits, and secured by one permission layer. S3 itself is covered in S3 object storage.
Athena
Amazon Athena runs standard SQL (Trino-based) and Apache Spark directly over data in S3: no servers, results in seconds for ad-hoc work, tables defined in the Glue Data Catalog, and charges by data scanned (SQL) or compute used (Spark). Store data as compressed, partitioned Parquet or Iceberg to scan less and pay less. Query results land in an S3 location you configure in a workgroup, which can also cap per-query data scanned.
QID=$(aws athena start-query-execution \
--query-string "SELECT status, count(*) AS n FROM bookshelf_logs.orders GROUP BY status" \
--work-group primary \
--result-configuration "OutputLocation=s3://$BUCKET/athena-results/" \
--query QueryExecutionId --output text)
aws athena get-query-execution --query-execution-id "$QID" --query 'QueryExecution.Status.State'
aws athena get-query-results --query-execution-id "$QID" --query 'ResultSet.Rows[].Data[].VarCharValue'
Console: Athena → Query editor, set the results location once, then run SQL. See the
Athena user guide and the
start-query-execution reference.
AWS Glue: crawlers, Data Catalog, ETL and DataBrew
AWS Glue is the serverless data-integration service. Its Data Catalog is the central metadata store (databases, tables, schemas, partitions) that Athena, EMR and Redshift Spectrum all read. Crawlers scan S3 and other sources, infer the schema and create or update catalog tables. ETL jobs (Apache Spark, Python shell, or visually in Glue Studio) move and transform data, with triggers and workflows for orchestration, interactive sessions and notebooks, data quality rules and sensitive-data detection. AWS Glue DataBrew is the separate visual, no-code tool for profiling and cleaning data. Glue for Ray jobs closed to new customers on 2026-04-30.
aws glue create-database --database-input Name=bookshelf_logs
aws glue create-crawler --name bookshelf-orders-crawler \
--role "arn:aws:iam::$ACCOUNT_ID:role/GlueCrawlerRole" \
--database-name bookshelf_logs \
--targets "S3Targets=[{Path=s3://$BUCKET/orders/}]"
aws glue start-crawler --name bookshelf-orders-crawler
aws glue get-tables --database-name bookshelf_logs --query 'TableList[].Name'
Console: Glue → Crawlers → Create crawler, then Tables. For DataBrew: DataBrew → Datasets → Connect new dataset
(aws databrew list-datasets). See What is AWS Glue? and
What is AWS Glue DataBrew?.
Lake Formation
AWS Lake Formation is the permission layer on top of the Glue Data Catalog: column-, row- and cell-level grants for principals across Athena, Redshift Spectrum, EMR and Glue, plus cross-account sharing, so data access is governed in one place rather than in many bucket policies. The IAM and S3 foundations are in Identity and access and S3 security.
aws lakeformation get-data-lake-settings
aws lakeformation list-permissions --resource-type TABLE --max-results 10
Kinesis, Amazon Data Firehose and Managed Service for Apache Flink
Streaming has three roles. Amazon Kinesis Data Streams is the partitioned, replayable log (shards or on-demand mode); Amazon Data Firehose (renamed from Kinesis Data Firehose) is the no-code delivery service that buffers a stream or direct puts and writes to S3, Redshift, OpenSearch, Iceberg tables or HTTP endpoints, optionally transforming with Lambda and converting to Parquet; and Amazon Managed Service for Apache Flink (the successor of Kinesis Data Analytics, with Studio notebooks) runs stateful Flink applications in Java, Python, Scala or SQL. Kinesis Data Analytics for SQL applications were shut down on 2026-01-27. When to choose Kinesis over SQS, SNS, EventBridge or MSK is covered in Messaging and integration; this section is the analytics side.
aws kinesis create-stream --stream-name bookshelf-clicks --stream-mode-details StreamMode=ON_DEMAND
aws kinesis put-record --stream-name bookshelf-clicks --partition-key user-42 \
--cli-binary-format raw-in-base64-out --data '{"page":"/books/1"}'
cat > firehose.json <<EOF
{
"RoleARN": "arn:aws:iam::$ACCOUNT_ID:role/FirehoseDeliveryRole",
"BucketARN": "arn:aws:s3:::$BUCKET",
"Prefix": "clicks/",
"BufferingHints": { "IntervalInSeconds": 120, "SizeInMBs": 64 }
}
EOF
aws firehose create-delivery-stream --delivery-stream-name bookshelf-clicks-to-s3 \
--delivery-stream-type DirectPut --extended-s3-destination-configuration file://firehose.json
aws kinesisanalyticsv2 list-applications
Console: Kinesis → Data streams → Create, Amazon Data Firehose → Create Firehose stream, Managed Apache Flink → Create application. See Kinesis Data Streams concepts, What is Amazon Data Firehose? and What is Managed Service for Apache Flink?.
EMR
Amazon EMR runs open-source big-data frameworks (Apache Spark, Hadoop, Hive, Flink, Presto/Trino and more) as managed clusters on EC2 (long-running or transient), on EKS, or serverless with EMR Serverless. Choose EMR when you need framework-level control, custom libraries or very large Spark jobs; choose Glue or Athena when serverless SQL or ETL is enough. Transient clusters that terminate when the step finishes keep cost down.
aws emr list-release-labels --query 'ReleaseLabels[0:3]'
aws emr-serverless list-applications --query 'applications[].[name,id,state]' --output table
Console: EMR → EMR Serverless → Get started is the shortest path. See What is Amazon EMR?.
Redshift
Amazon Redshift is the columnar, massively parallel data warehouse for complex SQL over structured data at scale. It comes
as Redshift Serverless (namespaces and workgroups, billed on capacity used) or provisioned clusters, queries S3 data in
place with Spectrum, loads with COPY, shares data across accounts, and is the SQL engine inside SageMaker. The Redshift
Data API runs SQL over HTTPS with IAM, no driver or connection needed. For a plain operational database see
RDS and Aurora; for the comparison with other engines see
choosing the right database.
aws redshift-serverless list-workgroups --query 'workgroups[].[workgroupName,status]' --output table
aws redshift-data execute-statement --workgroup-name "$WORKGROUP" --database dev --sql "select current_date"
Console: Redshift → Serverless dashboard → Create workgroup (check the base-capacity default before accepting it). See Getting started with Amazon Redshift Serverless.
Amazon Quick (Quick Sight)
Amazon QuickSight is the business-intelligence service: datasets from Athena, Redshift, S3, RDS and SaaS sources, the
SPICE in-memory engine, interactive dashboards, embedding in applications, row-level security and paginated reports. On
2025-10-09 AWS announced its evolution into Amazon Quick Suite, and the product is now called Amazon Quick: an AI
workspace with agents, research, flows, automation and an index, in which Amazon Quick Sight continues as the
visualisation and BI feature. Existing QuickSight APIs, SDKs, CLI (aws quicksight) and integrations keep working
unchanged. Pricing is per user (plus capacity options), not per resource, so unused subscriptions still cost money.
aws quicksight describe-account-subscription --aws-account-id "$ACCOUNT_ID"
aws quicksight list-dashboards --aws-account-id "$ACCOUNT_ID" \
--query 'DashboardSummaryList[].[Name,DashboardId]' --output table
Console: sign up from the Amazon Quick page or provision it from the console with IAM Identity Center, then Datasets → New dataset → Athena. See What is Amazon Quick?.
IoT
AWS IoT Core connects devices to AWS over MQTT (also MQTT over WebSockets and HTTPS), with X.509 certificates and IoT
policies for per-device authentication, a thing registry, device shadows (last reported and desired state), rules
that route messages to Lambda, S3, DynamoDB, Kinesis, SQS and others, and jobs for fleet updates. AWS IoT Greengrass
runs the same logic on edge devices. Bookshelf has no devices, but a connected book-return kiosk would publish scans to
bookshelf/kiosk/<id>/scans and a rule would write them to Firehose. Services built around IoT also moved: AWS IoT
FleetWise went into maintenance on 2026-04-30 (closed to new customers), AWS Panorama ended support on 2026-05-31, and
Amazon Lookout for Equipment ends on 2026-10-07.
aws iot describe-endpoint --endpoint-type iot:Data-ATS
aws iot-data publish --topic bookshelf/kiosk/demo/scans --qos 1 \
--cli-binary-format raw-in-base64-out --payload '{"isbn":"example"}'
Console: IoT Core → Connect → Connect one device walks through certificates, policy and a test client (MQTT test client). See What is AWS IoT?.
Other business and end-user services
Several services that appear in AWS service catalogues are neither AI nor analytics; they get one line each so no name
is left unexplained. Amazon Connect is a cloud contact centre (aws connect list-instances) that integrates with Lex
and Bedrock. Amazon WorkSpaces provides managed virtual desktops (aws workspaces describe-workspaces);
Amazon WorkSpaces Applications (formerly AppStream 2.0, CLI group still appstream) streams individual desktop
applications to a browser; and Amazon WorkSpaces Secure Browser (aws workspaces-web list-portals) gives a managed,
isolated browser for internal web apps, which moves to maintenance on 2026-10-29 (closed to new customers). AWS AppSync
is the managed GraphQL and publish/subscribe API layer (aws appsync list-graphql-apis); the REST/HTTP counterparts are in
API Gateway. AWS Amplify is the front-end and full-stack hosting toolkit, summarised in
Developer tools and DevOps, while static sites that you assemble yourself
are in S3 security and static hosting. Amazon Pinpoint (marketing
messaging) reaches end of support on 2026-10-30; use SES for email (SES email) and AWS End
User Messaging for SMS and push (Messaging and integration). Hybrid and
migration services (DMS, Schema Conversion, Snow Family, Outposts) are in
Architecture, migration and hybrid. Each has an official page under
docs.aws.amazon.com linked in the references below.
Security and operations
All services on this page follow the same rules as the rest of the section:
-
Authenticate with IAM roles (task roles, Lambda execution roles, EKS Pod Identity, SageMaker execution roles), never long-lived keys; see Identity and access.
-
Give each service its own role with a trust policy for that service principal, such as
glue.amazonaws.com,firehose.amazonaws.comorbedrock.amazonaws.com, and only the S3 prefixes and KMS keys it needs (Secrets Manager and KMS). -
Keep traffic private with VPC endpoints (Bedrock, SageMaker, Athena, Glue, Kinesis and S3 all offer them; see VPC networking) and encrypt S3 data, query results and streams with KMS.
-
Review data-handling terms: Bedrock does not use your prompts and completions to train the base models, but some other services have opt-out controls for content use, which the service FAQ and the AWS AI services opt-out policy describe.
-
Log API activity with CloudTrail and watch spend with budgets; see Monitoring and observability and Cost management and support.
-
Apply organisation-wide guardrails (service control policies that restrict which Bedrock models or Regions may be used) as described in Accounts and organizations and Governance, security and compliance.
Pricing model
Prices change and differ by Region, so none are stated here; use the official pricing pages in the references (checked 2026-10-01) and the AWS Pricing Calculator. The cost drivers by service:
| Service | What you pay for |
|---|---|
Bedrock |
Input and output tokens per model (on-demand), a lower rate for batch, or hourly provisioned throughput; Knowledge Bases add the vector store, embeddings and storage; Guardrails are charged per processed text unit |
AgentCore |
Consumption-based per service (runtime compute time, memory, gateway calls and so on), with no upfront commitment |
SageMaker AI |
Instance hours for notebooks, training, endpoints and processing (endpoints bill 24x7 while they exist); serverless and asynchronous endpoints bill by use; storage and data transfer |
Rekognition, Textract, Transcribe, Polly, Comprehend |
Per image, page, audio minute, character or unit of text analysed; custom models add training and hosting time |
Kendra |
Provisioned index hours (even when empty) plus connector scans |
Athena |
SQL: per TB of data scanned (partitioning and Parquet cut it); Spark: compute capacity used |
Glue |
Per DPU-hour for jobs and crawlers, a catalog fee beyond a free tier of objects, DataBrew per node-hour |
Kinesis, Firehose |
Streams: on-demand per GB in and out or provisioned shard-hours plus extra for enhanced fan-out and long retention; Firehose per GB ingested plus format conversion |
Managed Flink |
Per Kinesis Processing Unit-hour (KPU) of running applications |
EMR, Redshift |
EMR: EC2 plus an EMR surcharge, or vCPU and memory per second on Serverless; Redshift: capacity (RPU-hours) or node-hours plus managed storage |
Amazon Quick |
Per-user subscriptions by role and plan plus optional capacity pricing |
IoT Core |
Connectivity minutes, messages, rules triggered and registry or shadow operations |
The recurring surprises are idle resources that bill continuously (SageMaker endpoints, Kendra indexes, provisioned Redshift or EMR clusters, Quick subscriptions) and unpartitioned CSV scanned repeatedly by Athena. Tag resources and set budgets before experimenting.
Limits and quotas
Every service here has Regional, adjustable and non-adjustable quotas; read them in the Service Quotas console or with
aws service-quotas list-service-quotas --service-code <code>, and request increases before a launch rather than during
one. The ones that most often bite are Bedrock requests-per-minute and tokens-per-minute (per model and per Region, and
very low on new accounts), SageMaker instance-type quotas that default to zero for GPU families, Athena concurrent queries
and per-query limits, Glue concurrent job runs, Kinesis shard throughput (1 MB/s or 1,000 records/s of writes per shard),
Firehose delivery limits and Textract or Transcribe concurrent job limits. See
Service Quotas and each service’s
quotas page in the references.
Recent changes and retired services
Dates below were verified against the official lifecycle and availability pages on 2026-10-01. The authoritative source is the AWS service lifecycle page. "Closed to new customers" means existing accounts keep using the service.
| Service or feature | Date | Change and what to use instead |
|---|---|---|
Kinesis Data Firehose |
2024 |
Renamed Amazon Data Firehose |
Amazon SageMaker |
2024-12-03 |
Renamed SageMaker AI; next-generation SageMaker and Unified Studio launched the same day |
Kinesis Data Analytics |
renamed 2023-2024 |
Now Managed Service for Apache Flink; SQL applications shut down 2026-01-27 |
Amazon Lookout for Vision, Lookout for Metrics |
2025-10-31, 2025-10-10 |
Ended; use SageMaker AI or partner solutions |
Amazon QuickSight |
2025-10-09 and 2026 |
Evolved into Amazon Quick Suite, now Amazon Quick; Quick Sight remains the BI feature |
Comprehend: topic modeling, event detection, prompt safety |
2026-04-30 |
Closed to new customers; use Bedrock models and Bedrock Guardrails |
Rekognition: streaming events, batch image content moderation |
2026-04-30 |
Closed to new customers |
Glue for Ray |
2026-04-30 |
Closed to new customers |
IoT FleetWise |
2026-04-30 |
Maintenance, closed to new customers |
AWS Panorama |
2026-05-31 |
Support ended |
Amazon Kendra |
2026-07-30 |
Closed to new customers; use Bedrock Knowledge Bases |
Amazon Bedrock Agents (now Agents Classic) |
2026-07-30 |
Closed to new customers; use AgentCore |
Amazon Q Business |
July 2026 |
Closed to new customers; use Amazon Quick |
Several SageMaker AI features (for example Ground Truth, Model Monitor, Debugger, Clarify, A2I) |
July 2026 |
Maintenance; check the lifecycle page for exact scope and dates |
Amazon Pinpoint |
2026-10-30 |
End of support; use SES and AWS End User Messaging |
Amazon Lookout for Equipment |
2026-10-07 |
Support ends |
WorkSpaces Secure Browser |
2026-10-29 |
Moves to maintenance, closed to new customers |
Amazon Q Developer IDE plugins |
2027-04-30 |
End of support; use Kiro |
Open model catalogues also change fast: Bedrock added Anthropic, OpenAI, xAI, DeepSeek and other families during 2026,
and exposes newer models through the same bedrock-runtime calls, so list models at run time instead of hard-coding
identifiers.
Where older guides differ
Older tutorials and certification material predate much of the above. Expect to correct these: Kinesis Data Firehose and
Kinesis Data Analytics are no longer the names; QuickSight is now part of Amazon Quick; SageMaker is SageMaker AI and sits
inside a larger platform; Bedrock is now a model, retrieval and guardrail platform with AgentCore rather than a short
model list; Kendra is closed to new customers; Pinpoint is ending; and guides that start every setup with IAM-user access
keys should be replaced with IAM Identity Center, aws login or CloudShell (see
Getting started). AWS Glue DataBrew and the S3 plus Glue crawler plus Athena
pattern are unchanged and still current.
Clean up
Everything above is for illustration; remove anything you created, in dependency order, because several of these resources bill while idle:
# SageMaker AI: endpoints first, then config and model
aws sagemaker delete-endpoint --endpoint-name "$ENDPOINT"
aws sagemaker delete-endpoint-config --endpoint-config-name "$ENDPOINT"
aws sagemaker delete-model --model-name "$MODEL_NAME"
# Bedrock Knowledge Base: data sources first, then the base, then its vector store
aws bedrock-agent delete-data-source --knowledge-base-id "$KB_ID" --data-source-id "$DS_ID"
aws bedrock-agent delete-knowledge-base --knowledge-base-id "$KB_ID"
# Streaming and ETL
aws firehose delete-delivery-stream --delivery-stream-name bookshelf-clicks-to-s3
aws kinesis delete-stream --stream-name bookshelf-clicks --enforce-consumer-deletion
aws glue delete-crawler --name bookshelf-orders-crawler
aws glue delete-database --name bookshelf_logs
# Speech and results
aws transcribe delete-transcription-job --transcription-job-name bookshelf-podcast-001
aws s3 rm "s3://$BUCKET/athena-results/" --recursive
# Analytics compute
aws emr-serverless stop-application --application-id "$APP_ID"
aws emr-serverless delete-application --application-id "$APP_ID"
aws redshift-serverless delete-workgroup --workgroup-name "$WORKGROUP"
aws redshift-serverless delete-namespace --namespace-name "$NAMESPACE"
Also delete the IAM roles you created for Glue and Firehose, the Kendra index (aws kendra delete-index) if you made one,
and the Amazon Quick subscription (from Manage account → Account settings, as a Quick administrator), because Quick
bills per user. Delete a versioned S3 bucket only after emptying all versions, as described in
S3 object storage.
Related pages
-
Vector databases and RAG and Integrating with Spring AI for Bedrock from Spring.
-
Managed databases overview and OpenSearch and search for vector stores.
-
Messaging and integration for Kinesis versus SQS, SNS and EventBridge.
-
S3 object storage for the data-lake storage layer.
-
Cost management and support for budgets and cost drivers.
-
Azure: AI, data and IoT services overview for the Azure counterparts.