开始使用 Managed Streaming for Kafka (MSK) Serverless 版本

一、背景

MSK的Serverless版本简单易用,无须设置大量复杂参数,点击几下鼠标,五分钟内即可创建完毕,可快速开始使用。

MSK Serverless默认是2个可用区,使用IAM认证,并开启TLS认证。因此需要在Kafka的客户端做额外配置。本文讲解如何连接到MSK Serverless版本。

Continue reading “开始使用 Managed Streaming for Kafka (MSK) Serverless 版本”

创建低成本的工作在VPC内网的OpenSearch单节点并配置用户名密码身份验证

摘要:本文介绍如何快速创建一个低成本的、工作在VPC内网的OpenSearch单节点集群,并允许Master用户密码身份验证,然后测试上传文档和搜索,并分别在VPC内网的EC2 Windows和开发者本机用Session Manager转发方式访问Kibana。

Continue reading “创建低成本的工作在VPC内网的OpenSearch单节点并配置用户名密码身份验证”

使用Athena分析在S3上的WAF Log

一、背景

在使用WAF保护业务系统的过程中,经常需要查询历史日志,分析特定防护对象的防护效果,查看拦截的请求,或查看访问特定URL的防护效果。这时候就需要用到WAF日志功能。

AWS WAF支持将日志输出到CloudWatch Log Groups,Kinesis,以及S3。将日志输出到CloudWatch Log Groups使用方便,但是存储成本高;将日志输出到Kinesis后可连接多种投递方式,灵活且延迟低,但技术架构稍微复杂。将WAF日志存储到S3数据湖,可实现最低低成本储存日志,通过Athena可快速方便查询。

Continue reading “使用Athena分析在S3上的WAF Log”

在Redshift上使用comment语句

一、背景

Redshift是用于大量数据分析的列式数据仓库。Redshift并不支持所有PostgreSQL的语法。

关于Redshift支持的的限制,可参考这里 Unsupported PostgreSQL functions 的文档。

在这篇文章中,明确提到Comment information functions是不被支持的。

不过,在Redshift上可使用comment命令来为数据库的表、列添加注释。

Continue reading “在Redshift上使用comment语句”

Redshift 跨库查询使用方法

一、背景

Redshift默认会创建名为dev的数据库,在其中又包含名为public的schema,然后用户在其中创建表和视图。如果希望在同一个Redshift集群内同时创建多个数据库,并且进行跨数据库访问,那么可参照本文的方法。

注:本功能仅支持RA3机型,老的dc2/ds2机型上不支持。

Continue reading “Redshift 跨库查询使用方法”

Kinesis入门之三部曲系列

注:2024年2月起,Kinesis Data Firehose也成为了独立产品Data Firehose。再加上之前成为独立产品的Managed Flink,Kinesis的三套件目前都成为了独立产品。

之前很多同学觉得Kinesis比较复杂,这里做一系列入门实验,方便快速采纳服务。点击每个标题后的连接跳转到对应文档。

典型的Kinesis数据流如下图。

场景1:KDF准实时流式入湖(1分钟级)+ 低频查询

使用Kinesis Data Firehose将数据导入S3数据湖,设置分区键,并转换为Parquet列格式。通过Athena可以极低的开销做低频查询。本方案成本低效果好,对现有系统不侵入,可作为现有大数据分析手段的补充。点击跳转:文档视频

场景2:KDF准实时流式入仓(1分钟级)+ 高频查询

使用Kinesis Data Firehose将原始数据以GZIP压缩方式在S3落盘,并按照60秒的间隔自动加载到数Redshift数据仓库。Redshift为MPP架构分布式数仓,支持通过JDBC方式调用,满足BI系统多并发的高频查询要求。点击跳转:文档

场景3:KDS实时流式入仓(秒级)+ 高频查询

使用Kinesis Data Stream将原始数据放在Kinesis流中,可使用多种消费方式包括KDA(托管Flink)、Redshift等方式消费。本方案采用Redshift的物化视图方式对Kinesis数据流进行消费,并通过自动刷新物化视图实现秒级的延迟。Redshift可满足BI系统多并发的高频查询要求。点击跳转:文档

