GH GambleHub

מיזוג נתונים ממקורות שונים

נתוני מיזוג ממקורות שונים

מיזוג נתונים הוא תהליך של שילוב זרמים הטרוגניים (בסיסי נתונים של מוצרים, CRM, ספקי תשלומים, יומני אירועים, רישומי צד שלישי) לישויות הוליסטיות ועקביות. המטרה היא לקבל תקליט זהב וחתכים עקביים עבור אנליטיקה, אם-אל ותיקים מבצעיים.

1) תרחישים ומטרות אופייניים

360 ° במהות: לקוח/שחקן, מכשיר, כלי תשלום, סוחר.
קונסולידציה של העסקה: ריבוי רישומי PSPS/Cash = רישום יחיד עם אידמפוטנטיות חובה.
נורמליזציה של אירוע: web/mobile/backend logs = מילון אירועים יחיד.
העשרה: ספריות חיצוניות (גיאו, FX, AML/סנקציות, מקורות שיווק).
מדדים מאוחדים: תיאום של מטבעות/אזורי זמן, מזימות וקידוד.

2) חוזים ותוכניות מקור

לפני תחילת - חוזה נתונים לכל מקור:
  • סכימה: שדות, סוגים, nullability, מפתח (s), תחומי ערך.
  • סמנטיקה: מה המשמעות של כל שדה (מילון).
  • SLA: רעננות/תדר, איחור מקסימלי ו מחוץ לסדר.
  • אבולוציה: מדיניות שינוי מזימה (אחורה/קדימה), דיכאון.
  • איכות: ייחודיות של מפתחות, טווחים מקובלים, שלמות התייחסות.

3) זיהוי: מפתחות ומיפוי (קישור שיא)

3. 1. תעודות זהות קשיחות

מפתחות טבעיים: "user _ id'," transaction _ id', "התקן _ id'," iban ".
מפתחות פרוקסי: דואר אלקטרוני/טלפון (מנורמל: מקרה, רווחים, קודי מדינה).
תחליפים: 'פונדקאית _ id' בטבלאות מרכזיות בהיעדר מפתח אוניברסלי.

3. 2. כללי התאמה רכים

דטרמיניסטי: התאמה מדויקת של דואר אלקטרוני מנורמל + DR; ”הביתה ”/” נייד ”טלפון E.164.
הסתברויות (Frozzy): Jaro-Winkler/Levenshtein לשמה/כתובת, TF-IDF/Mediting עבור מיתרים, ”חסימה” (חסימה) על ידי חשיש גס/קידומת להאצה.
גרף מתקרב: ישויות כצמתים, צירופי מקרים כקצוות; מקבץ רכיבי קישוריות.
אסטרטגיית שלב: מחוקים נוקשים ועד רכים עם סקירה ידנית ”בגבול”.

3. 3. כללי איחוד (הישרדות)

העדיפות של המקור היא ”KYC registry> CRM> logs” כאשר יש ניגוד ערכים.
רעננות: חותמת הזמן החדשה מנצחת (מותאמת לתוקף).
מלא: מעדיף לא-NULL; מיזוג כתובות/תגיות על ידי שילוב סטים.
שמור את ”שביל הפתרון” - מה נכתב ומדוע.

4) שכפול ו ־ MDM

שכבת MDM (Master Data Management): טבלאות ישות מאסטר + istochnik = יחסי מאסטר.
שיא זהב: שיא מצורף עם ”ביטחון” שדה/מקור של אמת.
היסטוריה: SCD type 2 עבור תכונות תלויות זמן (כתובת, מצב KYC).
זהויות: שולחנות מיזוג עם תאריכי מיזוג/שפיכה.

5) שינויים זורמים: CDC, איחורים ושכפולים

CDC (לכידת נתונים של שינוי): הכנס/עדכון/מחק ”+” source _ lsn'/offset.
אירועים מאוחרים: סימני מים ותקופת חסד, אחסון עדכונים מאוחרים עבור התאמות.
מיון לפי מפתח וזמן, פיצוי על עדכונים.
שכפול: מפתחות אידמפוטנטים ("event _ id'," idempotency _ key "), dedup בחלון.
בדיוק-פעם אחת: רווקים עסקיים/חנות, ”מיזוג” עם היגיון דטרמיניסטי.

6) אזונים, מטבעות ולוח שנה

