مسعود سلطانی راد
مسعود سلطانی راد
خواندن ۲ دقیقه·۲ سال پیش

استفاده از Direct و Asynchronous I/O در پایگاه داده اوراکل در جهت بهبود کارایی


مقدمه :

در اوراکل این امکان وجود دارد که برای کارایی بیشتر در عملیات I/O (input/ouput ) از حالت های Direct و Async استفاده کرد. در این مستند ابتدا این دوحالت بررسی می شود و در ادامه تنظیمات مربوط به اوراکل نیز ارائه می گردد.

Direct ویا InDirect :

در سیسنم عامل های بر مبنا لینوکس/ یونیکس عملیات های I/O (input/ouput ) با استفاده از file system cache ها اتفاق می افتند که به این حالت Indirect و یا غیر مستقیم گفته می شود.

در حالت غیر مستقیم ما سربارهای استفاده از CPU و اختصاص فضا برای file system cache را داریم که با عدم استفاده از حالت غیر مستقیم، این سربارها از بین رفته و استفاده بهینه تری از این منابع را می توان داشت.

Sync و یا Async :

در حالت sync مسئله در قفل شدن عملیات نوشتن تا انتهای اجرای پردازش می باشد که درحالت async این مسئله وجود ندارد.
در حالت Async بخشی از گلوگاه ها در I/O با توجه به مکانیزمی که دارد برطرف می گردد.


پارامتر FILESYSTEMIO_OPTIONS در پابگاه داده اوراکل :

در پایگاه داده اوراکل به راحتی می توان با استفاده از پارامتر FILESYSTEMIO_OPTIONS، قابلیت استفاده از Direct و Async را برای کارایی بهتر مدیریت کرد. این پارامتر مقادیر زیر را می تواند بگیرد.

ASYNCH - I/O: Async در صورت امکان فعال می شود.

DIRECT-I/O: در صورت امکان I/O Direct فعال می شود.

SETALL: در صورت امکان، I/O Direct و I/O Async را فعال می‌کند.

NONE : I/O Direct و I/O Async غیرفعال است.

این پارامتر را مانند مثال زیر می توان مقدار دهی کرد.

SQL> SHOW PARAMETER FILESYSTEMIO_OPTIONS

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

filesystemio_options string none

SQL> ALTER SYSTEM SET FILESYSTEMIO_OPTIONS=SETALL SCOPE=SPFILE;

System altered.

SQL> SHUTDOWN IMMEDIATE

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> STARTUP

ORACLE instance started.

Total System Global Area 926941184 bytes

Fixed Size 1222672 bytes

Variable Size 239077360 bytes

Database Buffers 683671552 bytes

Redo Buffers 2969600 bytes

Database mounted.

Database opened.

SQL> SHOW PARAMETER FILESYSTEMIO_OPTIONS

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

filesystemio_options string SETALL

شرکت توسعه فناوری اطلاعات آرتاراد ارائه دهنده خدمات پایگاه داده اوراکل

پایگاه اوراکلمشاوره اوراکلخدمات نگهداری اوراکلپایگاه داده اوراکلoracle database
چند سالی هست در حوزه داده ها ( نگهداری و تحلیل آنها) فعالیت دارم و همیشه سعی کردم آموخته هایم رو به اشتراک بگذارم soltanirad@artarad.ir www.artarad.ir
شاید از این پست‌ها خوشتان بیاید