introduction to oracle db data structure and data access (persian)

Post on 08-Jan-2017

64 Views

Category:

Engineering

10 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introduction to Oracle DatabaseData Structure

احسان حمزه ئی

ساختار داده منطقی در اوراکل!Oracle Schema:

شامل تمامی اشیا منطقی مربوط به کاربر می شود هنگام ایجاد کاربر جدید یک اسکیمایی جدید هم نام با نام

کاربری ایجاد می شود تمامی اشیاء منطقی ای که کاربر به عنوانowner در ،Eدارد

این شما هستند. در صورت داشتن دسترسی کاربر می تواند به اشیای منطقی

درون اسکیمای سایر کاربران دسترسی پیدا کند. امکانswitch کردن از اسکیمای کاربر به اسکیمای سایر

alterکاربران در صورت وجود دسترسی وجود دارد )دستور session set current schema)?=

،منظور از اشیا منطقی: جداول، پارتیشن ها، اندکس هاها و ...!viewها، Stored Procedureکالسترها،

اسکیما نقشی را همانندnamespace ایفا می کند! برخی از این اشیا حتی در یک اسکیما هم می توانند هم نام باشند!

انواع داده ای در اوراکل:انواع داده ای

:کاراکتریCharNcharVcharNvchar

عددیNumber)p,s(Integer

تاریخ و زمانDateTimestamp

( اشیا بزرگLOB)CLOBBLOBBFile

معرفی اشیا منطقیTables

:جداولدائمیموقت

Transaction-SpecificSession-Specific

:جداولRelational Tables

Heap organizedIndex organizedExternal

Object Tables

معرفی اشیا منطقیTables

یک جدول چیزی به جز سطر و ستون نیست! )سخنانبزرگان!(

:ستون هاعادیInvisible

ROWID >> Special Case >> Type: ROWID

Virtual

معرفی اشیا منطقیTables

)دستورات: )نحوه ایجاد

معرفی اشیا منطقیTables

)دستورات: )نحوه ایجاد -- ادامه

معرفی اشیا منطقیTables

)دستورات: )نحوه ایجاد -- مثال

معرفی اشیا منطقیTables

)ییراتEدستورات: )ایجاد تغ:اضافه کردن ستون

:تغییر نام ستون

:حذف ستون:تغییر مشخصات ستون

حذف تمام محتویات جدول: حذف اطالعات باTruncate استفاده شود(deleteبرگشت ناپذیر است!! )از دستور

معرفی اشیا منطقیTables

)ییرات - ادامهEدستورات: )ایجاد تغ( نحوه تغییر سطحRW/RO:)

در سطحReadOnly:

معرفی اشیا منطقیTables

)ییرات - ادامهEدستورات: )ایجاد تغ:حذف جدول

:تغیر نام جدولAlter Table tbl_name Rename To new_tbl_name

معرفی اشیا منطقیTables

:ذخیره سازی Eهر جدول یکData Segment( بسته به نوع ذخیره سازیIndex Organized, Heap

Organized متفاوت است، اما در حالت کلی اوراکل ) هایی نگه داری می کند که در Row Pieceسطرها در قالب

Row یکRow Eحد امکان سEعی بر این اسEت که به ازای هر Piece.وجود داشته باشد

Null ،های انتهای سطرSkip.وندEمی ش :ازی برای بحث ذخیره سازیEامکان فشرده س

:فشرده سازی ساده جدول:فشرده سازی پیشرفته سطر:)فشرده سازی هیبریدی )سطری/ستونی

معرفی اشیا منطقیTables

Temporary Tables:ر یک سایت اینترنتیEمثال: جدول مربوط به سبد خرید د

معرفی اشیا منطقیTables

External Tables: رون یک فایل از قبل ذخیرهEه های این جداول ممکن است دEداد

شده باشند یا به هر نحوی خارج از پایگاه دEاده باشند؛ با تعریف Dataاین نوع جدول فراداده مربوط به آن ها در بخش

