신중한 고려 끝에 Amazon Kinesis Data Analytics for SQL 애플리케이션을 중단하기로 결정했습니다.
1. 2025년 9월 1일부터 Amazon Kinesis Data Analytics for SQL 애플리케이션에 대한 버그 수정은 제공되지 않습니다. 향후 중단될 예정이므로 지원이 제한되어 있기 때문입니다.
2. 2025년 10월 15일부터 새 Kinesis Data Analytics for SQL 애플리케이션을 생성할 수 없습니다.
3. 2026년 1월 27일부터 애플리케이션이 삭제됩니다. Amazon Kinesis Data Analytics for SQL 애플리케이션을 시작하거나 작동할 수 없게 됩니다. 그 시점부터 Amazon Kinesis Data Analytics for SQL에 대한 지원을 더 이상 이용할 수 없습니다. 자세한 내용은 Amazon Kinesis Data Analytics for SQL 애플리케이션 단종 단원을 참조하십시오.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
예: 문자열 값 변환
Amazon Kinesis Data Analytics는 스트리밍 소스 상의 레코드에 대해 JSON 및 CSV와 같은 형식을 지원합니다. 자세한 설명은 RecordFormat 섹션을 참조하십시오. 그런 다음 이들 레코드를 입력 구성에 따라 애플리케이션 내 스트림에 있는 행에 매핑합니다. 자세한 설명은 애플리케이션 입력 구성 섹션을 참조하십시오. 입력 구성에서는 스트리밍 소스에 있는 레코드 필드를 애플리케이션 내 스트림에 있는 열로 매핑하는 방식을 지정합니다.
이 매핑은 스트리밍 소스 상의 레코드가 지원 형식에 따를 때 작동하며, 애플리케이션 내 스트림이 정규화된 데이터로 채워집니다. 그러나 스트리밍 소스상의 데이터가 지원 표준에 부합하지 않는 경우에는 어떻게 되겠습니까? 예를 들어, 스트리밍 소스에 클릭스트림 데이터, IoT 센서 및 애플리케이션 로그와 같은 데이터가 포함되어 있다면 어떻게 되겠습니까?
아래 예를 참조하십시오:
-
스트리밍 소스에 애플리케이션 로그가 포함된 경우 – 애플리케이션 로그는 표준 Apache 로그 형식에 따르고 JSON 형식을 사용하여 스트림에 기록됩니다.
{ "Log":"192.168.254.30 - John [24/May/2004:22:01:02 -0700] "GET /icons/apache_pb.gif HTTP/1.1" 304 0" }
표준 Apache 로그 형식에 관한 자세한 정보는 Apache 웹 사이트의 Log Files
를 참조하십시오. -
스트리밍 소스에 반정형 데이터가 포함된 경우 – 다음 예에 두 가지 레코드가 소개되어 있습니다.
Col_E_Unstructured
필드 값은 일련의 CSV(쉼표로 분리된 값)입니다. 5개 열 가운데 처음 4개는 문자열 유형의 값이고 마지막 열에는 CSV가 포함됩니다.{ "Col_A" : "string", "Col_B" : "string", "Col_C" : "string", "Col_D" : "string", "Col_E_Unstructured" : "value,value,value,value"} { "Col_A" : "string", "Col_B" : "string", "Col_C" : "string", "Col_D" : "string", "Col_E_Unstructured" : "value,value,value,value"}
-
스트리밍 소스의 레코드에는 URL이 포함되는데 분석을 위해서는 URL 도메인 명칭의 일부가 필요합니다.
{ "referrer" : "http://www.amazon.com"} { "referrer" : "http://www.stackoverflow.com" }
그와 같은 경우, 정규화된 데이터를 포함하는 애플리케이션 내 스트림 생성을 위해서는 일반적으로 다음과 같은 2단계의 프로세스가 요구됩니다.
-
비정형 필드를 생성되는 애플리케이션 내 입력 스트림의
VARCHAR(N)
유형 열에 매핑하도록 애플리케이션을 구성합니다. -
애플리케이션 코드에서 문자열 함수를 사용하여 이 단일 열을 복수 열로 분할한 다음 행을 또 다른 애플리케이션 내 스트림에 저장합니다. 애플리케이션 코드가 생성하는 이 애플리케이션 내 스트림은 정규화된 데이터를 가지게 됩니다. 그런 다음 애플리케이션 내 스트림에 있는 데이터에 대해 분석을 수행할 수 있습니다.
Amazon Kinesis Data Analytics는 문자열 열 작업을 수행할 수 있도록 다음과 같은 문자열 연산, 표준 SQL 함수, SQL 표준 확장을 제공합니다:
-
문자열 연산자 –
LIKE
와SIMILAR
같은 연산자는 문자열 비교에 유용합니다. 자세한 설명은 Amazon Managed Service for Apache Flink SQL 참조에서 문자열 연산자를 참조하십시오. -
SQL 함수 – 다음 함수는 개별 문자열 조작에 유용합니다. 자세한 설명은 Amazon Managed Service for Apache Flink SQL 참조에서 문자열 및 검색 함수를 참조하십시오.
-
CHAR_LENGTH
– 문자열의 길이를 정합니다. -
INITCAP
– 입력 문자열에서 공백으로 구분된 각 단어의 첫 번째 문자가 대문자로 변환되고 나머지 문자는 모두 소문자로 변환된 버전을 반환합니다. -
LOWER/UPPER
– 문자열을 대문자 또는 소문자로 변환합니다. -
OVERLAY
– 첫 번째 문자열(원본 문자열) 인수 중 일부를 두 번째 문자열(대체 문자열) 인수로 대체합니다. -
POSITION
– 다른 문자열 내에서 문자열을 검색합니다. -
REGEX_REPLACE
– 하위 문자열을 다른 하위 문자열로 대체합니다. -
SUBSTRING
– 특정 위치에서 시작하는 소스 문자열의 일부를 추출합니다. -
TRIM
– 소스 문자열의 시작 또는 끝부분에서 지정된 문자의 인스턴스를 제거합니다.
-
-
SQL 확장 – 로그 및 URI와 같은 비정형 문자열 작업 수행에 유용합니다. 자세한 설명은 Amazon Managed Service for Apache Flink SQL 참조에서 로그 파싱 함수를 참조하십시오.
-
FAST_REGEX_LOG_PARSER
– regex parser와 비슷하게 작동하지만, 보다 빠른 결과를 얻기 위해 몇 가지 경로를 단축합니다. 예를 들어, 빠른 regex parser는 첫 번째 일치에서 중지합니다(지연 시맨틱). -
FIXED_COLUMN_LOG_PARSE
– 고정 너비 필드를 구문 분석하고 지정된 SQL 유형으로 자동으로 변환합니다. -
REGEX_LOG_PARSE
– 기본적인 Java 정규식 패턴을 기준으로 문자열 구문 분석을 수행합니다. -
SYS_LOG_PARSE
– UNIX/Linux 시스템 로그에서 흔히 발견되는 항목을 처리합니다. -
VARIABLE_COLUMN_LOG_PARSE
– 입력 문자열을 구분 기호 문자 또는 문자열에 의해 분리되는 필드로 분할합니다. -
W3C_LOG_PARSE
– Apache 로그의 신속한 포맷을 위해 사용할 수 있습니다.
-
이들 함수의 예는 다음 주제를 참조하십시오: