Kural motorunun veri iletme özelliğini kullanarak verileri Tablestore (OTS) TimeSeries modeli örneklerine iletebilirsiniz. Bu konu, veri iletme sürecini açıklar. Bu örnekte kaynak konu olarak bir Thing Specification Language (TSL) iletişim konusu kullanılır.
Önkoşullar
DataSource adlı bir veri kaynağı oluşturun ve bu veri kaynağına bir TSL iletişim konusu ekleyin. Daha fazla bilgi için bkz. Veri kaynağı ekleme.
-
Bir OTS örneği ve verileri almak için kullanılacak bir tablo oluşturun. Daha fazla bilgi için bkz. OTS belgelerindeki "TimeSeries modeli" bölümü.
ÖnemliIoT Platform Enterprise Edition örneği kullanıyorsanız, OTS örneğinin dağıtıldığı bölge IoT Platform örneğinizin bulunduğu bölgeyle aynı olmalıdır.
Arka plan bilgileri
TimeSeries modeli; IoT cihaz izleme, cihaz verisi toplama ve makine izleme gibi senaryolarda üretilen zaman serisi verilerini depolamak için kullanılır. TimeSeries modeli, zaman serisi meta verilerinin otomatik olarak dizine eklenmesini ve çeşitli bileşik koşullara dayalı zaman serisi sorgularını destekler. Daha fazla bilgi için bkz. TimeSeries modeli.
Bu örnekte, verileri zaman serisi tablosuna yazmak için writeTableStoreTs() işlevini çağırın ve aşağıdaki parametreleri belirtin:
fields: Cihaz tarafından gönderilen Sıcaklık ve Nem özelliklerinin değerlerini almak için JSONPath ifadelerini kullanın. Değerleri zaman serisi tablosuna yazın.
timeInUs: Milisaniye cinsinden bir zaman damgası almak için
timestamp()işlevini çağırın. Zaman damgası, cihazın veriyi gönderdiği anı belirtir. timeInUs parametresinin değeri mikrosaniye cinsinden olmalıdır. timeInUs parametresinin değerini şu formülü kullanarak hesaplayabilirsiniz: timestamp() × 1,000. Sonucu tabloya yazın.tags: Tabloya {"region": "cn-shanghai"} değerini yazın.
metricName: Tabloya property değerini yazın.
dataSource: DeviceName'i almak için deviceName() işlevini çağırın ve ardından DeviceName'i tabloya yazın.
Sınırlamalar
Yalnızca Çin (Şanghay) bölgesindeki Enterprise Edition örnekleri, yeni sürüm veri iletme özelliğini kullanarak verileri TimeSeries modelindeki OTS örneklerine iletmenize olanak tanır.
Veri hedefi oluşturma
IoT Platform konsolu üzerinde oturum açın.
-
Genel Bakış sekmesinde yönetmek istediğiniz örneği bulun ve Instance Details sayfasına gitmek için örnek adına tıklayın.