Dictionary ذخیره می شود، و به اوراکل امکان پردازش داده ها را می دهد.

معرفی اشیا منطقیTables

External Tables)ادامه( :

معرفی اشیا منطقیTables

:جداول Eت در موردEاطالعا Eکسب استفاده از دستورDesc[ribe]برای بررسی ساختار جدول :استفاده از جداول مدیریتی برای پیدا کردن و بررسی جداول

:Eجدول خاصDual

معرفی اشیا منطقیConstraints

:نحوه تعریف محدودیت:در سطح ستوندر سطح جدول

:انواع محدودیتNOT NULL)ر سطح ستونEفقط د( UNIQUE)هردو روش( PRIMARY KEY)هر دو روش( FOREIGN KEY)هردو روش( CHECK)و روشEهرد(

معرفی اشیا منطقیConstraints

ایجادConstraint بعد از ایجاد Table با استفاده از امکان پذیر است.AlTERدستور

در صورتی که قید کلید اصلی یا یکتایی بعد از ایجاد جدول، بهاین روش ایجاد شوند، اوراکل اندکس را به صورت اتوماتیک

!Eروی این ستون ها نمی سازد:تغییر محدودیت

:حذف ALTER TABLE table_name DROP CONSTRAINT

constraint_name; با حذف قیود مربوط به کلید اصلی یا یکتایی به صورت اتوماتیک اندکس

های مربوط به آن ها توسط اوراکل حذف می شود، مگر اینکه در انتهای استفاده شود.KEEP INDEXدستور از

معرفی اشیا منطقیConstraints

:فعال و غیر فعال کردن:را انجام دهیم Eوجود نباشد و در هنگام ایجاد بخواهیم این تنظیماتEاگر م

ALTER TABLE table_name ADD CONSTRAINT constraint_name … {ENABLE, DISABLE} {VALIDATE, NOVALIDATE};

:وجود باشدEاگر م ALTER TABLE table_name {ENABLE, DISABLE}

{VALIDATE, NOVALIDATE} CONSTRAINT constraint_name; را Eوجود باشد و بخواهیم این ویژگیEاگر م( :Eبا تعویق EحدودیتEکنترل م

تغییر دهیم باید قید را حEذف کرده و مEجدد با ویژگی تعویقE جدید ایجاد کنیم(

ALTER TABLE table_name ADD CONSTRAINT constraints_name … DEFEREABLE {INITIALLY IMMEDIATE, INITIALLY DEFERRED}

معرفی اشیا منطقیPartitions

مفهوم پارتیشن بندی؟...کلید پارتیشن بندی

:مزایا... افزایش کارائی، مدیریت آسان، کاهش زمان بازیابی و

در چه مواردی یک جدول را باید پارتیشن بندی کرد؟حجم باالی اطالعات جدولاطالعات بایگانی شده

معرفی اشیا منطقیPartitions

:انواع روشهای پارتیشن بندیRangeListHashIntervalSystemReferenceVirtual Column-Based

:)پارتیشن بندی دو سطحی )ترکیبیR-R, R-L, R-H, L-R, L-L, L-H, I-R, I-L, I-H, H-H

معرفی اشیا منطقیPartitions

پارتیشن بندی به روشRange: برای زمانی مناسب است که فیلدی وجود دارد که با

تعریف محدوده روی آن داده ها به شکل منطقی )از نظر بازیابی و ذخیره سازی(E تقسیم بندی می شوند.

( معموال فیلدهای زمانیDate برای استفاده به عنوان )کلید پارتیشن بندی مناسب هستند

معرفی اشیا منطقیPartitions

پارتیشن بندی به روشList: از این روش پارتیشن بندی در حالتی که فیلدی وجود دارد

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

شود.

معرفی اشیا منطقیPartitions

پارتیشن بندی به روشHash: این روش برای حالتی مناسب است که از دو روش قبلی

یک تابع idنتوان استفاده کرد و بر اساسE یک کلید مانند Hash استفاده می شود که مقادیر موجود در این ستون

می کند.Mapرا به تعداد مشخصی خروجی

معرفی اشیا منطقیPartitions

پارتیشن بندی به روشInterval: این روش یکextend روی روش Range است و برای

های Rangeحالتی است که با ورود داده های جدید جدیدی مطرح می شود در این حالت در صورتی که از

استفاده شده باشد با پیغام خطایی به Rangeروش شکل زیر روبه رو می شویم.

معرفی اشیا منطقیPartitions

پارتیشن بندی به روشSystem: در این حالت این دستورselect و insert هستند که

مشخص می کنند داده در کدام پارتیشن ذخیره و یا مشخص نشود با insertبازیابی شوند! و اگر در دستور

خطا روبه رو می شود!

معرفی اشیا منطقیPartitions

:)پارتیشن بندی به روش های ترکیبی )چند نمونهL-H:R-H:

