Gizlilik nedeniyle, ADH'de kullanabileceğiniz SQL işlevlerini sınırlandırırız.
Skaler işlevler
Aşağıdakiler hariç tüm skaler işlevlere izin verilir:
ERRORST_AREAST_ASBINARYST_ASGEOJSONST_ASTEXTST_BOUNDARYST_CENTROIDST_CENTROID_AGGST_CLOSESTPOINTST_CLUSTERDBSCANST_CONTAINSST_CONVEXHULLST_COVEREDBYST_COVERSST_DIFFERENCEST_DIMENSIONST_DISJOINTST_DISTANCEST_DUMPST_DWITHINST_EQUALSST_GEOGFROMGEOJSONST_GEOGFROMTEXTST_GEOGFROMWKBST_GEOGPOINTST_GEOGPOINTFROMGEOHASHST_GEOHASHST_INTERSECTIONST_INTERSECTSST_INTERSECTSBOXST_ISCOLLECTIONST_ISEMPTYST_LENGTHST_MAKELINEST_MAKEPOLYGONST_MAKEPOLYGONORIENTEDST_MAXDISTANCEST_NPOINTSST_NUMPOINTSST_PERIMETERST_SIMPLIFYST_SNAPTOGRIDST_TOUCHESST_UNIONST_UNION_AGGST_WITHINST_XST_Y
Analiz sorguları
Toplu analiz sorguları için birden fazla kullanıcının verilerini birleştiren işlevleri kısıtlarız. Tek bir kullanıcının verisi işlenirken tüm toplu işlevlere ve analiz işlevlerine izin verilir. Ayrıntılar için aşağıdaki Kullanıcı düzeyinde toplama bölümüne bakın.
Toplama işlevleri
| İşlev | İzin veriliyor mu? |
|---|---|
ANY_VALUE |
Evet |
APPROX_QUANTILES |
Hayır |
APPROX_TOP_COUNT |
Hayır |
APPROX_TOP_SUM |
Hayır |
ARRAY_AGG |
Hayır |
ARRAY_CONCAT_AGG |
Hayır |
AVG |
Evet |
BIT_AND |
Hayır |
BIT_OR |
Hayır |
BIT_XOR |
Hayır |
COUNT |
Evet |
COUNTIF |
Evet |
LOGICAL_AND |
Evet |
LOGICAL_OR |
Evet |
MAX |
Evet |
MIN |
Evet |
SUM |
Evet |
CORR |
Evet |
COVAR_POP |
Evet |
COVAR_SAMP |
Evet |
STDDEV_POP |
Evet |
STDDEV_SAMP |
Evet |
STDDEV |
Evet |
STRING_AGG |
Hayır |
VAR_POP |
Evet |
VAR_SAMP |
Evet |
VARIANCE |
Evet |
APPROX_COUNT_DISTINCT |
Evet |
Analiz işlevleri
Tüm analiz işlevleri kısıtlanmıştır.
HyperLogLog++ işlevleri
Ads Data Hub, HyperLogLog++ (HLL++) işlevlerini destekler. Ancak bu işlevlerde daha kapsamlı sınırlamaları olan özel veri türleri kullanılır.
Desteklenen türler
| Tür | Açıklama |
|---|---|
ADH.USER_HLL |
ADH.USER_ID türü değerlerden toplanan bir çizim |
ADH.BYTE_HLL |
Kimlik dışı türde değerlerden toplanan bir çizim |
Bu türlerde birleştirme ve kardinalite tahminlerine çıkarma desteklenir, başka türlere doğrudan dönüştürme desteklenmez. Bu türler Ads Data Hub'da doğrudan dışa aktarılamayacağından sorgu çıkışına ulaşmadan önce HLL_COUNT.EXTRACT ya da HLL_COUNT.MERGE kullanılması gerekir.
HLL çizimleri birden çok toplama katmanında kardinalite tahminine olanak tanısa da Ads Data Hub'da, tek bir katmanda COUNT(DISTINCT) kullanımına kıyasla performansta ciddi bir iyileşme sağlamadığını unutmayın.
Desteklenen işlevler
| İşlev adı | Desteklenen türler | Dönüş türü |
|---|---|---|
HLL_COUNT.EXTRACT
|
ADH.USER_HLL,
ADH.BYTE_HLL |
INT64
|
HLL_COUNT.INIT
|
Desteklenen tüm standart türler,
ADH.USER_ID |
ADH.USER_ID girişi için ADH.USER_HLL, aksi halde ADH.BYTE_HLL |
HLL_COUNT.INITNT.MERGE
|
ADH.USER_HLL,
ADH.BYTE_HLL |
INT64
|
HLL_COUNT.MERGE_PARTIAL
|
ADH.USER_HLL,
ADH.BYTE_HLL |
Giriş türüyle aynı |
Sınırlamalar
Gürültü yerleştirme: Gürültü yerleştirme kullanılarak çalıştırılan sorgularda HLL++ işlevleri desteklenmez.
Kullanıcı düzeyinde toplama
SELECT ifadelerinde user_id tarafından gruplandırılan veya bölümlenen tüm toplu işlevlere ve analiz işlevlerine izin verilir. Bunu gerçekleştirmek için, önceki tüm birleştirme işlemleri aşağıdaki örnekte gösterildiği gibi user_id üzerinden birleşerek verilerin kullanıcı düzeyinde tutulduğunu açıkça belirtmelidir:
CREATE TABLE paths AS (
SELECT ARRAY_AGG(campaign_id ORDER BY query_id.time_usec) AS path
FROM
adh.google_ads_impressions
LEFT JOIN adh.google_ads_creative_conversions
USING(query_id, user_id)
GROUP BY user_id)
Kullanıcı listesi sorguları
Kullanıcı listesi sorgularında, toplama işlevlerine izin verilir ve analiz işlevleri desteklenmez.