זמן: לאחסן פרוסות מקומיות של UTC +; באופן מפורש לאחסן _ at 'and' event _ time.
מטבעות: לאחסן ”מטבע גולמי” ולנרמל ”base _ casy” עם שיעור על תאריך העסקה.
לוחות שנה: שולחנות חג/יום עבודה לפי אזור להשוואות הוגנות.

7) פסאודו-SQL למיזוג (upsert/merge)

7. 1. עסקאות (כתב עת אידמפוטנטי)

sql
MERGE INTO fact_transactions t
USING staging_transactions s
ON t. txn_id = s. txn_id
WHEN MATCHED AND s. updated_at > t. updated_at THEN
UPDATE SET amount = s. amount,
currency = s. currency,
status = s. status,
updated_at = s. updated_at
WHEN NOT MATCHED THEN
INSERT (txn_id, user_ext_id, amount, currency, status, event_time, updated_at)
VALUES (s. txn_id, s. user_ext_id, s. amount, s. currency, s. status, s. event_time, s. updated_at);

7. 2. משתמש ”תקליט זהב” (עדיפות מקור + רעננות)

sql
WITH ranked AS (
SELECT s. ext_user_id,
s. norm_email,
s. phone_e164,
s. addr_struct,
s. source,
s. updated_at,
ROW_NUMBER() OVER (
PARTITION BY s. ext_user_id
ORDER BY
CASE s. source
WHEN 'KYC' THEN 1 WHEN 'CRM' THEN 2 ELSE 3 END,
s. updated_at DESC
) AS rn
FROM staging_users s
)
MERGE INTO dim_user_golden g
USING ranked r
ON g. ext_user_id = r. ext_user_id
WHEN MATCHED AND r. rn = 1 THEN
UPDATE SET email = COALESCE(r. norm_email, g. email),
phone = COALESCE(r. phone_e164, g. phone),
address = COALESCE(r. addr_struct, g. address),
source_of_truth = r. source,
updated_at = r. updated_at
WHEN NOT MATCHED AND r. rn = 1 THEN
INSERT (ext_user_id, email, phone, address, source_of_truth, updated_at)
VALUES (r. ext_user_id, r. norm_email, r. phone_e164, r. addr_struct, r. source, r. updated_at);

8) איכות ובדיקות

סכימת מבחן: שדות דרושים, סוגים, תחומים.
מבחני היגיון: ייחודיות המפתח, היעדר שכפולים, ללא ”חזרה בזמן”.
פיוס: כמויות לפי מקור לעומת תצוגה סופית; סתירות כרטיסים.
פרופיל: הפצות, שבריר NULL, ”זנבות ארוכים”.
מיזוג מדדים: מפות דיוק/חזרה,% הרשומות עם סף ביטחון.

9) יכולת תצפית ו ־ SLO

רעננות SLO: lag חלון על פני N דקות/שעות; עיכוב ניטור וגיבוי.
התראות: עלייה בשכפולים, עלייה בעימותים, ירידה במפתחות הכיסוי.
יומני שושלת: מאיזה מקור נלקח השדה, כאשר ועל ידי מי הוא נכתב.
Runybooks: תרחישי תקרית (חבורות מאוחרות, סופות CDC, FX שגוי).

10) ביטחון, פרטיות, ציות

זהות בדויה, חשיש תעודת זהות, מסווה ב-BI.
RLS/CLS: גישה לפי תפקידים ושורות; יצוא עם אסימונים ותאריך תפוגה.
לכל החיים נתונים: לוחות זמנים אחסון; הזכות להסיר (DSAR) ו ”אחיזה משפטית”.
זיהוי מחדש: כללים למזעור ההצטרפות של טבלאות רגישות.

11) מודל וארגון נתונים