معرفی اشیا منطقیPartitions

L-R:

L-L

معرفی اشیا منطقیPartitions

معرفی اشیا منطقیPartitions

معرفی اشیا منطقیPartitions

:فعالیت های رایج روی پارتیشن ها1افه کردن یک پارتیشن جدید به پارتیشن بندیEاض -Range2 افه کردن یک پارتیشن جدید به پارتیشن بندیEاض -Hash3 افه کردن یک پارتیشن جدید به پارتیشن بندیEاض -List4افه کردن یک پارتیشن جدید به پارتیشن بندی دو سطحیEاض -5 فشرده سازی پارتیشن -Hash6حذف پارتیشن -7ادغام پارتیشن -8تغییر مکان پارتیشن -9 عیتEبه دست آوردن اطالعات آماری از پارتیشن ها و وض -

هرکدام!

معرفی اشیا منطقیPartitions

:اضافه کردن یک پارتیشن جدید ALTER TABLE <T-Name> ADD PARTITION <P-

Name> VALUES LESS THAN … TABLESPACE <TBS-Name>; )Range(

ALTER TABLE <T-Name> ADD PARTITION <P-NAME> TABLESPACE <TBS-NAME>; )Hash(

ALTER TABLE <T-Name> ADD PARTITION <P-NAME> VALUES )…( TABLESPACE <TBS-NAME>

معرفی اشیا منطقیPartitions

:)اضافه کردن یک پارتیشن جدید )دوسطحی ALTER TABLE <T-Name> ADD PARTITION <P-

