انواع Statistics در پایگاه داده اوراکل

تیم تحریریه 1403/09/04 0 14
لینک کوتاه https://zoheirsoftware.com/z/cc58071 |
انواع آمار (Statistics) در پایگاه داده اوراکل,Gathering آمار در پایگاه داده اوراکل, Deleting آمار در پایگاه داده اوراکل

مفهوم Statistics در پایگاه داده اوراکل

در پایگاه داده اوراکل (Oracle Database)، Statistics به مجموعه‌ای از داده‌های تحلیلی گفته می‌شود که برای بهینه‌سازی عملکرد کوئری‌ها و تصمیم‌گیری موتور پایگاه داده در اجرای بهتر آن‌ها استفاده می‌شود.

این آمار شامل اطلاعاتی مانند تعداد ردیف‌ها، تعداد بلوک‌ها، میزان پراکندگی داده‌ها (Density)، اندازه جدول‌ها، شاخص‌ها، توزیع مقادیر ستون‌ها (Histograms)، و مواردی مانند Selectivity و Cardinality است.

اوراکل از این آمار برای ایجاد Execution Plan بهینه استفاده می‌کند.

تنظیم و بروزرسانی صحیح Statistics با استفاده از ابزارهایی مانند DBMS_STATS یا دستور ANALYZE، نقش مهمی در بهبود عملکرد پایگاه داده دارد.

آمارها شامل اطلاعاتی از قبیل تعداد رکوردها، توزیع مقادیر در یک ستون و سایر جزئیات مرتبط با جداول و ایندکس‌ها می‌شوند.

در این مقاله، به بررسی انواع آمار در پایگاه داده اوراکل، نحوه جمع‌آوری (Gathering)، حذف (Deleting) و انتقال (Transferring) آمار خواهیم پرداخت.

مفهوم Statistics در پایگاه داده اوراکل

انواع آمار (Statistics) در پایگاه داده اوراکل

  • آمار سطح جدول (Table Statistics)

    آمار سطح جدول شامل اطلاعات کلی درباره یک جدول، از جمله تعداد رکوردها، تعداد بلوک‌ها، و میانگین اندازه رکوردها است.
    این آمار به بهینه‌ساز کمک می‌کند تا تخمین بزند که اجرای یک کوئری با استفاده از یک جدول خاص چقدر زمان و منابع نیاز دارد.
  • آمار سطح ستون (Column Statistics)

    آمار سطح ستون شامل اطلاعاتی درباره توزیع مقادیر در یک ستون خاص از جدول است.
    این آمار شامل حداکثر و حداقل مقادیر، تعداد مقادیر منحصر به فرد و توزیع فرکانس مقادیر است.
    بهینه‌ساز می‌تواند از این اطلاعات برای تعیین بهترین راه اجرای کوئری استفاده کند.
  • آمار ایندکس (Index Statistics)

    آمار ایندکس اطلاعاتی درباره ایندکس‌ها در پایگاه داده اوراکل ارائه می‌دهد.
    این آمار شامل تعداد برگ‌های ایندکس، عمق ایندکس، و تعداد رکوردهایی است که ایندکس شامل می‌شود.
    آمار ایندکس به بهینه‌ساز کمک می‌کند تا تصمیم بگیرد که آیا باید از ایندکس برای جستجوی داده‌ها استفاده کند یا خیر.
  • آمار کلیدهای اولیه و خارجی (Primary and Foreign Key Statistics)

    این آمار شامل اطلاعاتی درباره کلیدهای اولیه و خارجی جداول است.
    بهینه‌ساز می‌تواند از این آمار برای درک روابط بین جداول استفاده کند و به این ترتیب بهتر بتواند از JOINها بهره ببرد.
  • آمار توزیع (Histogram Statistics)

    آمار توزیع شامل اطلاعات دقیق‌تری درباره توزیع مقادیر در یک ستون خاص است.
    این نوع آمار به ویژه زمانی مفید است که یک ستون شامل مقادیر با توزیع نامتوازن باشد.
    بهینه‌ساز می‌تواند از این آمار برای بهبود تخمین‌های خود در هنگام اجرای کوئری‌ها استفاده کند.


انواع آمار (Statistics) در پایگاه داده اوراکل

Gathering آمار در پایگاه داده اوراکل

  • مفهوم Gathering آمار

    Gathering آمار به فرایند جمع‌آوری و به‌روزرسانی آمار مربوط به جداول و ایندکس‌های پایگاه داده اوراکل اشاره دارد.
    این فرایند به بهینه‌ساز کمک می‌کند تا تصمیمات بهتری درباره اجرای کوئری‌ها اتخاذ کند.
  • روش‌های Gathering آمار

    • Gather Statistics for a Table

      برای جمع‌آوری آمار مربوط به یک جدول خاص، می‌توان از دستور زیر استفاده کرد:
