بلاک بندی رکورد ها و تکنیک های آن (11)

بلاک بندی رکورد ها و تکنیک های آن (11)

 

Blocking records and three blocking techniques

دپارتمان آموزش کامپیوتر – کیش تک؛

بلاک بندی

  • قرار دادن چندين ركورد در يک قالب بزرگتر، جهت عمليات خواندن و نوشتن بلاک بندی ناميده مي‌شود.
  • بلاک كمترين داده‌اي است كه در يک عمليات خواندن/نوشتن از/به ديسک منتقل ميشود.
  • بين هر دو بلاک فضاي هرزي وجود دارد كه به آن (IBG (Inter Block Gap گفته ميشود.
  • ظرفيت بلاک را با B نمايش ميدهيم.

 

Inter Block Gap

 

  • ضريب بلاک بندی(Blocking factor):

به تعداد ركوردهاي موجود در بلاک، ضريب بلاک بندی گفته ميشود و با Bf نمايش داده ميشود.

نکته: از ديد برنامه پردازشگر(منطقي) فايل مجموعه‌اي از ركوردهاست ولي از نظر سيستم فايل(فيزيكي) فايل از تعدادي بلاک تشكيل شده است.

 

حالات مختلف ذخيره‌سازي يک بلاک در ديسک

  • يک بلاک در دیسک می‌تواند به شكلهاي زير درنظر گرفته شود:

  1. يك شيار
  2. بخشي از يك شيار مشخص شده توسط نرم افزار (سكتور نرم افزاري)
  3. يک سكتور سخت‌افزاري
  4. تركيبي از چند سكتور سخت‌افزاري

چنانچه طول ركورد ثابت باشد، سيستم فايل يكبار طول ركورد را ذخيره كرده و از آن در تمام بلاكها استفاده ميكند. ولي چنانچه طول ركورد متغير باشد از تكنيكهاي زير استفاده ميشود.

 

Different modes of storing a block on disk

 

تكنيكهاي تعيين محدوده‌ي ركورد با طول متغير در يک بلاک

 

Techniques for determining the range of records with variable length in a block

 

توجه: در اين روش، آدرس نسبي ركورد در بلاک نسبت به آغاز بلاک در جدول درج ميشود.

همچنين، تخصيص اشاره‌گر براي هر ركورد به صورت پويا انجام شده و از فضاي بلاک بهتر استفاده ميشود.

  • در برخي سيستمها تركيبي از تكنيكهاي فوق نيز ممكن است ديده شود.
  • براي مثال يک روش استفاده از جدول طول با استفاده از روشهاي «درج طول ركورد» و «جدول مكان‌نما» ميباشد.
  • در اين روش درقسمت اشاره‌گر به ركورد، طول هر ركورد قرار داده ميشود.

 

Techniques for determining the range of records with variable length in a block2

 

 

  • در اين روش براي ركوردهاي هم طول ميتوان در فضا صرفه جويي كرد!

 

Techniques for determining the range of records with variable length in a block3

 

تكنيک هاي بلاک بندی

  1. بلاک بندی ركوردها با طول ثابت و يكپاره
  2. بلاک بندی ركوردها با طول متغير و دوپاره
  3. بلاک بندی ركوردها با طول متغير و يكپاره
  • در هريک از روشهاي فوق فضاي هرزي بوجود مي‌آيد كه هريک با ديگري متفاوت ميباشد.
  • همچنين تعداد ركوردهايي كه در يک بلاک قرار ميگيرند متفاوت ميباشند.
  • در ادامه فضاي هرز را با w نمايش خواهيم داد.

 

بلاک بندی ركورد ها با طول ثابت و يكپاره

بلاک بندي ركوردها با طول ثابت و يكپاره

 

توجه: در اين روش طول ركورد ثابت است.

B: طول بلاک

R: طول ركورد

  • در اين تكنيک سه نوع فضاي هرز بوجود ميآيد:

  1. W1: فضاي هرز مربوط به گپ بين بلاکها (W1=IBG)
  2. W2: فضاي هرز ناشي از نگنجيدن آخرين ركورد در يک بلاک (به علت ثابت بودن طول ركوردها) اين گپ ميتواند با انتخاب مناسب طول بلاک و طول ركورد صفر گردد 0<=W2<=R-1
  3. W3: فضاي هرز ناشي از نگنجيدن آخرين بلاک در شيار

blocking factor

فضاي هرز يک ركورد برابر است با فضاي هرز بلاک تقسيم بر تعداد ركورد در بلاک:

gap of a record

  • حافظه هرز به ازاي هر بلاک برابر است با:

gap memory per block

  • چنانچه W3 نيز داشته باشيم آنگاه:

gap memory per block2

كه در آن Tf فاكتور شياربندي و برابر با تعداد بلاكها در شيار است.

 

  • حال چنانچه W2 را برابر با مقدار ميانگينش قرار دهيم خواهيم داشت:

توجه: W2 در ركورد با طول ثابت به طور متوسط برابر با نصف طول ركورد است.

gap memory per block3

gap of a record2

 

مثال:

يك سيستم فايل با تكنيک بلاک بندي ثابت و يكپاره در نظر بگيريد كه در آن فضاي هرز بين بلاک 25 بايت و متوسط فضاي هرز ناشي از نگنجيدن ركورد در بلاک 70 بايت باشد. چنانچه Tf=6 و فضاي هرز ناشي از نگنجيدن بلاک در شيار 540 بايت باشد، فضاي هرز به ازاي هر بلاک را بيابيد(WB).

gap memory per block3

W1 =G=25

W2 =R/2=70

W3 = 540

WB = 25+70+(540/6)=285 Byte

 

بلاک بندی ركورد ها با طول متغير و دوپاره

 

بلاك‌بندي ركوردها با طول متغير و دوپاره

 

تفاوت اين روش با روش قبلي در اين است كه درصورتيكه يک ركورد نتواند در بلاک به صورت يكپاره ذخيره شود؛ ميتوان آن را به دو قسمت تقسيم كرد. در شكل فوق R2 تماما در بلاک اول جا نگرفته و بنابراين به صورت دوپاره در بلاک اول و دوم ذخيره ميشود.

  • فاكتور بلاک بندی در اين روش برابر است با:

فرمول بلاک ‌بندي ركوردها با طول متغير و دوپاره

كه در آن P سايز فيلد مربوط به طول ركوردها ميباشد كه هم‌سايز با فيلد اشاره‌گر در انتهاي بلاک است.

  • ميزان حافظه هرز به ازاي هر بلاک برابر است با:

The amount of gap per block

فرمول بلاک ‌بندي ركوردها با طول متغير و دوپاره 2

 

مثال:مسئله ای از بلاک ‌بندي ركوردها با طول متغير و دوپاره

مسئله ای از بلاک ‌بندي ركوردها با طول متغير و دوپاره2

 

بلاک بندی ركوردها با طول متغير و يكپاره

 

بلاک بندي ركوردها با طول متغير و يكپاره

 

در اين روش دوپاره كردن ركوردها مجاز نميباشد. در شكل فوق فضاي هرزي بنام w4 به علت اينكه R3 دوپاره نشده است بوجود خواهد آمد.

 

فرمول بلاک ‌بندي ركوردها با طول متغير و يكپاره

 

 

مثال:

مسئله ای از بلاک ‌بندي ركوردها با طول متغير و يكپاره

 

جهت ثبت نام در دوره های کامپیوتر ما اینجا کلیک کنید.

 

مزايا و معايب سه تكنيک بلاک بندی

1. تكنيک اول به سادگي پياده‌سازي ميشود و مديريت آن ساده‌تر است.

2. اما اين روش انعطاف‌پذيري كمتري دارد و در صورت تغيير طول ركورد چاره‌اي جز ايجاد مجدد كل فايل نيست.

نكته: تغيير طول ركورد در مدت حيات فايل يكي از جنبه‌هاي رشد فايل است. همچنين افزايش تعداد نمونه‌هاي ركورد باعث افزايش اندازه فايل ميشود.

3. تكنيک دوم و سوم نسبت به روش اول انعطاف پذيرترند ولي پياده‌سازي آنها پيچيده‌تر است.

4. در مقايسه دو روش دوم و سوم، روش دوم داراي نرم‌افزار پيچيده‌تري است زيرا نياز به مديريت اشاره‌گرها دارد.

5. در مقايسه تكنيكهاي دوم و سوم، تكنيك دوم از نظر حافظه مرقون به صرفه‌تر است.

6. در تكنيک سوم حداكثر طول ركورد به طول بلاک بستگي دارد.(در روش دوم اين محدوديت وجود ندارد)

در اين روش به علت وجود حافظه هرز طول خطي فايل بيشتر مي‌شود در نتيجه خواندن كل فايل زمان بيشتري را مي‌گيرد.

در تكنيك دوم اين زمان به علت دوپاره بودن ركوردها و نبودن اين فضاي هرز كمتر است.

7. در تكنيک دوم خواندن ركورد دوپاره زمان بيشتري نياز دارد، زيرا سيستم بايد دو بلاک را بخواند.

در واقع چنانچه اندازه بافر به اندازه يک بلاک باشد، واكشي ركورد دوپاره به دوبار عمل خواندن و نوشتن نياز دارد.

 

مزایا و معایب بلاک بندی

 

Advantages and disadvantages of blocking


ارتباط‌با‌ما : 

تلفن : ۰۲۱۶۶۱۷۶۱۹۶       ۰۲۱۶۶۵۶۹۷۶۲      ۰۹۰۵۹۶۲۶۹۰۰

نشانی : خیابان جمالزاده‌شمالی بعد از بلوار‌کشاورز پلاک ۴۱۴ طبقه ۳ واحد ۵

شبکه‌های اجتماعی پردیس‌فناوری‌کیش :

سامانه آموزش‌مجازی رهیاران : www.rahyaranlms.ir 

کانال‌تلگرام kishtech@ 

 اینستاگرام    rahyaranlms            kishtech.ir  

آپارات     kishtech