שכבות: 'raw' (כמו שהוא) * 'staging' (ניקוי/נורמליזציה) ”core” (ישויות מאסטר, עובדה/מדידות) * 'marts' (תצוגות עבור אנליטיקה/ML).
SCD: סוג 2 לתכונות, סוג 1 לתיקון שגיאות; מפורש 'valid _ from/תקף _ to'.
חנות תכונה: פונקציות טרנספורמציה זהות באינטרנט/לא מקוונות; תקינות נקודה בזמן.

12) תבניות יישום

ELT עם שכבה סמנטית: היגיון מיזוג מתואר באופן הצהרתי (כללים, סדר עדיפויות, מפתחות).
זרם + מיקרו-באץ ': עבור תצוגות כמעט בזמן אמת - מיקרו-באץ' 1-15 דקות עם סימני מים.
Graph-linkage: מרכז גרף נפרד לזיהוי מורכב (התקנים, מפות, כתובות).
אימות שלב למעלה: כולל כללי חיבור חדשים במצב צל, לאסוף מדדי דיוק.

13) רשימת שחרור הלולאה שלפני המיזוג

חוזי [ מקור ] נחתמו; תרשימים ומילוני שדה הם עקביים

[ ] מפתחות קישור/כללים מוגדרים; יש אסטרטגיית שכפול
[ ] נקבעים כללי הישרדות ועדיפויות מקור; רישומי ביקורת חשבונות מאופשרים
[ ] CDC/idempotency/מאוחר עיבוד נתונים מיושם
[ ] מטבעות/טימאזונים/לוח שנה מנורמל
[ ] נערכים מבחני איכות ופיוס; לוחות תצפית זמינים
[ ] הטריות והזמינות של SLO קבועות; התראות וחוברות רנטגן מוכנות
[ ] PII/גישה/ציות אחסון
[ תיעוד ]: דרכון ישות, תרשים שושלות, בקשות לדוגמה

14) דרכון של ”שיא הזהב” (תבנית)

ישות: "USER _ GOLDEN&POS

מפתח: ”user _ master _ id' (פונדקאית), מפיות 'מקור _ user _ id [ ]”

שדות וכללים:
  • דואר אלקטרוני: נורמליזציה + עדיפות "KYC> CRM> LOGSOPOS
  • E.164 נורמליזציה, פיצול אימות
  • שם: Jaro-Winkler = 0. 92, נסיגה - מקור KYC
  • 'אדרס': אובייקט מורכב; עדיפות איחוד + רעננות
  • היסטוריה: SCD2 ('valid _ from/valid _ to')
  • שושלת: רשימת התייחסות לשדה התורם
  • איכות: כיסוי ב-98%, דובליקטי ב-0. 3%
  • רעננות 1 שעה, זמינות 99. 9%
  • בעלים: פלטפורמת נתונים, KYC/AML
  • סיכונים: התנגשויות שמות, טלפונים ”משפחתיים”, מכשירים משותפים

15) סיכום והמלצות

מיזוג הוא לא רק ”מצטרף במפתח”, אלא גם מתווה: חוזי מקור = זיהוי ודדופ = סדרי עדיפויות ו ”שיא זהב” של CDC = = ואיכות מאוחרת = בטיחות ושינוי בהיסטוריה.
לבנות חוקים בשקיפות, לערוך ביקורת על כל פתרון, לתמוך ב-SCD ובדיוק פעם אחת. כך נתונים מעשרות מקורות הופכים לחנויות אמינות ומדדים ברי קיימא למוצר, אנליטיקה ו ML.

Contact

צרו קשר

פנו אלינו בכל שאלה או צורך בתמיכה.אנחנו תמיד כאן כדי לעזור.

Telegram
@Gamble_GC
התחלת אינטגרציה

Email הוא חובה. Telegram או WhatsApp — אופציונליים.

השם שלכם לא חובה
Email לא חובה
נושא לא חובה
הודעה לא חובה
Telegram לא חובה
@
אם תציינו Telegram — נענה גם שם, בנוסף ל-Email.
WhatsApp לא חובה
פורמט: קידומת מדינה ומספר (לדוגמה, +972XXXXXXXXX).

בלחיצה על הכפתור אתם מסכימים לעיבוד הנתונים שלכם.