Skip to Content

Veri Bağlama

Veri bağlama, proje veritabanı ile IoT panolarınızdaki widget’lar arasındaki köprüdür. Bir widget’ın yapılandırılabilir özelliklerinin neredeyse tamamı — başlığı, değerleri, renkleri, grafik serileri, gösterge aralıkları — projenizin TimescaleDB’sinden gelen canlı verilerle dinamik olarak yönlendirilebilir. Bu sayfa, tablo sütunlarını widget özelliklerine nasıl bağlayacağınızı ve verilerinizi filtrelerle nasıl inceltebileceğinizi açıklar.

Verilerin proje veritabanına nasıl ulaştığına dair geniş bir genel bakış için veri yönetimi genel bakışına göz atın.

Verileri bağlamanın iki yolu

IronFlock Board Studio iki temel bağlama modunu destekler:

  1. Değer referansları — bir widget özelliğine tek bir skaler değeri (bir sütundan en son kayıt) bağlar.
  2. Tablo referansları — bir dizi bekleyen bir widget özelliğine tüm bir sonuç kümesini (birden çok satır) bağlar.

Her iki mod da filtrelemeyi destekler ve gerçek zamanlı güncellemeler sağlar: proje veritabanına yeni satırlar ulaştığı anda bağlı widget özellikleri yoklama olmadan otomatik olarak güncellenir.

Değer referansları

Çoğu widget yapılandırma alanı tek bir değer bekler — bir başlık, gösterilecek bir sayı, bir renk, bir durum etiketi vb. Widget düzenleyicide bu alanların altında küçük bir veri bağlama anahtarı bulunur.

Anahtarı etkinleştirip alana tıkladığınızda, proje veritabanınızdaki tüm mevcut verileri listeleyen bir açılır menü açılır. Şunları yapabilirsiniz:

  1. proje veritabanından bir tablo seçin;
  2. o tablodaki bir sütunu özelliğe bağlamak için seçin.

Örnek: bir gösterge widget’ının Başlık alanını machine tablosundaki name sütununa veya sayısal widget’ın Değer alanını sensor_data tablosundaki en son temperature değerine bağlayabilirsiniz.

En son değer

Bir değer referansı her zaman seçilen sütundan en son tek değeri sunar. “En son” zorunlu tsp sütunuyla belirlenir — proje veritabanındaki her tablonun bir tsp zaman damgası sütunu vardır ve en büyük tsp’ye sahip satır kazanır.

Filtre simgesi

Bir sütunu bir widget özelliğine bağladığınızda, alanın altındaki veri anahtarının yanında küçük bir filtre simgesi görünür. Buna tıklamak, değer çıkarılırken hangi satırların dikkate alınacağını daraltmak için filtreleri yapılandırabileceğiniz bir iletişim kutusu açar. Aşağıdaki Filtre yapılandırması bölümüne bakın.

Tablo referansları

Bazı widget’lar skaler yerine bir değer dizisi bekler. Örneğin, bir grafik widget’ı bir çizgi çizmek için birçok (x, y) noktasına ve bir tablo widget’ı birçok satıra ihtiyaç duyar.

Bu yerlerde widget düzenleyici, alan etiketinin yanında hem bir Ekle düğmesi (dizi öğelerini elle eklemek için) hem de bir veri bağlama anahtarı gösterir.

  • Manuel mod: Ekle’ye tıklayarak öğeleri statik değerlerle birer birer ekleyin.
  • Veri bağlama modu: diziyi bir tabloya bağlamak için anahtarı açın. Bir tablo seçtiğinizde, kriterlerinize uyan her satır dizide bir öğe haline gelir.

Veri anahtarının yanındaki filtre simgesi, döndürülen satırları gereksinimlerinize uyacak şekilde daraltmanıza olanak tanır — Filtre yapılandırmasına bakın.

Sütunları dizi öğesi alanlarına eşleme

Tablo referanslı veri bağlama aktif olduğunda, bağlı tablodan değerler kullanarak tek bir dizi öğesi şablonu yapılandırırsınız. Bir çizgi grafiği için bir öğenin x ve y değerine ihtiyacı vardır — her eksene hangi sütunun bağlı tablodan besleyeceğini seçerek her ikisini de veriye dayalı hale getirebilirsiniz. Filtrelenmiş sonuç kümesindeki her satır daha sonra bu eşlemeyi kullanarak grafiğe çizilir.

Aynı desen, bir diziyi kabul eden her widget için geçerlidir: çubuk grafikler, tablolar, listeler, ısı haritaları vb.