Name> VALUES LESS THAN … TABLESPACE <TBS-Name>; )Range(

ALTER TABLE <T-Name> ADD PARTITION <P-NAME> TABLESPACE <TBS-NAME>; )Hash(

ALTER TABLE <T-Name> ADD PARTITION <P-NAME> VALUES )…( TABLESPACE <TBS-NAME>

معرفی اشیا منطقیPartitions

:حذف، فشرده سازی و ادغام پارتیشن ها حذف پارتیشن: در صورتی که پارتیشنی داده ای نداشته

باشد می توان به سادگی با دستور ALTER TABLE <T-NAME> DROP PARTITION <P-

NAME> [UPDATE GLOBAL INDEXES];

در دستور باال به جای عبارتPARTITION اگر از عبارت SUBPARTITION استفاده شود، به حذف زیر پارتیشن در

پارتیشن بندی دو سطحی می پردازد.

معرفی اشیا منطقیPartitions

:جابه جایی پارتیشن

:بدست آوردن اطالعات آماری

معرفی اشیا منطقیIndexes

ایندکس ها یک ساختار اختیاری هستند که بعضا استفاده ازآنها سرعت پاسخگویی را برای پرسش های یک جدول

افزایش می دهد.

ایندکس ها کامال به صورت مستقل از جدول هستند و خودبه عنوان یک شی مجزا فعالیت می کنند.

ایندکس ها برای جلوگیری ازFull-Scan ایجاد و مورد استفاده قرار می گیرند اما در صورتی که خروجی آن ها

مقادیر چندانی از جدول را فیلتر نکند نه تنها به بهبود کارایی کمک نمی کنند بلکه سرباری اضافه به حساب می آیند.

معرفی اشیا منطقیIndexes

چه زمانی از ایندکس استفاده شود؟1 زمانی که کوئری های رایجی وجود دارند که بر حسب یک ستون به -

درصد ناچیزی از اطالعات جدEول منتج می شوند.2 ع به جدول دیگری می دهند به منظورEیی که ارجاEدر مورد ستون ها -

اسEتفاده از ایندکس ها منطقی اسEت.full table lockجلوگیری از 3 تورات دریافت اطالعات ازEزمانی که درون دس -ORDER BY, GROUP

BY, UNION, DISTINCT سازی Eتفاده می شود. )زیرا نیاز به مرتبEاس است و با استفاده از اندکس خود به خود مرتب سEازی انجام شدEه اسEت(

اوراکل معیاری برای استفاده یا عدم استفاده از ایندکس دارد، بهطوری که پیش بینی می کند استفاده از ایندکس به بهبود کارائی کمک می کند یا نه و در صورت نیاز از ایندکس استفاده می کند

)البته در کوئری میتوان به صورت صریح دستور استفاده از ایندکس Index Clustering Factorرا داد!( >>

معرفی اشیا منطقیIndexes

نقش پر رنگ ،Eدر ساختار ایندکسROWID کامال احساس می شود به طوری که با دست آمدن محل داده در روی

می توان به محل ROWIDاندکس مربوطه با استفاده از ذخیره سازی داده های مربوط به سطر پی برد.

چه زمانی بهتر از ایندکس ها استفاده نشود؟ در مورد ستون هایی که دارای مقادیرNULL با تکرار زیاد

هستند. اده آن هاEستون هایی که نوع دDate)*( .است جداول کوچکجداولی که میزان و سرعت تغییرات آن باالست

معرفی اشیا منطقیIndexes

:ها Eوضعیت ایندکسVisibilityUsability

:ها Eانواع ایندکسB* TreeBitmap

به صورت پیش فرض در فعالیت های انجام شده برای را در نظر می گیرد و در B*Treeاندکسها اوراکل نوع

ها استفاده کنیم باید به Bitmapصورتی که بخواهیم از صورت صریح این کار را انجام بدهیم.

معرفی اشیا منطقیIndexes

B*Tree یک درخت متوازن است که بر اساس ستون :مربوطه ایجاد می شود.

پایین ترین سطح نودهای این درخت )برگ ها( اشاره گر(ROWIDهایی به سمت محل داده دارند )

مقادیرNULLذخیره نمی شوند Eدر اندکس های Eامکان استفاده از این اندکس هم برای پرسش

)برابری =( و هم برای پرسش های بازه ای )> <( قابل استفاده است.

:نحوه ایجاد CREATE INDEX <I-NAME> ON <T-

NAME>)C1[,C2,…]( TABLESPACE <TBS-NAME>

معرفی اشیا منطقیIndexes

چه زمانی از ایندکسB*Treeاستفاده کنیم؟ قادیر متمایز ستون مورد نظرEزمانی که شرایط قبلی باشد + م

زیاد باشد انواع ایندکس هایB*Treeاز نظر نوع ایجاد

یکتا و غیر یکتاعادی و معکوسفشرده و معمولیمرکب و سادهمبتنی بر تابع)مرتب سازی شده )صعودی/نزولی

ایندکسها به طور پیشفرض به صورت غیریکتا، غیر فشرده ومرتب شده به صورت صعودی ایجاد می شوند!

معرفی اشیا منطقیIndexes

معرفی اشیا منطقیIndexes

