全部产品
Search
文档中心

IoT Platform:Kompresi data

更新时间:Jun 21, 2025

Fitur kompresi data dari IoT Platform memungkinkan Anda menekan data yang ditransmisikan antara IoT Platform dan perangkat. Dengan menekan pesan, Anda dapat mengurangi lalu lintas perangkat serta mempercepat kecepatan transmisi. Topik ini menjelaskan cara menggunakan fitur kompresi data.

Batasan

  • Fitur kompresi data hanya tersedia untuk instance Standard dan Exclusive Enterprise Edition.

  • Fitur kompresi data hanya tersedia untuk perangkat yang terhubung ke IoT Platform melalui Message Queuing Telemetry Transport (MQTT).

  • Anda dapat menekan atau mendekompresi data hingga 20 topik dari sebuah perangkat. Nama topik tidak boleh berisi karakter wildcard.

  • Data dikompresi ke dalam format GZIP menggunakan algoritma kompresi deflate.

  • Data yang ingin dikompresi tidak boleh melebihi ukuran 1 MB.

Informasi latar belakang

Deskripsi

Fitur kompresi data diimplementasikan berdasarkan topik yang digunakan untuk komunikasi antara IoT Platform dan perangkat. IoT Platform secara otomatis menekan dan mendekompresi data dari topik tersebut. Sistem bisnis sisi pengguna tidak perlu mengetahui detail proses ini.

Hanya payload dari pesan MQTT yang dapat dikompresi. Payload tersebut dikompresi ke dalam format GZIP.

Anda dapat menentukan topik yang datanya ingin dikompresi untuk sebuah perangkat. Biasanya, data dari topik yang berisi paket data besar perlu dikompresi.

image

Proses

  1. Perangkat mengirimkan topik yang datanya perlu dikompresi atau didekompresi.

  2. Perangkat mengirimkan data terkompresi atau IoT Platform mengirimkan data terkompresi.

image

Kirimkan topik yang datanya perlu dikompresi

Sebuah perangkat hanya perlu mengirimkan topik sekali. Setelah perangkat di-restart, topik tetap tidak berubah.

  • Kirimkan topik

    Metode koneksi

    Topik

    Koneksi melalui MQTT

    /sys/${productKey}/${deviceName}/codec/topic/update

    Koneksi menggunakan gateway MQTT

    $iot/things/codec/topic/update

    Format payload dari pesan yang dikirimkan oleh perangkat ke topik tetap tidak berubah, terlepas dari metode koneksi yang digunakan. Contoh payload:

    {
        "id":1,
        "version": 1.0,
        "params": [
            {
                "topic": "/productKey/deviceName/user/update",
                "operation": "compress",
                "format": "gzip"
            },
            {
                "topic": "/productKey/deviceName/user/test",
                "operation": "decompress",
                "format": "gzip"
            }
        ]
    }

    Parameter

    Deskripsi

    topik

    Nama topik yang menerima pesan yang akan dikompresi. Anda harus menentukan topik lengkap. Nama topik tidak boleh berisi karakter wildcard.

    operasi

    • compress: berlaku untuk pesan upstream. IoT Platform menekan dan mengirimkan data.

    • decompress: berlaku untuk pesan downstream. IoT Platform mendekompresi dan meneruskan data.

    format

    Format kompresi. Atur nilainya menjadi .gzip.

  • Parameter respons

    Metode koneksi

    Topik

    Koneksi melalui MQTT

    /sys/${productKey}/${deviceName}/codec/topic/update_reply

    Koneksi menggunakan gateway MQTT

    $iot/things/codec/topic/update_reply

    {
        "id": 1,
        "version": 1.0,
        "code": 200,
        "message": "success"
    }

    Parameter

    Deskripsi

    kode

    • 200: Panggilan berhasil.

    • Nilai lainnya: Panggilan gagal.

    pesan

    Deskripsi kode yang dikembalikan.

Transmisikan data terkompresi

  • Pesan upstream: Perangkat menggunakan alat gzip untuk menekan payload pesan dan mengirimkannya. Kemudian, IoT Platform mendekompresi pesan tersebut.

  • Pesan downstream: IoT Platform mengirimkan pesan yang telah dikompresi menggunakan alat gzip ke perangkat. Perangkat mendekompresi payload pesan dan meneruskan pesan ke sistem bisnis.

Untuk informasi lebih lanjut, lihat Contoh.