• Link to X
  • Link to LinkedIn
  • Link to Facebook
  • עברית עברית עברית he
  • English English אנגלית en
Real Time DBA Magic
  • בית
  • Oracle
    • Data Guard
    • Performance
  • Big Data
    • Hadoop
  • אודות
    • מי אני
    • צור קשר
    • בלוג
    • Oracle ACE Program
  • Click to open the search input field Click to open the search input field חיפוש באתר
  • Menu Menu

ארכיון עבור תגית: bind peeking

הנך כאן: עמוד הבית1 / bind peeking

פוסטים

כמה מילים על bind peeking ואיך למחוק Execution Plan מה-Library Cache

21/03/2012/5 תגובות/ב- Oracle, Performance, PL/SQL, סקריפט, שליפות/מאת זהר אלקיים/זמן קריאה משוער: 4 דקות

ביצוע כוונון ביצועים זה אחד הדברים המעניינים ביותר בעולם של בסיסי נתונים – לפעמים אפילו שמעתי שאנשים מתייחסים לזה בתור סוג של "אומנות". אני חייב להסכים עם האמירה הזו: לפעמים כדי לפתור בעיית ביצועים צריך נפש של אומן – לחשוב מחוץ לקופסא, להיות יצירתי ולהפעיל הרבה אינטואיציה.

דבר נוסף שאני חושב שעוזר לנו הרבה פעמים כאשר מכווננים ביצועים זה זיכרון מעולה בתוספת של חיבה לנוסטלגיה. כל מי שניסה לעשות קצת טיונינג יותר מפעם אחת יודע שבפעם השנייה שהוא עושה טיונינג לאותה מערכת הוא מיד מנסה כדבר ראשון את הפתרון האחרון שעבד לו. ככה זה כולם – כל ניסיון לכוונן ביצועים מתחיל תמיד בהעלאת זיכרונות נוסטלגיים של כל בעיות הביצועים האחרות שאי פעם נתקלנו בהם ופתרנו כדי לראות אם משהו מתאים… 🙂

אחד הדברים הקשים ביותר לכוונון בעיני זה שליפות שלפעמים עובדות מהר ולפעמים לא ובתת הקטגוריה הזו, שליפות שמתנהגות ככה אבל לכולן יש את אותו ה-SQL ID ואותו Execution Plan (באותה סביבה, כמובן). איך דבר כזה יכול לקרות? לדוגמה אם משתמשים ב-Bind Variables אז התוכנית של השליפה מתוכננת על ידי ה-Optimizer פעם אחת וכל השליפות שבאות אחריה עושות soft parse וחוסכות לעצמן את הצורך ב-parse מיותר.
כל זה טוב ויפה אבל איך האופטימייזר יודע להעריך כמויות רשומות ותוכנית יעילה? בגרסה 9i נוספה תכונה מעניינת: Bind Peeking. האופטימייזר שנתקל בשליפה עם bind variables בפעם הראשונה "מציץ" לתוך המשתנים האלה, רואה איזה ערכים יש שם ומשתמש בהם כדי לקבוע תוכנית פעולה לשליפה שלנו.

תום קייט היה בארץ לפני כמה שנים וסיפר על העניין הזה סיפור מעניין. הסיפור היה כזה: פעם נפתחה קריאה מוזרה בתמיכה של אורקל בטענה שבימי שני בבוקר אבל רק בכאלה שיורד בהם גשם, אז בסיס הנתונים רץ לאט מהרגיל והדבר היחידי שהם מצאו שעוזר הוא לאתחל אותו בהפסקת הצהריים.

רגע, רגע, מה?!
המשך קריאה… →

https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png 0 0 זהר אלקיים https://www.realdbamagic.com/wp-content/uploads/2026/10/real-dba-magic-logo-1200w.png זהר אלקיים2012-03-21 18:25:382014-11-27 20:35:09כמה מילים על bind peeking ואיך למחוק Execution Plan מה-Library Cache
דירוג
  • שימוש ב-Append ו-redo logs05/04/2011 - 23:06
  • יצירת קובץ CSV על ידי שימוש ב-SQLPLUS...18/11/2010 - 17:45
  • כמה מילים על bind peeking ואיך למחוק Execution Plan מה-...21/03/2012 - 18:25
  • עולם ה- Big Data ופתרון ה- Hadoop – מאמר מתוך Oracle New...06/06/2012 - 09:00
פוסטים אחרונים
  • לאלה שתוהים למה הבלוג לא מתעדכן בעברית...23/05/2016 - 22:38
  • ההשפעה של no logging על data guard03/09/2015 - 10:45
  • תהליך ה-startup של אורקל (מדריך למתחילים)...18/05/2015 - 09:57
  • PRVF-0002 : Could not retrieve local nodename10/05/2015 - 15:39
תגובות
  • rotemadפוסט מעולה! אני יודע שזה פוסט ישן, אבל בכל זאת אני רק אוסיף ...24/05/2016 - 12:23 מאת rotemad
  • […] דוגמה אחרת היא הדוגמה הזו. […]...15/03/2016 - 22:36 מאת Oracle Database Firewall - Real DBA Magic
  • […] not as a participant) was in 2011. I gave to session...16/11/2015 - 10:27 מאת Oracle Database Advanced Querying Presentation
  • […] first time I took place (as a trainer, not as...16/11/2015 - 10:22 מאת Oracle Database Advanced Querying Presentation
תגיות
#oow13 12c 12cR1 awr Big data BigData csv Database data guard data guard broker Data warehouse DB12c DBIM expdp guide Hadoop howto iloug Linux Microsoft SQL Server New Features NoSQL opatch oracle Oracle 11g Oracle 12c oracle 12c new features Oracle Database Oracle Data Guard ORACLE DATAGUARD performance PL/SQL RAC redo log rman script SQL sqluldr startup vldb webinar with אורקל האדופ שבוע אורקל
© Copyright - Zohar Elkayam, Real DBA Magic, 2010-2017
  • Link to X
  • Link to LinkedIn
  • Link to Facebook
  • בית
  • Oracle
  • Big Data
  • אודות
Scroll to top Scroll to top Scroll to top
Manage Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
View preferences
  • {title}
  • {title}
  • {title}