ایندکسBitmap:زمانی که ستون مورد نظر دارای مقادیر محدودی ست زمانی که چندین ستون با مقادیر محدود بر حسب اپراتورهای

=… | …(where a=… & bمنطقی باهم ترکیب می شوند ).اردEزمانی که گروه بندی داده در پرسش وجود د

در این حالت به ازای هر مقدار مختلفی که در ستوناست یک آرایه بیتی ایجاد می شود. پس به ازای یک جدول

n مقدار متمایز دارد، n سطر که ستون مشخص آن mبا به 0 ایجاد می شود که 1 یا 0 تایی با مقادیر mآرایه

معنی این است که داده مورد نظر در سطر مشخص ...1نیست و

معرفی اشیا منطقیIndexes

ایندکسBitmap: و کاربرد در کوئری هایی با Eاستفاده از این نوع ایندکس

شرط ترکیبی

معرفی اشیا منطقیIndexes

ایندکسBitmap: و کاربرد در کوئری هایی با Eاستفاده از این نوع ایندکس

شرط ترکیبی

معرفی اشیا منطقیIndexes

BITMAP JOIN INDEX: امکان تعریف یک ایندکس از روی دو جدول مختلف را فراهم

می آورد. ها 0.1به طوری که اندکس روی جدول اول اعمال می شود اما مبنای

جدول دوم است.

معرفی اشیا منطقیIndexes

مقایسهBtree, Bitmap:

بخش نکات !!؟

Bitmap Btreeبرای ستون هایی با کاردینالیتی

پایینبرای ستون هایی با کاردینالیتی

باال

OLAPمناسب برای OLTPمناسب برای به روز رسانی مشکل به روز رسانی ساده

NULL )OK( NULL)!(

معرفی اشیا منطقیIndexes

Partition Indexes به طور کلی این اندکس ها برای :جداولی که خود پارتیشن بندی شده اند استفاده می شود.

LOCAL و محلی GLOBALو به دو دسته ی عمومی تقسیم بندی می شوند.

ایندکس های معمولی: می توانند خود پارتیشن بندی شوندیا نشوند اما در این حالت به صورت مستقل و مجزا از

جدول مربوطه پارتیشن بندی می گردند و درصورتی که ( رخ دهد در حالت عادی نامعتبر DDLتغییری در جدول )

صراحتا اعالم DDLمی شوند مگر آنکه در انتهای دستور UPDATE GLOBAL INDEXESگردد :

معرفی اشیا منطقیIndexes

GLOBAL INDEX: عناصر مربوط به یک پارتیشن ایندکس می توانند به یک یا

همه ی پارتیشن های جدول مربوط باشند. مناسب برای کاربردهایOLTP

سناریو هایی که چندین ستون به صورت مجزا مبنای دسترسیبه اطالعات هستند.

این نوع ایندکس ها فقط از نوعB*Tree!هستند حذف و اضافه کردن پارتیشن به صورت مستقل

معرفی اشیا منطقیIndexes

GLOBAL INDEX:

معرفی اشیا منطقیIndexes

Local INDEX: ه )برEده روی جدول مربوطEن بندی انجام شEدقیقا مطابق پارتیش