Sol gezinme bölmesinde seçeneklerini belirleyin.
-
Data Forwarding sayfasında sağ üst köşedeki Go to New Version seçeneğine tıklayın.
NotBu işlemi daha önce yaptıysanız otomatik olarak Data Forwarding sayfasının yeni sürümüne yönlendirilirsiniz.
Data destination sekmesine tıklayın ve ardından Create data destination seçeneğine tıklayın.
-
Create Data Destination iletişim kutusunda bir veri hedefi adı girin. Örnek: DataPurpose. Parametreleri yapılandırın ve OK seçeneğine tıklayın.
Aşağıdaki tabloda parametreler açıklanmaktadır.
NotYalnızca JSON formatındaki veriler iletilebilir.
Parameter
Description
Operation
Store Data to Tablestore seçeneğini belirleyin.
Region
OTS'nin etkinleştirildiği bölgeyi seçin.
InstanceBir OTS örneği seçin.
TimeSeries modelinde bir OTS örneği oluşturmak üzere OTS konsoluna gitmek için Create Instance seçeneğine tıklayabilirsiniz. Daha fazla bilgi için bkz. TimeSeries modeli örneği oluşturma.
Storage Class
TimeSeries Model seçeneğini belirleyin.
Data TableVerileri almak için kullanmak istediğiniz zaman serisi tablosunu seçin.
Zaman serisi tablosu oluşturmak üzere OTS konsoluna gitmek için Create Data Table seçeneğine tıklayabilirsiniz. Daha fazla bilgi için bkz. Zaman serisi tablosu oluşturma.
RoleIoT Platform'a zaman serisi tablosuna veri yazma izni verin.
RAM rolü yoksa RAM konsolunda bir RAM rolü ve yetkilendirme ilkesi oluşturmak için Create RAM Role seçeneğine tıklayın. RAM rolü oluşturma.
Ayrıştırıcıyı yapılandırma ve başlatma
DataParser gibi bir ayrıştırıcı oluşturun. Daha fazla bilgi için bkz. Adım 1: Ayrıştırıcı oluşturma.
-
Resolver Details sayfasında veri kaynağını ilişkilendirin.
Yapılandırma sihirbazında Data Source altında Associate Data Source seçeneğine tıklayın.
İletişim kutusunda Data Source açılır listesinden DataSource'u seçin ve OK seçeneğine tıklayın.
-
Resolver Details sayfasında veri hedeflerini ilişkilendirebilirsiniz.
Yapılandırma sihirbazında Data Destination seçeneğine tıklayın. Ardından Data Destination listesinin sağ üst köşesindeki Associate Data Destination seçeneğine tıklayın.
Açılan iletişim kutusunda Data Destination açılır listesinden DataPurpose'u seçin ve OK seçeneğine tıklayın.
-
Veri hedefi listesinde Data Destination ID değerini bulun ve not edin. Örneğin: 1000.
Bu Data Destination ID değerine ayrıştırma betiğinde ihtiyacınız olacaktır.
parser details sayfasında Parser Script sekmesine tıklayın.
-
Kod düzenleyicide bir betik girin. Betiği değiştirme hakkında daha fazla bilgi için bkz. Betik sözdizimi.
İşlev parametreleri hakkında daha fazla bilgi için bkz. İşlev listesi.
// Call the payload() function to obtain the data that is submitted by devices and convert the data into the JSON format. var data = payload("json"); // Obtain the submitted property values. var h = data.items.Humidity.value; var t = data.items.Temperature.value; var datasource = deviceName(); var fields = {"temperature":t, "humidity":h}; var tags = {}; tags.put("region", "cn-shanghai"); var metricName = "property"; var timeInUs = timestamp()*1000; // Call the writeTableStoreTS method to write the temperature and humidity values to the corresponding columns based on the point in time at which the values are submitted. writeTableStoreTs(1000, timeInUs, metricName, tags, fields, datasource);metricName parametresini Temperature veya Humidity olarak ayarlayıp ilgili verileri de yazabilirsiniz. Örnek kod:
writeTableStoreTs(1000, [ { "timeInUs": timestamp() * 1000, "metricName": "Temperature", "tags":tags, "fields":{"temperature": t}, "dataSource": deviceName() }, { "timeInUs": timestamp() * 1000, "metricName": "Humidity", "tags":tags, "fields":{"humidity": h}, "dataSource": deviceName() }, ]); -
Debugging seçeneğine tıklayın. Açılan iletişim kutusunda bir ürün ve cihaz seçin, bir konu belirtin ve betiğin beklendiği gibi çalışıp çalışmadığını kontrol etmek için yük verisi (payload) girin.
Aşağıdaki şekilde parametreler gösterilmektedir.

Aşağıdaki bilgilere benzer bir çıktı döndürülürse betik beklendiği gibi çalışır.

Publish seçeneğine tıklayın.
Data Forwarding sayfasındaki Resolver sekmesine dönün ve DataParser ayrıştırıcısı için Start seçeneğine tıklayın.
-
Veriler gönderildikten sonra OTS konsolunda oturum açın. Verileri almak için kullanılan tablonun Data Editor sayfasına gidin ve belirtilen verilerin alınıp alınmadığını kontrol edin. Daha fazla bilgi için bkz. Zaman serisi verilerini sorgulama.
SQL sorgu özelliğini kullanarak OTS'deki veriler üzerinde karmaşık sorgular ve analizler yapabilirsiniz. Daha fazla bilgi için bkz. SQL kullanarak zaman serisi verilerini sorgulama.
