Skip to Content
Elido is in closed beta — APIs are stable but rate-limits and quotas may change before GA. Request access →
KılavuzlarClickHouse export

ClickHouse dışa aktarımı

Tıklama olayları ClickHouse’ta yaşar (click_events tablosu). Bugün onları S3 uyumlu depolamaya zamanlanmış bir dışa aktarımla alırsınız; pano ayrıca Analytics altından eşzamansız CSV dışa aktarımları sunar.

Planlandı. Henüz kullanılamaz; yol haritasına bakın. Şunlar uygulanmamıştır: çalışma alanı başına salt okunur bir ClickHouse DSN (/clickhouse-dsn), Parquet çıktısı, BigQuery ve Snowflake hedefleri (API bu kind değerlerini kabul eder ancak dışa aktarım işçisi bunları reddeder), bölge başına DSN ana bilgisayarları ve ClickHouse’ta bir conversions tablosu (dönüşümler Postgres’te yaşar). Aşağıdaki 3. ve 4. bölümler bugün var olanı anlatır.

1. Bugün var olanlar

YetenekDurum
S3 / MinIO’ya zamanlanmış dışa aktarım (kind: "s3")Kullanılabilir
Zamanlamalarhourly veya daily (varsayılan daily)
Çıktı biçimigzip ile sıkıştırılmış NDJSON, satır başına bir tıklama
Panodan eşzamansız CSV dışa aktarımıKullanılabilir (/analytics-exports)
Doğrudan salt okunur ClickHouse DSNPlanlandı
Parquet çıktısıPlanlandı
BigQuery / Snowflake hedefleriPlanlandı

2. Şema

Ham tıklamalar click_events içinde saklanır:

SütunTürNotlar
timestampDateTime64(3, 'UTC')milisaniye hassasiyeti
link_idUInt64bağlantı satır kimliği
workspace_idUInt64
domain_idUInt64
slug, hostLowCardinality(String)
user_agent, refererString
ipStringkesilmeden tam olarak saklanır
country_codeFixedString(2)ISO-3166-1 alpha-2
device, browserLowCardinality(String)
destinationStringçözümlenmiş hedef URL’si
is_suspicious, suspicion_reasonsUInt8, Array(String)tıklama sahtekârlığı sezgisel işareti
anonymizer_typeLowCardinality(String)VPN / proxy sınıflandırması

Tıklama başına click_id yoktur ve UTM’ler ayrı sütunlar olarak saklanmaz; hedef URL’nin parçasıdırlar.

Zamanlanmış dışa aktarım şu anda tıklama başına şu alanları yazar: timestamp, link_id, workspace_id, domain_id, slug, host, user_agent, referer, ip, country_code, device, browser, destination. (device, browser ve destination şu anda boş dize olarak dışa aktarılır.)

3. Zamanlanmış S3 dışa aktarımı

export.manage izni gerekir.

curl -X PUT \ https://api.elido.app/v1/workspaces/1/export \ -H "Authorization: Bearer $ELIDO_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "kind": "s3", "enabled": true, "schedule": "hourly", "destination": { "bucket": "acme-bi-warehouse", "prefix": "elido" } }'

Yapılandırmaları GET /v1/workspaces/{id}/export, PATCH /v1/workspaces/{id}/export/{kind}/enabled ve DELETE /v1/workspaces/{id}/export/{kind} ile yönetin.

Her çalıştırma çalışma alanı başına bir nesne yazar: <prefix>/exports/<workspace_id>/<YYYY-MM-DD>/clicks_<HHMMSS>.ndjson.gz. İlk çalıştırma tüm geçmişi dışa aktarır; sonraki çalıştırmalar yalnızca bir önceki çalıştırmadan beri olan tıklamaları aktarır. Kendi barındıranlar için: S3 uç noktası ve kimlik bilgileri api-core ortamından gelir.

4. Veri ambarına yükleme

Dosyalar NDJSON olduğu için BigQuery (bq load --source_format=NEWLINE_DELIMITED_JSON), Snowflake (TYPE = JSON ile COPY INTO) ve Redshift bunları kovadan standart yükleyicileriyle yükleyebilir. Yerel Parquet ve itme (push) tarzı BigQuery / Snowflake hedefleri planlanmıştır.

5. Uç durumlar

  • Gecikme: dışa aktarımlar zamanlama aralığı kadar geriden gelir (hourly = en fazla 60 dakika geride).
  • Saklama: click_events üzerinde şu anda otomatik bir süre dolumu (TTL) yoktur; plana dayalı saklama pencereleri planlanmıştır.
  • Bölge sabitleme: henüz kullanılamaz; tüm tıklama verileri AB dağıtımında saklanır.
  • Şema evrimi: sütunlar ALTER TABLE ... ADD COLUMN IF NOT EXISTS ve varsayılan değerlerle eklenir; mevcut sütunlar yeniden adlandırılmaz.

Ayrıca bakın

  • Dönüşüm izleme: dönüşümlerin nasıl kaydedildiği (Postgres’te, Stripe / Shopify webhook’ları aracılığıyla)
  • API başvurusu: dışa aktarım yapılandırma uç noktaları