센서에서 생성되는 데이터를 Kinetic Firehose를 사용하여 Amazon S3로 전송하려면 다음과 같은 단계를 따르면 됩니다.
AWS Management Console에 로그인합니다.
AWS Kinesis 서비스를 선택합니다.
"Delivery streams"을 선택합니다.
"Create delivery stream"을 선택합니다.
"Source"에서 "Direct PUT or other sources"를 선택합니다.
"Destination"에서 "Amazon S3"를 선택합니다.
"S3 bucket"을 선택하고 새로운 버킷을 생성하거나 기존 버킷을 선택합니다.
"Prefix"와 "Error prefix"를 선택적으로 구성합니다.
"Buffer conditions"를 구성합니다.
"Encryption"을 선택적으로 구성합니다.
"Delivery stream name"과 "IAM role"을 구성합니다.
"Create delivery stream"을 선택합니다.
이제 Kinetic Firehose에서 S3로 데이터를 전송할 준비가 되었습니다. 센서에서 생성되는 데이터를 Firehose에 전송하기 위해 AWS SDK를 사용하거나 직접 HTTP 또는 HTTPS 요청을 통해 Firehose 엔드포인트로 데이터를 보낼 수 있습니다. 데이터는 JSON 또는 CSV 형식으로 Firehose에 전송해야 합니다. 예를 들어, Python에서 AWS SDK를 사용하여 데이터를 전송할 수 있습니다.
python
Copy code
import boto3
import json
stream_name = 'my-stream-name'
firehose = boto3.client('firehose')
sensor_data = {"sensor_id": "sensor-1", "temperature": 25.0, "humidity": 50.0}
payload = json.dumps(sensor_data)
response = firehose.put_record(
DeliveryStreamName=stream_name,
Record={
'Data': payload
}
)
print(response)
이 예제에서는 Python boto3 SDK를 사용하여 JSON 형식의 센서 데이터를 Kinetic Firehose에 전송합니다. 전송된 데이터는 설정된 S3 버킷에 저장됩니다.