Redshift Realtime Ingress 实时数据摄入之Kinesis Data Stream方案

注:2024年2月起,Kinesis Data Firehose也成为了独立产品Data Firehose。再加上之前成为独立产品的Managed Flink,Kinesis的三套件目前都成为了独立产品。

一、背景

Redshift实时数据摄取功能是面向需要实时数据分析客户、对报表低延迟要求极高的客户的最佳选择之一。与使用Data Firehose相比,延迟从1分钟到1分半提升到秒级。

Continue reading “Redshift Realtime Ingress 实时数据摄入之Kinesis Data Stream方案”

Kinesis Data Firehose 准实时写入数据到Redshift方案

注:2024年2月起,Kinesis Data Firehose也成为了独立产品Data Firehose。再加上之前成为独立产品的Managed Flink,Kinesis的三套件目前都成为了独立产品。

一、背景

Kinesis作为AWS流式数据服务的核心产品,支持多种数据服务作为投递对象。通过Kinesis Data Firehose将数据持久化落盘到S3并自动加载到Redshift数据仓库,可实现最低一分钟的分析间隔,且无需额外配置脚本或计划任务用于加载和数据转换。

本文通过自定义脚本生成测试数据,并加载到Redshift。

Continue reading “Kinesis Data Firehose 准实时写入数据到Redshift方案”

Kinesis Data Firehose 写入S3动态分区并转换为Parquet格式

注:2024年2月起,Kinesis Data Firehose也成为了独立产品Data Firehose。再加上之前成为独立产品的Managed Flink,Kinesis的三套件目前都成为了独立产品。

本文有关操作Demo请参考这个视频。本篇为具体技术配置过程。

一、背景和需求分析

1、Kinesis介绍

Kinesis简介From AWS官网:

Amazon Kinesis Data Firehose (KDF) 是将流数据加载到数据存储和分析工具的最简单方式。Kinesis Data Firehose是一项完全托管式服务,让您可以轻松地从数十万个来源中捕获、转换大量流数据,并将其加载到 Amazon S3、Amazon Redshift、Amazon OpenSearch Service、Kinesis Data Analytics、通用 HTTP 终端节点,以及 Datadog、New Relic、MongoDB 和 Splunk 等的服务提供商中,从而获得近乎实时的分析与见解。

2、Kinesis分区需求

测试Kinesis发送数据流时候,经常使用Kinesis控制台上的生成测试数据按钮,这个按钮将生成如下四个字段:

Continue reading “Kinesis Data Firehose 写入S3动态分区并转换为Parquet格式”

通过API查询Amazon OpenSearch服务(ElasticSearch)版本和可用机型

一、确认要使用的版本

Amazon OpenSearch Service 是一款开源的分布式搜索和分析套件,衍生自 Elasticsearch。Amazon OpenSearch Service 是 Amazon Elasticsearch Service 的后继者,提供最新版本的 OpenSearch,支持 19 个版本的 Elasticsearch(1.5 到 7.10 版本),并支持由 OpenSearch Dashboards 和 Kibana(1.5 到 7.10 版本)提供的可视化功能。

引擎版本差异在这里

至此的插件版本差异在这里

更多信息参考官网的FAQ页面这里(中文)。

Continue reading “通过API查询Amazon OpenSearch服务(ElasticSearch)版本和可用机型”

使用CloudTrail和Athena分析S3访问日志

本文更新于2023年8月,新增了对于大量CloudTrail历史数据,需要实现创建分区键的说明。否则按照CloudTrail控制台推荐的默认的Athena建表语句进行查询,将是针对数个GB数据的全表扫描带来不必要的成本。按照本文新增章节,创建带有分区键的Athena表,即可显著降低查询成本。分区键推荐采用Region和日期的方式。

一、背景

S3存储桶的文件读写日志包括Server Access Log和CloudTrail两种方式。二者之间的差别可参考如下网址:

https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/logging-with-S3.html

在官方上描述非常详细,可看到CloudTrail采集的信息更加丰富,因此本文将介绍使用CloudTrail做分析。如下截图。

Continue reading “使用CloudTrail和Athena分析S3访问日志”