เราจํากัดฟังก์ชัน SQL ที่คุณใช้ใน ADH ได้เพื่อเหตุผลด้านความเป็นส่วนตัว
ฟังก์ชันสเกลาร์
อนุญาตให้ใช้ฟังก์ชันสเกลาร์ทั้งหมด ยกเว้นฟังก์ชันต่อไปนี้
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
การค้นหาการวิเคราะห์
สําหรับการค้นหาการวิเคราะห์แบบรวม เราจะจํากัดฟังก์ชันที่รวมข้อมูลจากผู้ใช้หลายคน อนุญาตให้ใช้ฟังก์ชันการรวมข้อมูลและการวิเคราะห์ทั้งหมดเมื่อประมวลผลข้อมูลของผู้ใช้รายเดียว ดูรายละเอียดได้ที่การรวมข้อมูลระดับผู้ใช้ด้านล่าง
ฟังก์ชันรวมข้อมูล
| ฟังก์ชัน | อนุญาตหรือไม่ |
|---|---|
ANY_VALUE |
ใช่ |
APPROX_QUANTILES |
ไม่ได้ |
APPROX_TOP_COUNT |
ไม่ได้ |
APPROX_TOP_SUM |
ไม่ได้ |
ARRAY_AGG |
ไม่ได้ |
ARRAY_CONCAT_AGG |
ไม่ได้ |
AVG |
ใช่ |
BIT_AND |
ไม่ได้ |
BIT_OR |
ไม่ได้ |
BIT_XOR |
ไม่ได้ |
COUNT |
ได้ |
COUNTIF |
ได้ |
LOGICAL_AND |
ได้ |
LOGICAL_OR |
ได้ |
MAX |
ได้ |
MIN |
ได้ |
SUM |
ได้ |
CORR |
ได้ |
COVAR_POP |
ได้ |
COVAR_SAMP |
ได้ |
STDDEV_POP |
ได้ |
STDDEV_SAMP |
ได้ |
STDDEV |
ได้ |
STRING_AGG |
ไม่ได้ |
VAR_POP |
ได้ |
VAR_SAMP |
ได้ |
VARIANCE |
ได้ |
APPROX_COUNT_DISTINCT |
ใช่ |
ฟังก์ชันการวิเคราะห์
ฟังก์ชันวิเคราะห์ทั้งหมดถูกจํากัด
ฟังก์ชัน HyperLogLog++
Ads Data Hub รองรับฟังก์ชัน HyperLogLog++ (HLL++) แต่จะใช้ประเภทข้อมูลที่เฉพาะเจาะจงซึ่งมีข้อจํากัดมากกว่า
ประเภทที่รองรับ
| ประเภท | คำอธิบาย |
|---|---|
ADH.USER_HLL |
ภาพร่างที่รวบรวมจากค่าประเภท ADH.USER_ID |
ADH.BYTE_HLL |
ภาพร่างที่รวบรวมจากค่าของประเภทที่ไม่ใช่รหัส |
ประเภทเหล่านี้รองรับการผสานและการดึงข้อมูลไปยังค่าประมาณ Cardinality และไม่รองรับการเปลี่ยนเป็นประเภทอื่นๆ โดยตรง ไม่สามารถส่งออกโดยตรงจาก Ads Data Hub ได้ จึงต้องใช้ HLL_COUNT.EXTRACT หรือ HLL_COUNT.MERGE ก่อนถึงเอาต์พุตการค้นหา
ภาพร่าง HLL ช่วยในการประมาณ Cardinality ในการรวมหลายเลเยอร์ แต่โปรดทราบว่าใน Ads Data Hub นั้นภาพร่างไม่ได้ช่วยปรับปรุงประสิทธิภาพมากนักเมื่อเทียบกับ COUNT(DISTINCT) ในเลเยอร์เดียว
ฟังก์ชันที่รองรับ
| ชื่อฟังก์ชัน | ประเภทที่รองรับ | ประเภทการแสดงผล |
|---|---|---|
HLL_COUNT.EXTRACT
|
ADH.USER_HLL,
ADH.BYTE_HLL |
INT64
|
HLL_COUNT.INIT
|
ประเภทมาตรฐานทั้งหมดที่รองรับ
ADH.USER_ID |
ADH.USER_HLL สำหรับ input ADH.USER_ID
หรือ ADH.BYTE_HLL |
HLL_COUNT.INITNT.MERGE
|
ADH.USER_HLL,
ADH.BYTE_HLL |
INT64
|
HLL_COUNT.MERGE_PARTIAL
|
ADH.USER_HLL,
ADH.BYTE_HLL |
ใช้ข้อมูลเดียวกันกับประเภทอินพุต |
ข้อจำกัด
Noise Injection: ระบบไม่รองรับฟังก์ชัน HLL++ เมื่อเรียกใช้การค้นหาโดยใช้Noise Injection
การรวมระดับผู้ใช้
เราอนุญาตให้ใช้ฟังก์ชันรวมและฟังก์ชันวิเคราะห์ทั้งหมดในคำสั่ง SELECT ที่จัดกลุ่มหรือแบ่งพาร์ติชันตาม user_id ในการทําให้วิธีนี้ทํางาน การรวมก่อนหน้าต้องระบุให้ชัดเจนว่าข้อมูลได้รับการเก็บไว้ที่ระดับผู้ใช้โดยการรวมกับ user_id ดังตัวอย่างต่อไปนี้
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)
การค้นหารายการผู้ใช้
ในข้อความค้นหารายการผู้ใช้ ระบบจะอนุญาตฟังก์ชันการรวมข้อมูล และไม่รองรับฟังก์ชันการวิเคราะห์