全部产品
Search
文档中心

Lindorm:Menulis data menggunakan protokol baris InfluxDB

更新时间:Nov 10, 2025

Topik ini menjelaskan cara menulis data ke LindormTSDB menggunakan protokol baris InfluxDB dan menyediakan contoh.

Informasi latar belakang

LindormTSDB kompatibel dengan format yang ditentukan oleh protokol baris InfluxDB. Untuk informasi lebih lanjut, lihat Protokol Baris. Anda dapat menggunakan aplikasi atau perangkat yang mendukung protokol baris InfluxDB untuk menulis data ke LindormTSDB.

Tipe data yang didukung

Sintaks protokol baris InfluxDB mendukung tipe data berikut: Float, Integer, String, Boolean, dan Timestamp. Tabel berikut menjelaskan tipe data yang didukung oleh protokol baris InfluxDB.

Tipe data

Deskripsi

Float

Bilangan titik mengambang. Float adalah tipe data default. Contoh: 1, 1.0, 1.e+10, dan 1.E+10.

Integer

Mendukung bilangan bulat 64-bit. Gunakan akhiran `i` untuk mengidentifikasi bilangan bulat. Angka tanpa akhiran diurai sebagai bilangan titik mengambang. Contoh: 12i dan 101i.

String

Tipe string. Gunakan tanda kutip ganda (""). Contoh: "hello world".

Boolean

Nilai boolean. Nilai valid: True dan False.

  • Nilai True mendukung format berikut: t, T, true, True, dan TRUE.

  • Nilai False mendukung format berikut: f, F, false, False, dan FALSE.

Timestamp

Timestamp. Protokol mendukung nanodetik (ns), tetapi data dikonversi ke milidetik (ms) untuk penyimpanan. Untuk mengubah presisi timestamp, atur parameter precision.

Jalur permintaan

  • Jalur permintaan: /api/v2/write

  • Metode permintaan: POST

Saat membuat permintaan untuk menulis titik data ke LindormTSDB menggunakan protokol baris InfluxDB, Anda harus mengonversi format titik data ke format yang ditentukan oleh protokol baris InfluxDB, lalu menggunakan titik data tersebut sebagai isi permintaan POST. Tabel berikut menjelaskan parameter yang dapat dikonfigurasi dalam permintaan.

Parameter

Diperlukan

Deskripsi

precision

Tidak

Presisi timestamp. Nilai default: ns. Nilai valid: ns, us, ms, s, m, dan h.

db

Tidak

Nama database tempat Anda ingin menulis titik data.

schema_policy

Tidak

Kebijakan batasan skema. Nilai default parameter ini adalah WEAK. Jika Anda menentukan kebijakan batasan lemah, tabel seri waktu dapat dibuat secara otomatis. Nilai valid:

  • WEAK: Tentukan kebijakan batasan lemah untuk skema.

  • STRONG: Tentukan kebijakan batasan kuat untuk skema.

  • NONE: Jangan tentukan kebijakan batasan untuk skema.

Untuk informasi lebih lanjut, lihat Kebijakan batasan skema yang didukung.

Tentukan kredensial pengguna untuk autentikasi

Jika autentikasi pengguna diaktifkan untuk LindormTSDB, Anda harus menambahkan kredensial pengguna ke Header permintaan HTTP saat mengirim permintaan ke /api/v2/write. Titik akhir /api/v2/write menggunakan metode BASIC AUTH. Kredensial yang telah dikodekan harus disertakan dalam bidang Authorization pada Header permintaan HTTP.

Anda dapat menentukan kredensial pengguna dalam format berikut untuk autentikasi dasar:

BASIC {informasi autentikasi yang dikodekan Base64}

Informasi autentikasi yang dikodekan Base64 adalah string yang dikodekan Base64 dalam format ${username}:${password}.

Catatan

Untuk informasi selengkapnya tentang cara mengkodekan dan menentukan kredensial pengguna untuk autentikasi dasar menggunakan berbagai bahasa pemrograman, lihat dokumentasi pustaka kelas terkait dari bahasa pemrograman tersebut.

Untuk username default `root` dan password `root`, nilai yang dikodekan Base64 untuk bidang Authorization dalam Header permintaan HTTP adalah sebagai berikut:

Authorization: Basic cm9vdDpyb290

Format data protokol baris InfluxDB

Berikut ini menjelaskan format penulisan dan parameter untuk Line Protocol.

<table_name>[,<tag_key>=<tag_value>[,<tag_key>=<tag_value>]] <field_key>=<field_value>[,<field_key>=<field_value>] [<timestamp>] 

Parameter

Diperlukan

Deskripsi

table_name

Ya

Nama tabel tempat Anda ingin menulis titik data.

tag_set

Tidak

Tag dari titik data yang ingin Anda tulis. Tag dapat digunakan untuk mencari titik data yang telah ditulis.

field_set

Ya

Bidang titik data yang ingin Anda tulis.

timestamp

Tidak

Timestamp. Jika Anda tidak menentukan timestamp, sistem akan menggunakan waktu saat ini. Satuan default adalah nanodetik (ns).

Penting
  • Ketika menulis data menggunakan protokol baris, data dengan presisi waktu berbeda dikonversi ke presisi milidetik untuk penyimpanan. Data dengan presisi lebih tinggi dari milidetik kehilangan presisi selama operasi penulisan.

  • Untuk mengubah presisi timestamp, atur parameter precision.

Catatan
  • Pisahkan beberapa titik data dengan jeda baris (\n).

  • Saat menggunakan protokol baris InfluxDB untuk menulis titik data ke LindormTSDB, batasan skema yang digunakan oleh mesin bersifat lemah. Anda dapat mengonfigurasi parameter schema_policy untuk memodifikasi kebijakan batasan skema.

Contoh

Pernyataan berikut memberikan contoh cara menulis data ke LindormTSDB menggunakan protokol baris InfluxDB:

curl -X POST \
'http://ld-bp1489gr5t*****-proxy-tsdb.lindorm.rds.aliyuncs.com:8242/api/v2/write?precision=ms&db=default' \
-d '
sensor7,device_id=F07A1260,region=north-cn temperature=12.1,humidity=45i 1619076780000000000
sensor7,device_id=F07A1260,region=north-cn temperature=13.2,humidity=47i 1619076790000000000
sensor7,device_id=F07A1260,region=north-cn temperature=10.6,humidity=46i 1619076800000000000
sensor7,device_id=F07A1260,region=north-cn temperature=18.1,humidity=44i 1619076780000000000
sensor7,device_id=F07A1260,region=north-cn temperature=19.7,humidity=44i 1619076790000000000
'