Filtre yapılandırması

Filtreler, bir değer veya tablo referansı için hangi satırların kullanıldığını daraltır. İletişim kutusundaki bölümler gösterildikleri sırayla uygulanır — bu aynı zamanda proje veritabanının onları uyguladığı sıradır:

Zaman penceresi ayarları, rastgele sütun filtreleri ve satır sınırını gösteren filtre yapılandırma iletişim kutusu

1. Kayan zaman penceresi

Kayıtların zamana göre nasıl filtreleneceğini yapılandırın:

  • Kayan pencere — şimdiye göre yalnızca son N dakika, saat, gün vb. satırları gösterin.
  • Özel zaman penceresi — bir başlangıç parametresi ve bir bitiş parametresi adı sağlayın. Bu parametre adları çalışma zamanında takvim widget’ı tarafından beslenir ve son kullanıcıların panoda bir zaman aralığı seçmesine olanak tanır.

2. Rastgele sütun filtreleri

Aşağıdaki değer kaynaklarından birini kullanarak istediğiniz kadar sütun düzeyinde filtre ekleyin:

  • Sabit değerler — sabit kodlanmış bir değer (ör. status = 'active').
  • Filtre parametrelerifiltre widget’larından URL üzerinden beslenen değerler.
  • Yönlendirme yol segmentlerinavigasyon widget’ları aracılığıyla mevcut sayfa URL’sinden çıkarılan değerler.

3. Toplulaştırma

Varsayılan olarak bir bağlama ham satırlar döndürür. Bunu Zaman içinde toplulaştırılmış seçeneğine geçirdiğinizde, proje veritabanı seçilen kayıtları zaman aralıklarına — ya da kategorilere — gruplar ve grup başına hesaplanmış tek bir değer döndürür: saatlik ortalamalar, makine başına kayıt sayısı, bugünün toplamı.

Filtreler bu adımdan önce çalıştığı için, her aralığa hangi kayıtların gireceğine onlar karar verir. Toplulaştırma kendi sayfasında ayrıntılı olarak anlatılmıştır: bkz. Toplulaştırma ve Aşağı Örnekleme.

4. Satır sınırı

Widget için döndürülen satır sayısına bir üst sınır belirleyin. Sınır 3000’i aşamaz — bu tavan, hem tarayıcıyı hem de proje veritabanını aşırı büyük sonuç kümelerinden korur.

Toplulaştırılmış bir bağlamada döndürülen aralık sayısı bunun yerine (widget’ın genişliğinden veya seçtiğiniz aralıktan) türetilir ve satır sınırı yalnızca bir yedek güvenlik önlemi olarak iş görür.

Bütün bölümler birlikte çalışır: zaman penceresi zaman aralığını daraltır, sütun filtreleri satırları daha da inceltir, toplulaştırma bunları aralık başına tek bir değere indirger ve satır sınırı nihai çıktıyı sınırlar.

JSON sütunlarından alan seçme

Proje veritabanı, yapılandırılmamış veya yarı yapılandırılmış veriler için JSON sütunlarını destekler — cihaz telemetri yükleri, yapılandırma blobları, iç içe kayıtlar.

Bir JSON sütununu bir widget özelliğine bağladığınızda, JSON yapısı içindeki bir yaprak alana giden bir yolu belirtmenize olanak tanıyan ek bir giriş görünür. Yol, standart JavaScript nesne gösterimini kullanır:

sensor.temperature payload.items.0.value metadata.location.city

Widget, her kayıttan bu yoldaki değeri çıkarır. Bu, hem değer referansları (en son JSON kaydından çıkarılan yaprak) hem de tablo referansları (her satırdan çıkarılan yaprak) için çalışır.

Özet

  • Skaler özellikler (başlıklar, değerler, renkler) için değer referanslarını kullanın — tsp’ye göre en son değeri alırsınız.
  • Dizi özellikleri (grafik serileri, tablolar, listeler) için tablo referanslarını kullanın — sütunları dizi öğesi alanlarına eşleyerek.
  • Satırları zaman penceresine, sütun filtrelerine ve satır sınırına (maks. 3000) göre inceltmek için filtre iletişim kutusunu kullanın.
  • Kayıtlar yerine hesaplanmış değerler istediğinizde bir bağlamayı toplulaştırılmış moda geçirin — bkz. Toplulaştırma ve Aşağı Örnekleme.
  • Yapılandırılmamış JSON sütunlarına inmek için JSON yol gösterimini kullanın.
Last updated on