Günlükler

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Rami Krispin

Senior Manager, Data Science and Engineering

Boru hattı günlükleri

Günlükleme

  • Üstveri
  • Doğrulama testleri
  • Durum
  • Performans
Üretim için Tahmin (Forecasting) Hatları Tasarlama

Boru hattı günlükleri

Günlükleme

  • Üstveri
  • Doğrulama testleri
  • Durum
  • Performans

İşlevsellik

  • Gözlemlenebilirlik
  • Hata ayıklama
  • Role dayalı kararlar
Üretim için Tahmin (Forecasting) Hatları Tasarlama

Günlükleri ayarlama

  • Günlük şemasını ayarlayın
  • Senaryoları yönetin:
    • Yeni veri yok
    • Doğrulama sonucu
  • Günlüğü ekleyin
Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

API Görevini Kontrol Et

import etl.eia_etl as ee

log = ee.Log()
facet = {'respondent': 'US48', 'type': 'D'}
log.create_log(facets = facets)

Günlük Şeması

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

API Görevini Kontrol Et

import etl.eia_etl as ee

log = ee.Log()
facet = {'respondent': 'US48', 'type': 'D'}
log.create_log(facets = facets)

Günlük Şeması

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

API Görevini Kontrol Et

import etl.eia_etl as ee

log = ee.Log()
facet = {'respondent': 'US48', 'type': 'D'}
log.create_log(facets = facets)

Günlük Şeması

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

API Görevini Kontrol Et

import etl.eia_etl as ee

log = ee.Log()
facet = {'respondent': 'US48', 'type': 'D'}
log.create_log(facets = facets)

Günlük Şeması

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

API Görevini Kontrol Et

import etl.eia_etl as ee

log = ee.Log()
facet = {'respondent': 'US48', 'type': 'D'}
log.create_log(facets = facets)

Günlük Şeması

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

API Görevini Kontrol Et

import etl.eia_etl as ee

log = ee.Log()
facet = {'respondent': 'US48', 'type': 'D'}
log.create_log(facets = facets)

Günlük Şeması

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

API Görevini Kontrol Et

import etl.eia_etl as ee

log = ee.Log()
facet = {'respondent': 'US48', 'type': 'D'}
log.create_log(facets = facets)

Günlük Şeması

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

API Durumu Görevi

meta = ee.get_metadata(api_key = api_key,
api_path = api_meta_path, 
meta_path= log_path, 
facets = facets, 
offset = 22, window = 336)

API Durumu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Veri Durumu Görevi

meta = ee.get_metadata(api_key = api_key,
api_path = api_meta_path, 
meta_path= log_path, 
facets = facets, 
offset = 22, window = 336)

API Durumu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Doğrulama Görevi

if not meta.updates_available:
  log.no_updates()

API Durumu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Doğrulama Görevi

API Durumu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Veriyi Yenileme Görevi

get = ea.eia_get(api_key=api_key, 
    api_path= api_data_path, 
    data = "value", facets = facets, 
    start = meta.start, 
    end = meta.api_end_offset)

Veri Çıktısı

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Veri Yenileme Hatası Görevi

log.failure()
Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Veri Doğrulama Görevi

test = ee.Validation(data = get.data,  
tbl_name= "get request", 
label = "validation",
parameters=get.parameters,initial= False,
warning=0.10, error=0, critical=0)
schema_refresh = pb.Schema(
    columns=[
        ("index", "datetime64[ns]"),   
        ("respondent", "object"),
        ("respondent-name", "object"),
        ("type", "object"),
        ("type-name", "object"),
        ("value", "int64"),
        ("value-units", "object")
    ])

test.add_schema(schema = schema_refresh)
Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Veri Doğrulama Görevi

Veri Doğrulama Özeti

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Doğrulama Hatası Görevi

log.failure()
Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

Veriyi Ekleme Görevi

if log.log["status"]:
  print("Appending the data")
  df = ee.AppendData()
  df.append_data(data_path = data_path, 
    new_data = get.data,save = True,
    schema = schema_append, 
    parameters = get.parameters)
  print(df.validation)
  if df.status and df.save:
    log.log["update"] = True
  else:
    log.log["update"] = False
Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

ETL Günlük Tablosu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

ETL Günlük Tablosu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

ETL Günlük Tablosu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

ETL günlük süreci

ETL Günlük Tablosu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Tahmin günlüğü süreci

Tahmini Yenileme Görevi

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Tahmin günlüğü süreci

Tahmini Puanlama Görevi

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Tahmin günlüğü süreci

Tahmin Günlük Tablosu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Tahmin günlüğü süreci

Tahmin Günlük Tablosu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Tahmin günlüğü süreci

Tahmin Günlük Tablosu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Tahmin günlüğü süreci

Tahmin Günlük Tablosu

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Pratik zamanı!

Üretim için Tahmin (Forecasting) Hatları Tasarlama

Preparing Video For Download...