

Untuk kemampuan serupa dengan Amazon Timestream LiveAnalytics, pertimbangkan Amazon Timestream untuk InfluxDB. Ini menawarkan konsumsi data yang disederhanakan dan waktu respons kueri milidetik satu digit untuk analitik waktu nyata. Pelajari lebih lanjut [di sini](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# AWS IoT Core
<a name="IOT-Core"></a>

 Anda dapat mengumpulkan data dari perangkat IoT menggunakan IoT [Core dan merutekan data ke Amazon Timestream melalui tindakan aturan AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-gs.html) Core. AWS Tindakan aturan IoT menentukan apa yang harus dilakukan ketika aturan dipicu. Anda dapat menentukan tindakan untuk mengirim data ke tabel Amazon Timestream, database Amazon DynamoDB, dan menjalankan fungsi Lambda. AWS 

 Tindakan Timestream dalam Aturan IoT digunakan untuk menyisipkan data dari pesan masuk langsung ke Timestream. Tindakan mem-parsing hasil pernyataan [IoT Core](https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-reference.html) SQL dan menyimpan data di Timestream. Nama-nama bidang dari set hasil SQL yang dikembalikan digunakan sebagai ukuran: :name dan nilai bidang adalah ukuran: :value. 

 Misalnya, pertimbangkan pernyataan SQL dan payload pesan sampel: 

```
SELECT temperature, humidity from 'iot/topic'
```

```
{
  "dataFormat": 5, 
  "rssi": -88,
  "temperature": 24.04,    
  "humidity": 43.605,    
  "pressure": 101082,    
  "accelerationX": 40,    
  "accelerationY": -20,    
  "accelerationZ": 1016,    
  "battery": 3007,    
  "txPower": 4,    
  "movementCounter": 219,    
  "device_id": 46216,
  "device_firmware_sku": 46216   
}
```

 Jika tindakan aturan IoT Core untuk Timestream dibuat dengan pernyataan SQL di atas, dua catatan akan ditambahkan ke Timestream dengan nama ukuran suhu dan kelembaban dan nilai pengukuran masing-masing 24,04 dan 43,605. 

 Anda dapat mengubah nama ukuran rekaman yang ditambahkan ke Timestream dengan menggunakan operator AS dalam pernyataan SELECT. Pernyataan SQL di bawah ini akan membuat catatan dengan nama pesan temp bukan suhu. 

 Tipe data ukuran disimpulkan dari tipe data dari nilai payload pesan. Tipe data JSON seperti integer, double, boolean, dan string dipetakan ke tipe data Timestream masing-masing BIGINT, DOUBLE, BOOLEAN, dan VARCHAR. Data juga dapat dipaksa ke tipe data tertentu menggunakan fungsi [cast ()](https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-functions.html#iot-sql-function-cast). Anda dapat menentukan stempel waktu pengukuran. Jika stempel waktu dibiarkan kosong, waktu entri diproses digunakan. 

Anda dapat merujuk ke [dokumentasi tindakan aturan Timestream](https://docs.aws.amazon.com/iot/latest/developerguide/timestream-rule-action.html) untuk detail tambahan

 Untuk membuat tindakan aturan IoT Core untuk menyimpan data di Timestream, ikuti langkah-langkah di bawah ini: 

**Topics**
+ [Prasyarat](#prereqs)
+ [Menggunakan konsol](#using-console)
+ [Menggunakan CLI](#using-cli)
+ [Aplikasi sampel](#sample-app)
+ [Video tutorial](#video-tutorial)

## Prasyarat
<a name="prereqs"></a>

1. Buat database di Amazon Timestream menggunakan petunjuk yang dijelaskan di. [Buat database](console_timestream.md#console_timestream.db.using-console)

1. Buat tabel di Amazon Timestream menggunakan petunjuk yang dijelaskan di. [Membuat tabel](console_timestream.md#console_timestream.table.using-console)

## Menggunakan konsol
<a name="using-console"></a>

1. **Gunakan AWS Management Console for AWS IoT Core untuk membuat aturan dengan mengklik **Manage** > **Messsage routing** > **Rules** diikuti oleh Create rule.**

1. Tetapkan nama aturan ke nama pilihan Anda dan SQL ke teks yang ditunjukkan di bawah ini

   ```
   SELECT temperature as temp, humidity from 'iot/topic' 
   ```

1. Pilih Timestream dari daftar Tindakan

1. Tentukan nama database, tabel, dan dimensi Timestream bersama dengan peran untuk menulis data ke Timestream. Jika peran tidak ada, Anda dapat membuatnya dengan mengklik Buat Peran

1. Untuk menguji aturan, ikuti instruksi yang ditunjukkan [di sini](https://docs.aws.amazon.com/iot/latest/developerguide/iot-ddb-rule.html#test-db-rule).

## Menggunakan CLI
<a name="using-cli"></a>

 [Jika Anda belum menginstal AWS Command Line Interface (AWS CLI), lakukan dari sini.](https://aws.amazon.com/cli/) 

1. Simpan payload aturan berikut dalam file JSON bernama timestream\$1rule.json. Ganti *arn:aws:iam::123456789012:role/TimestreamRole* dengan arn peran Anda yang memberikan akses AWS IoT untuk menyimpan data di Amazon Timestream

   ```
   { 
       "actions": [ 
               { 
                   "timestream": { 
                       "roleArn": "arn:aws:iam::123456789012:role/TimestreamRole", 
                       "tableName": "devices_metrics", 
                       "dimensions": [ 
                           { 
                               "name": "device_id", 
                               "value": "${clientId()}" 
                           }, 
                           { 
                               "name": "device_firmware_sku", 
                               "value": "My Static Metadata" 
                           } 
                       ], 
                       "databaseName": "record_devices" 
                   } 
               } 
       ], 
       "sql": "select * from 'iot/topic'", 
       "awsIotSqlVersion": "2016-03-23", 
       "ruleDisabled": false 
   }
   ```

1. Buat aturan topik menggunakan perintah berikut

   ```
   aws iot create-topic-rule --rule-name timestream_test --topic-rule-payload file://<path/to/timestream_rule.json> --region us-east-1 
   ```

1. Mengambil rincian aturan topik menggunakan perintah berikut

   ```
   aws iot get-topic-rule --rule-name timestream_test 
   ```

1. Simpan payload pesan berikut dalam file bernama timestream\$1msg.json

   ```
   {
     "dataFormat": 5, 
     "rssi": -88,
     "temperature": 24.04,    
     "humidity": 43.605,    
     "pressure": 101082,    
     "accelerationX": 40,    
     "accelerationY": -20,    
     "accelerationZ": 1016,    
     "battery": 3007,    
     "txPower": 4,    
     "movementCounter": 219,    
     "device_id": 46216,
     "device_firmware_sku": 46216   
   }
   ```

1. Uji aturan menggunakan perintah berikut

   ```
   aws iot-data publish --topic 'iot/topic' --payload file://<path/to/timestream_msg.json>
   ```

## Aplikasi sampel
<a name="sample-app"></a>

 Untuk membantu Anda memulai menggunakan Timestream dengan AWS IoT Core, kami telah membuat aplikasi sampel yang berfungsi penuh yang membuat artefak yang diperlukan AWS di IoT Core dan Timestream untuk membuat aturan topik dan contoh aplikasi untuk menerbitkan data ke topik tersebut. 

1.  Kloning GitHub repositori untuk aplikasi [sampel untuk integrasi](https://github.com/awslabs/amazon-timestream-tools/blob/master/integrations/iot_core) AWS IoT Core mengikuti instruksi dari [GitHub](https://docs.github.com/en/free-pro-team@latest/github/creating-cloning-and-archiving-repositories/cloning-a-repository)

1. Ikuti petunjuk di [README](https://github.com/awslabs/amazon-timestream-tools/blob/master/integrations/iot_core) untuk menggunakan AWS CloudFormation templat untuk membuat artefak yang diperlukan di Amazon TimeStream AWS dan IoT Core dan untuk mempublikasikan pesan sampel ke topik tersebut.

## Video tutorial
<a name="video-tutorial"></a>

[Video](https://youtu.be/00Wersoz2Q4) ini menjelaskan cara kerja IoT Core dengan Timestream.