도입
패턴 탐색 및 발견, 추세 및 주기성 평가, 잠재적 상관 관계 및 이상 징후 관찰 등 여러 가지 이유로 IoT 데이터를 짧은 시간(초)에 걸쳐 크게 달라질 수 있는 시각화하는 것이 중요합니다. 통찰력 있는 시계열 시각화를 통해 이상 징후를 식별하고, 이러한 이상을 기반으로 경고를 발생시키며, 특히 데이터 소비자와 엔지니어링 간의 다양한 이해 관계자 간의 커뮤니케이션을 개선할 수 있습니다.
이 글에서는 세 가지 일반적인 시계열 분석 작업을 수행하는 방법을 보여드리겠습니다.
- 기본 AWS IoT 분석 기능을 사용하여 원시 IoT 데이터를 처리하는 방법을 시연합니다.
- 시계열 데이터셋을 쉽게 시각화할 수 있도록 타임스탬프 필드를 변환하는 방법의 예를 제공합니다.
- Amazon QuickSight를 사용하여 IoT 시계열 데이터를 여러 개 시각화합니다.
이러한 목표를 달성하기 위해 실제 사용 사례를 사용하여 오픈 소스 데이터셋을 활용할 것입니다.
독자는 QuickSight 비즈니스 분석 서비스뿐만 아니라 AWS IoT Core 및 AWS IoT Analytics 플랫폼을 직접 사용해 본 경험이 있는 것으로 가정합니다. 이 글을 통해 AWS 명령줄 인터페이스(CLI)를 사용할 예정이며 디바이스에서 CLI를 처음 설정하려면 다음 지침을 따르십시오. 또한 독자는 IAM 자격 증명을 설정하고 Python 프로그램을 실행하여 IoT Core까지 메시지를 게시하는 방법을 알 수 있어야 합니다.
IoT 데이터셋
IoT Analytics는 IoT 디바이스와 센서에서 생성된 데이터를 직접 모드와 배치 모드로 모두 수집할 수 있습니다. IoT Core 규칙 엔진은 직접 수집 모드를 사용할 때 즉시 페이로드가 IoT Analytics 채널로 라우팅됩니다. 배치 수집 모드에서는 Amazon S3 버킷과 같은 JSON 리포지토리에서 데이터를 수집할 수 있습니다.
이 글를 위해 호주 멜버른에서 제공하는 오픈 소스에서 AWS IoT Core까지 데이터셋을 배치한 다음 AWS IoT Analytics 채널로 이동할 예정입니다.
멜버른 시는 2014년 환경센서를 구축해 Fitzroy Gardens과 Docklands Library 두 곳에 광도, 습도, 온도를 측정했습니다. 수집된 데이터는 캐노피 커버가 도시 냉각에 미치는 영향을 더 잘 이해하고 전달하는 데 사용되었습니다. 8개 위치(2014년과 2015년 시도 기간)에서 5분마다 온도, 빛, 습도 등을 포함한 센서 판독값에서 데이터를 수집했습니다.
센서에서 수집된 JSON 원시 데이터를 활용할 것입니다. 여기 Docklands Library에 설치된 센서 중 하나에서 JSON 페이로드 한 개의 샘플이 있습니다.
{
“boardid”: “509”,
“boardtype”: “1”,
“humidity_avg”: “47.7”,
“humidity_max”: “47.7”,
“humidity_min”: “47.7”,
“latitude”: “-37.8199043”,
“light_avg”: “93.7”,
“light_max”: “93.7”,
“light_min”: “93.7”,
“location”: “Docklands Library”,
“longitude”: “144.9404851”,
“mac”: “0013a20040b31583”,
“model”: “ENV”,
“rowid”: “509-20141216210500”,
“temp_avg”: “13.9”,
“temp_max”: “13.9”,
“temp_min”: “13.9”,
“timestamp”: “2014-12-16T21:05:00.000”
}
페이로드 검사를 통해 특정 센서에 의해 생성된 타임스탬프가 ISO 8601 형식(일 및 시간)을 갖추고 있으며 Australian/Perth 시간대에 있음을 알 수 있습니다.
데모 목적으로 두 위치(Fitzroy Gardens 및 Docklands Library)의 센서에서 생성된 첫 1,000개의 샘플 JSON 메시지를 사용합니다. 글에서 사용되는 모든 샘플 JSON 메시지는 다음 데이터 위치에서 찾을 수 있습니다(오른쪽에서 클릭한 다음 다른 이름으로 저장하여 디바이스에 데이터셋을 저장할 수 있습니다).
고급 AWS IoT 분석 아키텍처
JSON 데이터는 MQTT 주제에 따라 AWS IoT Core로 전송되며, 여기에서 IoT 규칙 엔진을 통해 AWS IoT 채널로 전송됩니다. 날짜 시간을 다른 형식으로 변환하는 Lambda 함수를 호출하는 파이프라인이 생성되고 데이터 저장소가 생성됩니다. 각 원본 위치에 두 개의 데이터셋이 생성되고, 시계열 데이터를 나타내는 QuickSight 시각화가 생성됩니다.
- 오픈 소스 파일에서 AWS IoT Core에 원시 JSON 데이터를 게시합니다.
- 기존 호주 ISO 8601 타임 스탬프(예: 2014-12-16 21:05:00.000)에 따라 각 JSON 메시지 페이로드에 다음을 추가합니다.
- UTC(1418677200)의 UNIX epoch 타임스탬프;
- USA 태평양 표준시 ISO 8601 타임스탬프(12/15/2014 13:00:00.000)
- JSON 메시지를 단일 AWS IoT Analytics 데이터스토어에 저장합니다.
- 데이터스토어를 쿼리하고 두 센서 위치(Fitzroy Gardens 및 Docklands Library)를 기준으로 데이터를 필터링하여 두 개의 AWS IoT 분석 데이터셋을 생성합니다.
운영 워크로드의 경우 AWS IoT Core를 우회하여 BatchPutMessage API를 사용하여 JSON 페이로드 데이터를 AWS IoT Analytics 채널에 직접 게시해야 할 수도 있습니다.
AWS IoT 데이터 수집, AWS IoT 분석 및 QuickSight 시각화 단계
- 원래 페이로드가 풍부해지는 Lambda 함수를 만들고 위에서 지정한 대로 두 개의 시간 형식을 추가합니다(UNIX epoch and US PT).
- IoT Analytics 채널, 파이프라인 및 데이터 저장소를 생성합니다.
- IoT Analytics 데이터셋 2개를 생성합니다.
- Python 스크립트를 사용하여 JSON 파일의 소스 데이터를 IoT Core로 가져옵니다. 이렇게 하면 1단계에서 생성된 IoT Analytics 채널로 데이터를 전송하는 규칙이 트리거됩니다.
- QuickSight에서 데이터셋을 가져오고 시계열 시각화를 만듭니다.
1단계
아래 코드를 사용하여 transform_pipeline이라는 Lambda 함수(Python 2.7)를 생성합니다.
import time
import sys
import pytz
import datetime as DT
from datetime import datetime
from pytz import timezone
def lambda_handler(event, context):
for e in event:
if ‘timestamp’ in e:
# Converting timestamp string to datetime object
d_aus_unaware = datetime.strptime(e[‘timestamp’],’%Y-%m-%dT%H:%M:%S.%f’)
# Adding Australia/Perth timezone to datetime object
timezone_aus = pytz.timezone(“Australia/Perth”)
d_aus_aware = timezone_aus.localize(d_aus_unaware)
# Determining UTC epoch timestamp from input Australian timestamp
d_utc = d_aus_aware.astimezone(timezone(‘UTC’))
epoch = time.mktime(d_utc.timetuple())
# Determining PST timestamp from input Australian timestamp
d_uspst = d_aus_aware.astimezone(timezone(‘US/Pacific’))
# Adding Epoch and PST timestamp to message payload
e[‘timestamp_aus’] = d_aus_aware.strftime(‘%m/%d/%Y %T’)
e[‘timestamp_us’] = d_uspst.strftime(‘%m/%d/%Y %T’)
e[‘epoch’] = epoch
return event
위의 함수(transform_pipeline)는 패키지로 가져와야 하는 pytz 라이브러리를 사용합니다. 이 방법에 대한 자세한 내용은 Python 페이지의 AWS Lambda 배포 패키지를 참조하십시오.
CLI를 사용하여 IoT Analytics에서 위의 Lambda 함수를 호출할 수 있는 권한을 부여합니다. 여기서 설명하는 바와 같이 statement-id는 고유한 문장 식별자입니다.
aws lambda add-permission –function-name transform_pipeline –statement-id stat_id_100 –principal iotanalytics.amazonaws.com –action lambda:InvokeFunction
2단계
IoT Analytics 채널, 파이프라인 및 데이터 저장소를 생성하려면 AWS 콘솔에 로그인하고 여기에 나와 있는 지침을 따르십시오. 또는 CloudFormation 템플릿을 사용하여 IoT Analytics 리소스를 생성할 수도 있습니다.
채널은 IoT Core 또는 S3 버킷에서 데이터를 수집하고 선택한 기간(또는 무한정) 동안 원시 메시지의 복사본을 보관하면서 파이프라인을 공급하는 데 사용됩니다.
사용 사례에서는 수신 및 처리되지 않은 모든 원시 JSON 메시지를 저장하기 위해 단일 채널이 생성되며 mychannel_aus_weather라는 이름이 지정됩니다. IoT Analytics 콘솔을 사용하여 mychannel_aus_weather라는 채널을 생성합니다. IoT Core 항목을 묻는 메시지가 표시되면 iot/aus_weather를 사용하면 메시지를 이 채널에 전달하는 IoT Core에 규칙이 생성됩니다. 콘솔에 필요한 IAM 역할도 생성하도록 할 수 있습니다.
파이프라인은 들어오는 JSON 페이로드의 필터링, 활성 및 변환에 사용됩니다. 파이프라인 이름은 mypipeline_aus_weather입니다. 데이터 소스가 채널 mychannel_aus_weather인 파이프라인을 생성합니다. 이 글의 1단계에서 transform_pipeline이라는 Lambda 함수를 생성했습니다. 파이프라인에 Lambda 작업 하나를 추가하고 목록에서 이 기능을 선택합니다.
파이프라인 생성 흐름이 끝나면 데이터 저장소를 생성한 다음 파이프라인 출력에 대해 선택할 수 있습니다. 데이터 저장소는 파이프라인으로 처리된 데이터를 저장하는 데 사용됩니다. 글을 위해 단일 데이터 저장소를 만들고 mydatastore_aus_weather라는 이름을 붙이겠습니다.
3단계
CLI를 사용하여 데이터 저장소에서 데이터셋을 생성해 보겠습니다. 또는 콘솔을 사용하여 데이터셋을 대화형으로 생성할 수 있습니다.
Docklands Library 데이터셋
aws iotanalytics create-dataset –dataset-name=”aus_weather_docklands_library” –cli-input-json file://dataset_docklands.json
다음 JSON 파일에서 입력을 찾을 수 있는 위치
{
“actions” :[{
“actionName”:”myaction1″,
“queryAction”:{
“sqlQuery”:”select * from mydatastore_aus_weather where location = ‘Docklands Library’ order by timestamp_aus”
}
}]
}
Fitzroy Gardens 데이터셋
aws iotanalytics create-dataset –dataset-name=”aus_weather_fitzroy_gardens” –cli-input-json file://dataset_fitzroy.json
JSON 파일에서 해당하는 부분
{
“actions” :[{
“actionName”:”myaction2″,
“queryAction”:{
“sqlQuery”:”select * from mydatastore_aus_weather where location = ‘Fitzroy Gardens’ order by timestamp_aus”
}
}]
}
timestamp_aus는 원래 데이터셋에 존재하지 않는 속성입니다. 이는 Lambda 함수에 의해 JSON 페이로드에 추가되었습니다. 또한 QuickSight에서 이 속성에 대해 데이터를 순차적으로 표시할 수 있도록 문장별 순서도 추가되었습니다.
4단계
이전 단계는 시각화를 위한 데이터 수집, 변환 및 구조를 설정하는 데 사용되었지만 아직 데이터가 없습니다. 이 단계에서는 오픈 소스 데이터셋에서 IoT Core로 데이터를 수집합니다.
오픈 소스 데이터셋에서 1,000개의 데이터 레코드를 프로그래밍 방식으로 다운로드합니다.
curl -XPORT ‘https://data.melbourne.vic.gov.au/resource/277b-wacc.json’ > input_aus.json
오픈 소스 데이터셋의 데이터를 IoT Core에 연결하려면 CLI를 설정해야 합니다. Windows 또는 OS용 CLI를 설치하고 구성하는 방법은 여기에서 확인할 수 있습니다.
구성 중에 AWS 사용자 ID와 연결된 AWS 액세스 키 및 AWS 보안 액세스 키를 입력하라는 메시지가 표시됩니다. 액세스 키를 가져오려면 AWS 콘솔로 이동한 다음 검색 표시줄에서 IAM(Identity Access Management)을 검색한 다음 사용자를 선택하고 사용자 이름을 클릭한 다음 보안 자격 증명에서 액세스 키 만들기를 선택하고 보안 액세스 키를 복사하여 저장해야 합니다.
Python 함수를 작성하여 IoT Core에 데이터를 수집하고 이름을 upload_raw_aus.py로 지정합니다.
import json
import boto3
import fileinput
import multiprocessing as mp
import os
processes = 4
# An array of boto3 IoT clients
IotBoto3Client = [boto3.client(‘iot-data’) for i in range(processes)]
def publish_wrapper(lineID, line):
# Select the appropriate boto3 client based on lineID
client = IotBoto3Client[lineID % 4]
line_read = line.strip()
print “Publish: “, os.getpid(), lineID, line_read[:70], “…”
payload = json.loads(line_read)
# Publish JSON data to AWS IoT
client.publish(
topic=’iot/aus_weather’,
qos=1,
payload=json.dumps(payload))
if __name__ == ‘__main__’:
pool = mp.Pool(processes)
jobs = []
print “Begin Data Ingestion”
for ID, line in enumerate(fileinput.input()):
# Create job for each JSON object
res = jobs.append(pool.apply_async(publish_wrapper, (ID, line)))
for job in jobs:
job.get()
print “Data Ingested Successfully”
위에서 Python 스크립트를 실행하기 전에 jq를 설치해야 합니다. Windows 기계가 있는 경우 여기에서 다운로드 지침을 참조하십시오.
sudo yum install jq
이제 CLI를 사용하여 위의 기능을 호출하고 curl 명령으로 다운로드한 파일을 프로그래밍 방식으로 전달할 수 있습니다.
cat input_aus.json | jq -c ‘.[]’ | python upload_raw_aus.py
Python 스크립트는 4개의 프로세스를 사용하여 데이터를 병렬로 수집합니다. 4개의 IoT boto3 클라이언트를 만들고 각 원시 JSON 메시지를 round-robin 방식으로 배포합니다. MQTT 항목 iot/aus_weather는 2단계에서 채널 구독에 대한 주제 규칙을 만들 때 사용한 항목과 동일합니다.
위의 cat 스크립트를 실행한 후에는 QuickSight 시각화에 사용할 수 있는 데이터셋이 두 개가 있습니다.
5단계
시각화에 사용되는 AWS IoT 분석 변환 데이터셋:
- aus_weather_docklands_library: Docklands Library에 대한 IoT 데이터 포함
- aus_weather_fitzroy_gardens: Fitzroy Gardens에 대한 IoT 데이터 포함
이제 QuickSight를 열고 시계열 시각화를 설계하고 만듭니다.
QuickSight에서 New Analysis를 클릭한 다음 New data set를 클릭합니다.
다음으로 AWS IoT Analytics를 클릭합니다. QuickSight 분석에서는 두 데이터셋(aus_weather_docklands_library and aus_weather_fitzroy_gardens)를 모두 추가해야 합니다. 지금은 이러한 항목 중 하나를 선택하고 데이터 원본 생성을 선택합니다. aus_weather_fitzroy_gardens에 대해 위의 단계를 반복합니다. 이제 각 데이터셋을 개별적으로 또는 함께 시각화할 수 있습니다.
이 글에서 저희는 그것들을 함께 시각화 할 것입니다. 하나의 데이터셋을 클릭합니다. 이 글은 ‘aus_weather_docklands_library‘로 하겠습니다. Create analysis를 클릭합니다.
QuickSight 시각화 화면이 나타납니다. 이제 분석에 다른 데이터셋(aus_weather_fitzroy_gardens)를 추가하겠습니다. aus_weather_docklands_library 데이터셋을 클릭합니다. 분석 데이터셋 편집을 클릭하면 다른 데이터셋을 추가할 수 있는 옵션이 나타납니다. 아래 다이어그램과 같이 aus_weather_fitzroy_gardens 데이터셋을 추가합니다.
이제 분석에 가져온 두 데이터셋을 모두 볼 수 있습니다.
저희의 분석은 저희가 필요로 하는 모든 데이터를 가지고 있고, 저희는 시각화 개발을 시작할 수 있습니다. 먼저 Docklands Library에 대한 humidity_avg, light_avg and temp_avg v/s epoch를 그려 보겠습니다. aus_weather_docklands_library 셋을 클릭합니다. 왼쪽 아래 모서리의 그래프 옵션에서 선 그림을 선택합니다. 그래프 위에서는 epoch 필드를 X 축으로, humidity_avg, light_avg, temp_avg 필드를 값 열로 드래그합니다.
각 값 필드에 대해 평균으로 집계 유형을 선택합니다(기본값은 합계).
이제 시간 경과에 따른 습도, 온도, 빛의 변화를 보여주는 시각화를 볼 수 있습니다. 그래프 아래의 파란색 창을 스크롤하거나 확장하여 서로 다른 시간 간격의 시각 자료를 분석할 수 있습니다. 그래프 제목을 클릭하거나 편집하기만 하면 변경할 수도 있습니다.
이제 저희는 Fitzroy Gardens에 대한 데이터를 시각화하는 단계를 반복할 수 있습니다. 왼쪽 위에서 + 버튼을 클릭하고 시각 추가를 선택합니다. 기존 시각적 그래프 아래에 새 빈 시각적 표시가 생성됩니다. aus_weather_fitzroy_gardens 데이터셋을 선택하면 이제 aus_weather_docklands_library에 대해 생성한 것과 동일한 방식으로 그래프를 생성할 수 있습니다. 아래 다이어그램은 최종 결과를 나타냅니다.
최종 결과는 다음과 같아야 합니다.
두 시각화 모두 수평 시간 축 동안 Epoch 시간 형식을 사용하며 ISO 8601 형식을 사용하도록 변경해야 합니다. 시간을 mm/dd/yyyy HH:MM:SS 형식으로 표시하는 timestamp_aus 열이 이미 추가되었습니다. 기본적으로 QuickSight는 이를 날짜 형식으로 처리합니다. 데이터(습도, 빛 및 온도)와 이 열을 날짜 형식으로 표시하려고 하면 다음과 같은 시각화를 볼 수 있습니다.
아쉽게도 X축의 측정 단위는 하루입니다. 샘플 데이터 포인트는 분 단위로 세분화되어 있기 때문에 IoT 데이터를 정확하게 표현하지 못합니다. 데이터 레이블에 있는 정밀도를 얻기 위해서는 일반적인 날짜 형식과 비교하여 문자열 형식이 필요합니다.
저희는 다음과 같은 조치를 취함으로써 이를 달성합니다.
- timestamp_aus 필드의 형식을 날짜에서 문자열로 변경합니다.
- 데이터가 timestamp_aus 열에 의해 사전 정렬되도록 합니다. 데이터셋 쿼리를 생성할 때 이 단계를 처리했습니다. 데이터스토어에서 데이터셋이 생성될 때 데이터를 적절하게 정렬하기 위한 timestamp_aus별 순서가 쿼리에 포함되어 있습니다.(
select * from mydatastore_aus_weather where location = ‘Fitzroy Gardens’ order by timestamp_aus
)
1단계를 수행하려면 데이터셋 이름(aus_weather_docklands_library)을 클릭하고 분석 데이터셋 편집을 클릭합니다. aus_weather_docklands_library 옆에 있는 편집을 클릭합니다. 이제 필요에 따라 열을 편집할 수 있습니다. timestamp_aus 열을 클릭하고 데이터 형식을 문자열로 변경합니다.
aus_weather_fitzroy_gardens 데이터셋에 대해 이 프로세스를 반복합니다. 이제 UNIX epoch 타임스탬프로 표시한 것과 같은 방법으로 그래프를 그릴 수 있습니다. X축의 경우 epoch 대신 timestamp_aus를 사용할 수 있습니다. 그래프는 epoch 타임스탬프와 동일하지만 X축은 이제 ISO 8601의 타임스탬프를 보여줍니다.
QuickSight에는 기존 데이터 필드(열)를 새로 만드는 기능이 있습니다. 예를 들어, 각 일 및 월에 대한 데이터를 나타내도록 위의 그림을 변경할 수 있습니다. 위의 시야를 관찰할 경우 샘플 포인트는 2일(12/14/2014, 12/15/2014)에 걸쳐 확장됩니다.
계산된 새 필드를 작성하여 당일에 따라 각 그림을 2로 나눌 수 있습니다. timestamp_aus 필드의 값이 ‘MM/DD/YYYY HH:MM:SS’ 문자열 형식인 경우, 문자 12에서 시작하여 5자가 넘는 하위 문자열이 시간과 분(HH:MM)을 제공합니다. 문자 1에서 시작하고 10자를 넘는 하위 문자열이 날짜(MM/DD/YYYY)를 제공합니다. 이를 추출하여 HH:MM과 MM/DD/YYYY의 두 가지 새 필드를 만들 수 있습니다.
데이터셋 이름(aus_weather_docklands_library)을 클릭하고 분석 데이터셋 편집을 클릭합니다. aus_weather_docklands_library 옆에 있는 편집을 클릭합니다. 왼쪽 모서리에서 필드 탭을 클릭한 다음 새 필드를 클릭합니다.
먼저, timestamp_aus 필드에서 시간과 분을 차지하는 새 필드를 작성합니다. 이를 위해 QuickSight에서 제공하는 하위 문자열()을 사용합니다. QuickSight 기능에 대한 자세한 내용은 QuickSight 기능 지원 페이지를 참조하십시오.하위 문자열을 클릭하고 새 필드 이름을 HH:MM으로 입력합니다. 아래 다이어그램을 참조하십시오. 동일한 프로세스를 반복하여 요일과 월을 MM/DD/YYYY라고 하는 새로운 계산 필드로 가져옵니다.
맨 위에 있는 저장과 시각화를 클릭합니다. 저희는 이제 저희의 그림을 만들 준비가 되었습니다. 단순성을 위해 humidity_avg만 표시해 둡시다. 선 그림을 선택하고 X축에서 HH:MM을, 값에서 humidity_avg를, 색상 열의 MM/DD/YYYY를 드래그합니다. 아래 시각자료가 작성되고 humidity_avg의 2줄 그림을 보여줍니다(하루에 1개씩). aus_weather_fitzroy_gardens 데이터셋에 대해 위의 단계를 반복합니다.
Docklands Library 최종 결과
Fitzroy Gardens 최종 결과
QuickSight는 위치 좌표(위도, 경도)를 알고 있으면 위치 지도에서 센서를 찾는 데도 도움이 됩니다. 데이터셋에는 이러한 특성이 포함되어 있습니다. 왼쪽 하단의 글로벌 아이콘을 클릭하고 위도 및 경도 열을 클릭합니다.
저희는 이제 이야기로 구성된 QuickSight 분석을 하고 있습니다. 2개의 이야기(시계열 데이터 및 센서의 지리공간적 위치 표시)의 방법을 보여 드렸습니다. 분석의 이름을 바꿉시다. 맨 위에 분석 이름이 기본적으로 aus_weather_docklands_library로 지정되어 있습니다. 저희는 그것을 ‘멜버른 기상 분석’과 같은 것으로 바꿀 수 있습니다. 새 분석 페이지에서 언제든지 분석에 액세스할 수 있습니다.
데이터를 시각화하면 이해관계자 간의 커뮤니케이션을 개선하고 협업을 강화할 수 있습니다. QuickSight는 이해 관계자들과 시각 자료를 공유할 수 있는 대시보드라는 유용한 스냅샷 도구를 제공합니다. 대시보드 도구는 시각자료를 캡처하고 상태를 저장하기 위한 중요한 메커니즘 역할을 합니다. 다른 활성 사용자와 시각 자료를 공유할 수 있습니다. 분석을 위한 대시보드를 만들어 다른 QuickSight 사용자와 공유하겠습니다. 오른쪽 모서리에서 공유를 클릭한 다음 대시보드 만들기를 클릭합니다.
대시보드 만들기 페이지에서 대시보드에 부여할 이름(멜버른 IoT 날씨 분석)을 입력한 다음 대시보드 만들기를 클릭합니다.
다음 페이지에서 대시보드를 공유할 사용자의 사용자이름 또는 이메일 주소를 입력합니다. 사용자에게 QuickSight 계정이 이미 등록되어 있어야 합니다. 아래 사진은 팻이라는 가상 사용자를 입력하는 모습입니다. 사용자이름/이메일이 유효한 경우 공유를 클릭할 수 있습니다. 공유가 필요하지 않은 경우 취소를 클릭할 수 있습니다. 다음 페이지에서 사용자에게 다음번에 분석 생성 가능을 클릭하여 사용자가 직접 분석을 만들 수 있도록 할 수 있습니다. 닫기를 클릭합니다. 다음 페이지에서 확인을 선택하여 사용자에게 데이터에 대한 액세스 권한을 부여합니다.
사용자에게 공유 대시보드에 대한 링크가 포함된 이메일이 전송됩니다.
결론
이 글은 QuickSight를 사용하여 시계열 및 지리공간 데이터를 시각화하는 방법에 대한 단계별 가이드를 제공합니다. AWS IoT Analytics를 사용하여 시각화를 위한 데이터를 준비하는 방법도 시연했습니다.
이 글에서는 논의하지 않았지만 시각화와 시각적 요소에 대한 데이터와의 상호 작용을 개선하기 위해 QuickSight에서 제공하는 추가 기능이 포함되어 있습니다. 예를 들어 데이터를 선택적으로 표시하고 노이즈를 제거하는 데 사용할 수 있는 필터 탭(왼쪽 모서리)이 한 예입니다. 선 그림 외에도 QuickSight는 시각화 중인 데이터에 따라 다양한 유형의 그래프(바 그래프, 원형 차트 등)를 지원할 수 있습니다. 일반적으로 사용자가 기본 데이터를 더 많이 인식할수록 분석 모델과 시각화는 더 유용하고 의미 있게 됩니다.
이 글에서는 특정 사용 사례에 대해 AWS IoT Analytics를 사용하여 데이터 흐름을 생성하는 방법을 보여 주었습니다. 그러나 유사한 사용 사례에 대해 플랫폼에서 생성할 수 있는 다양한 기타 데이터 흐름을 이해하고 서로 다른 데이터 흐름 중에서 하나를 선택할 때의 영향을 적절하게 평가해야 합니다. 다른 시각화 도구/서비스 사용 방법에 대한 자세한 내용은 이 글을 참조하십시오.
QuickSight 시각화를 공유하거나 궁금한 사항이 있으면 포럼을 방문하십시오.
원문 URL : https://aws.amazon.com/ko/blogs/iot/using-aws-iot-analytics-to-prepare-data-for-quicksight-time-series-visualizations/?fbclid=IwAR33Kx_TcnXBbD1Ncue2VVlQGotMxVSCKSVR5ERNlt7lkxvqIpK98DW3nHI
** 메가존클라우드 TechBlog는 AWS BLOG 영문 게재글중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 게재하고 있습니다. 추가로 번역및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.