EXEC DBMS_STATS.GATHER_TABLE_STATS('schema_name', 'table_name');
    • Gather Statistics for an Index

      برای جمع‌آوری آمار مربوط به یک ایندکس خاص، می‌توان از دستور زیر استفاده کرد:

 

EXEC DBMS_STATS.GATHER_INDEX_STATS('schema_name', 'index_name');
    • Gather Statistics for All Tables

      برای جمع‌آوری آمار برای تمامی جداول یک اسکیما، می‌توان از دستور زیر استفاده کرد:
EXEC DBMS_STATS.GATHER_SCHEMA_STATS('schema_name');

 

  • زمان‌بندی Gathering آمار

    بهترین زمان برای جمع‌آوری آمار معمولاً پس از تغییرات بزرگ در داده‌ها، مانند بارگذاری داده‌های جدید، حذف داده‌ها، یا به‌روزرسانی‌ها است.
    همچنین، می‌توان این کار را به صورت دوره‌ای و با برنامه‌ریزی انجام داد تا آمار همیشه به‌روز باشد.

 Deleting آمار در پایگاه داده اوراکل

  •  مفهوم Deleting آمار

    حذف آمار به فرایند حذف اطلاعات مربوط به آمار جداول، ایندکس‌ها و سایر اشیاء پایگاه داده اشاره دارد.
    این کار می‌تواند به دلایل مختلفی انجام شود، از جمله به‌روزرسانی آمار با داده‌های جدید یا اصلاح مشکلات مربوط به آمار نامناسب.
  •  روش‌های Deleting آمار

    • Delete Statistics for a Table

      برای حذف آمار مربوط به یک جدول خاص، می‌توان از دستور زیر استفاده کرد:

 

EXEC DBMS_STATS.DELETE_TABLE_STATS('schema_name', 'table_name');
    • Delete Statistics for an Index

      برای حذف آمار مربوط به یک ایندکس خاص، می‌توان از دستور زیر استفاده کرد:

 

EXEC DBMS_STATS.DELETE_INDEX_STATS('schema_name', 'index_name');
    •  Delete Statistics for All Tables

      برای حذف آمار برای تمامی جداول یک اسکیما، می‌توان از دستور زیر استفاده کرد:

 

EXEC DBMS_STATS.DELETE_SCHEMA_STATS('schema_name');
  •  مزایای Deleting آمار

    حذف آمار نامناسب یا قدیمی می‌تواند به بهینه‌ساز کمک کند تا تصمیمات بهتری درباره اجرای کوئری‌ها اتخاذ کند.
    در صورتی که آمارها نادرست یا نامتناسب باشند، ممکن است بهینه‌ساز تصمیمات نادرستی بگیرد که می‌تواند عملکرد سیستم را تحت تأثیر قرار دهد.


Transferring آمار در پایگاه داده اوراکل

  • مفهوم Transferring آمار

    انتقال آمار به فرایند کپی کردن آمار از یک جدول یا ایندکس به دیگری اشاره دارد. این کار معمولاً زمانی انجام می‌شود که یک جدول یا ایندکس جدید ایجاد شده و نیاز به آمار مشابهی با یک جدول یا ایندکس دیگر دارد.
  • روش‌های Transferring آمار

    •  Transfer Statistics from One Table to Another

      برای انتقال آمار از یک جدول به جدول دیگر، می‌توان از دستور زیر استفاده کرد:

 

EXEC DBMS_STATS.SET_TABLE_STATS('schema_name', 'target_table', DBMS_STATS.GET_TABLE_STATS('schema_name', 'source_table'));
    • Transfer Statistics from One Index to Another

      برای انتقال آمار از یک ایندکس به ایندکس دیگر، می‌توان از دستور زیر استفاده کرد:
EXEC DBMS_STATS.SET_INDEX_STATS('schema_name', 'target_index', DBMS_STATS.GET_INDEX_STATS('schema_name', 'source_index'));
  •  مزایای Transferring آمار

    انتقال آمار می‌تواند به کاهش زمان مورد نیاز برای جمع‌آوری آمار جدید کمک کند و به بهینه‌ساز اجازه دهد تا به سرعت از اطلاعات موجود استفاده کند.
    این کار می‌تواند به ویژه در محیط‌های تولید که زمان حیاتی است، بسیار مفید باشد.


روش‌های Transferring آمار

دوره های مرتبط
پکیج آموزش اوراکل,دوره آموزش پروژه محور پایگاه داده اوراکل,آموزش پایگاه داده اوراکل Oracle ,پایگاه داده اوراکل

اموزش پایگاه داده اوراکل Oracle

در دوره آموزش پایگاه داده اوراکل اصول ، مفاهیم ، طراحی ، پیاده‌سازی و مدیریت پایگاه داده را به صورت جامع آموزش می دهیم .

700,000 تومان

2.3k بازدید
مشاهده

ارسال دیدگاه

برای ارسال نظر لطفا ورود یا ثبت نام کنید.