مبنای همان ستون، از همان اسEتراتژی پارتیشEن بندی و با همان شرایط!(

!دول و ایندکسEتناظر یک به یک هر پارتیشن ج Eاز هر دو نوعB*Tree, Bitmap.ندEمی توانند باش ب برای کاربردهایEمناسOLAP:مزایا

Availabilityباالتر مدیریت ساده تر

:ه ایجادEنحو CREATE INDEX <I-Name> ON <T-Name>)<C-Name>(

LOCAL;

معرفی اشیا منطقیIndexes

Local INDEX::محدودیت ها

اضافه کردن پارتیشن؟حذف یک پارتیشن؟

معرفی اشیا منطقیIndexes

Local INDEX:Prefixed:

در تعریف ایندکسLocal!مربوطه و در بخش تعریف ستون ها اولین ستون کلید پارتیشن بندی است Non-Prefixed:

در تعریف ایندکسLocal مربوطه و در بخش تعریف ستون ها اولین ستون کلید پارتیشن بندی نیست و حتی می تواند کال در لیست وجود نداشته باشد.

:سناریو( 2 پارتیشن در 2جدول TBS کلید ستون( )a غیر فعال کردن )TBS!دوم کلید 2 اندکس به 2ایجاد( روش a,b کلید( E+ )b,a) کوئری بر مبنایa,b >> plan تفاده ازEتوسط اوراکل اس prefixed انتخاب ایندکس با(

CBO) کوئری بر مبنایb خطا توسط << local-prefixed انتخاب ایندکس با( CBO)

شود! )کال یا در زمان انتخاب( اما در Eن منتج نمیEف پارتیشEبه حذ Eاوقات Eگاهی.Eشرایط عادی هر دو نوع به یک شکل رفتار می کنند

Eاندکس Eدر واقع این ماهیت کوئری هاست که تعیین می کند یکlocal به کدام شکل باشد! )با توجه به کوئری ها ی مختلف و فرکانسE تکرار آنها در طراحی باید

در این باره تصEمیم گیری شود!(

معرفی اشیا منطقیIndexes

مقایسهLocal , Global indexes:

معرفی اشیا منطقیIndexes

Partial Partition Index:!!امکان فعال کردن اندکس در سطح پارتیشن

معرفی اشیا منطقیIndex Organized Table

( اختار ایندکس درختیEاین نوع جداول داده های خود را در سB*Tree )نگه داری می کنند!

سرعت باالی بازیابی اطالعات از مزایای این جداول است البته باید حتمامحدودیت های این جداول و معایبE استفاده از آن نیز مد نظر قرار گیرد.

ب نیست؟Eچه زمان مناس دسترسی بر اساسPK.نباشد !لی باالستEعملیات درج زیاد است یا تغییرات کلید اص

:محدودیت ها کلیدPK بر خالف جداول heapکه اختیاری است در اینجا اجباری است ستون های از جنسLONG.نمی تواند داشته باشد ورتEنمی تواند به صCLUSTER)استفاده شود )ذخیره و بازیابی شود

الزم به ذکر است امکان پارتیشن بندی این جداول به سه روشH,R,L وجود دارد ولی باید کلید پارتیشن بندی زیر مجموعه ای از کلید اصلی

جدول باشد!

معرفی اشیا منطقیIndex Organized Table

( می توان برای این جداول بخشSegment مجزایی برای )( در نظر گرفت. در این overflowذخیره داده های سرریز )

حالت همانند اندکس نیاز به ذخیره ی اشاره گری به بالک مورد نظر در بخش سرریز است. ترتیب ستون ها بسیار

مهم است در این حالت، چون تا جایی که می شود در همان بخش ذخیره می شوند و مابقی به بخش سرریز می روند.

:پارامترهای ایجاد جدول مبتنی بر اندکس1 -OVERFLOW TABLESPACE <TBS-NAME<2 -PCTTHRESHOLD <TH<3 -INCLUDING <C-NAME<

معرفی اشیا منطقیIndex Organized Table

مثالی از تعریفIOT:

معرفی اشیا منطقیClusters

ورتEذخیره سازی )فیزیکی( و بازیابی دو یا چند جدول به صکنار هم را کالستر جداول می نامند.

این شی به منظور بهبود کارایی پایگاه داده درJOIN های سنگین پر تکرار ایجاد شده است. به طوری که با نگه داری

می شوند می تواند به بهبود JOINداده های جداولی که با هم هستند که IOسرعEت بازیابی کمک کند. )زیرا تعداد فرآیند های

