במהלך סימון נתונים שהשתנו (CDC), Datastream קורא קבצים של יומני פעולות חוזרות של Oracle כדי לעקוב אחרי שינויים במסדי הנתונים של המקור ולשכפל אותם למופע היעד. לכל מסד נתונים של Oracle יש קבוצה של קובצי יומן שינויים (redo log) אונליין. כל רשומות העסקאות במסד הנתונים מתועדות בקבצים. כשקובץ היומן הנוכחי של הפעולות החוזרות עובר רוטציה (או מוחלף), תהליך הארכיון מעתיק את הקובץ הזה לאחסון ארכיון. בינתיים, מסד הנתונים מקדם קובץ אחר כדי שישמש כקובץ הנוכחי.
מחבר Oracle של Datastream מחלץ אירועים של לכידת נתוני שינוי (CDC) מקובצי יומן redo של Oracle.
גישה לקובצי יומן Redo
ב-Datastream אפשר להשתמש ב-Oracle LogMiner API או בשיטה של קריאת קבצים בינאריים כדי לגשת לקבצי יומן הרישום:
Oracle LogMiner: כלי מוכן לשימוש שכלול במסדי נתונים של Oracle. אם מגדירים את Datastream לשימוש ב-Oracle LogMiner API, Datastream יכול לעבוד רק עם קובצי יומן שינויים שנשמרו בארכיון. אין תמיכה בקובצי יומן שינויים אונליין. השיטה LogMiner API היא חד-הברגה, והיא כפופה לזמן אחזור גבוה יותר ולתפוקה נמוכה יותר כשעובדים עם מסדי נתונים של מקורות עם מספר גדול של עסקאות. LogMiner תומך ברוב סוגי הנתונים ובתכונות של מסד הנתונים של Oracle.
Binary reader (תצוגה מקדימה): כלי מיוחד עם ביצועים גבוהים שפועל עם קובצי יומן פעולות חוזרות באינטרנט וגם עם קובצי יומן פעולות חוזרות בארכיון. הכלי Binary reader יכול לגשת לקובצי היומן באמצעות Automatic Storage Management (ASM) או על ידי קריאת הקבצים ישירות באמצעות אובייקטים של ספריות מסד נתונים. קורא הבינארי הוא ריבוי-הליכי משנה ותומך ב-CDC עם השהיה נמוכה. בנוסף, הפעולה הזו יוצרת השפעה נמוכה על מסד הנתונים של המקור, כי יומני הפעולות החוזרות מנותחים מחוץ לפעולות של מסד הנתונים. יש תמיכה מוגבלת בשיטת ה-CDC של קריאת קבצים בינאריים עבור סוגים מסוימים של נתונים או תכונות. מידע נוסף זמין במאמר בנושא מגבלות ידועות.
הגדרת פרמטרים של קובצי יומן פעולות חוזרות של Oracle
כשמשתמשים בשיטת ה-CDC של LogMiner, לעיצוב הזה יש השלכות משמעותיות על זמן האחזור הפוטנציאלי של Datastream. מכיוון ש-LogMiner קורא רק מיומנים שנשמרו בארכיון, אם קובצי יומן השינויים של Oracle מוחלפים לעיתים קרובות או נשמרים בגודל קטן יותר (לדוגמה, פחות מ-256MB), Datastream יכול לשכפל שינויים מהר יותר. ההגבלה הזו לא חלה על השיטה binary reader, שקוראת באופן פעיל מקבצים של יומן פעולות חוזרות אונליין.
יש פרמטרים להגדרות שאפשר להגדיר כדי לשלוט בתדירות של סבב קובצי היומן:
גודל: הגודל המינימלי של קובצי יומן פעולות חוזרות אונליין הוא 4MB, והגודל שמוגדר כברירת מחדל תלוי במערכת ההפעלה. אפשר לשנות את הגודל של קובצי היומן על ידי יצירת קובצי יומן חדשים באינטרנט והסרת קובצי היומן הישנים.
כדי למצוא את הגודל של קובצי יומן הרישום של הפעולות לביצוע חוזר באינטרנט, מריצים את השאילתה הבאה:
SELECT GROUP#, STATUS, BYTES/1024/1024 MB FROM V$LOG
זמן: הפרמטר
ARCHIVE_LAG_TARGETמספק מגבלה עליונה של משך הזמן (בשניות) שיומן הרישום הנוכחי של מסד הנתונים הראשי יכול להימשך.זה לא הזמן המדויק של החלפת היומן, כי הוא כולל את הזמן שיידרש לארכיון של היומן. ערך ברירת המחדל הוא
0(ללא גבול עליון), ומומלץ להשתמש בערך סביר של1800(או 30 דקות) או פחות.אפשר להשתמש בפקודות הבאות כדי להגדיר את הפרמטר
ARCHIVE_LAG_TARGET, במהלך האתחול או בזמן שהמסד נתונים פועל:SHOW PARAMETER ARCHIVE_LAG_TARGET;הפקודה הזו מציגה את מספר השניות שיידרשו כדי שהיומן הנוכחי יכסה את כל התקופה.
ALTER SYSTEM SET ARCHIVE_LAG_TARGET = number-of-seconds;משתמשים בפקודה הזו כדי לשנות את הגבול העליון.לדוגמה, כדי להגדיר את המגבלה העליונה ל-10 דקות (או 600 שניות), מזינים
ALTER SYSTEM SET ARCHIVE_LAG_TARGET = 600;