چالش برانگیزند و با این تکنیک این فرآیندها کاهش می یابند( البته استفاده از این تکنیک سبب کاهش کارایی در فرآیند

INSERTION.خواهد بود چه زمانی ازCLUSTERING:استفاده نکنیم

1 راتEول به کرEداEزمانی که ج -UPDATE.می شوند 2 نی که نیاز بهEزما -FULL-SCAN.ستEجدول عملی رایج ا

معرفی اشیا منطقیClusters

INDEX CLUSTER:از ایندکس برای دسترسی

به داده استفاده می کند و مطابق شکل بر مبنای همین

مقادیر ایندکس داده های جداول مختلف را کنار هم

ذخیره و بازیابی می کند.

معرفی اشیا منطقیClusters

INDEX CLUSTER::نحوه ی تعریف کالستر بر مبنای ایندکسگام اول: تعریف کالستر

گام دوم: تعریف ایندکس

گام سوم: اضافه کردن جداول

معرفی اشیا منطقیClusters

HASH CLUSTER: این روش همان مفهومINDEX CLUSTER را دنبال می کند

استفاده می INDEX به جای HASHبا این تفاوت که از تابع کند.

اگر تعداد خروجی های تابعHASH متناسب با تعداد عناصر می توان به داده IOمتمایز کلید کالستر باشد با یک فرآیند

های مورد نظر دسترسی پیدا کرد؛ زیرا در هنگام ذخیره مشخص کننده محل ذخیره HASHسازی هم خروجی تابع

سازی بوده، پس در هنگام بازیابی هم می توان خروجی آن را به صورت مستقیم مورد استفاده قرار داد.

نحوه تعریف: گام دوم در روش قبل حذف می شود، گامسوم دقیقا مثل روش قبل و گام اول به شکل رو به رو:

معرفی اشیا منطقیClusters

معرفی اشیا منطقیClusters

Attribute-Clustering: یک جدولheap است که قاعده ذخیره سازی آن توسط کاربر تعیین می

( ستون 10شود! این قواعد در واقع روی محتوای درون یک یا چند )حداکثر هستند که می توانند در جداول مختلفی قرار بگیرند، عمل می کنند.

:قواعد ذخیره سازیLinear OrderInterleaved Order

انواعAttribute-Clustering: ان جدول در حافظه یEتون همEعادی: عناصر یک جدول بر مبنای یک یا چند س

فیزیکی ذخیره می شوند به نحوی که هر جا مقادیر این ستون ها به هم نزدیک باشد، در حافظه فیزیکی هم مکان آن ها به نزدیک باشد.

Join در این حالت عناصر یک جدول بر مبنای یک یا چند ستون جدوال دیگر در :حافظه ی فیزیکی ذخیره می شEوند، به نحوی که ...

معرفی اشیا منطقیClusters

Attribute-Clustering:

معرفی اشیا منطقیClusters

معرفی اشیا منطقیClusters

Attribute-Clustering::نحوه ایجاد

معرفی اشیا منطقیClusters

Attribute-Clustering::نحوه ایجاد

معرفی اشیا منطقیViews

ویو یا دید یک جدول منطقی است که بر اساس جداول یاویوهای موجود می باشد.

ویو هیچ داده ای درون خود ذخیره نمی کند بلکه از جداولتغذیه می شود.

:مزایای ویو.پیچیدگی های داده های اصلی را مخفی می کند امنیت جداول را با جلوگیری از دسترسی مستقیم کاربران

فراهم می آورد. برنامه های کاربردی را از تغییرات در جداول پایه مستقل می

کند.

معرفی اشیا منطقیViews

:ایجاد ویو

معرفی اشیا منطقیViews

دستوراتDML بر View:هاCheck Option!

امکان ایجادView با محدودیت Read-Only )With Read Only Constraint(

به منظور مدیریت و کسب اطالعات در مورد ویوها می ,DBA_VIEWSتوان از جداول زیر استفاده کرد:

ALL_VIEWS, USER_VIEWS

با تشکر- اتمام بخش اول

top related