بهبود دسترسی به داده ها با شاخص های ثانویه

ساخت وبلاگ

آخرین مطالب

امکانات وب

Amazon DynamoDB با مشخص کردن مقادیر اصلی کلید ، دسترسی سریع به موارد موجود در یک جدول را فراهم می کند. با این حال ، بسیاری از برنامه ها ممکن است از داشتن یک یا چند کلید ثانویه (یا متناوب) در دسترس بهره مند شوند تا امکان دسترسی کارآمد به داده ها با ویژگی های غیر از کلید اصلی فراهم شود. برای پرداختن به این موضوع ، می توانید یک یا چند شاخص ثانویه را در یک جدول ایجاد کرده و درخواست های پرس و جو یا اسکن را علیه این شاخص ها صادر کنید.

یک شاخص ثانویه یک ساختار داده است که حاوی زیر مجموعه ای از ویژگی ها از یک جدول است ، به همراه یک کلید جایگزین برای پشتیبانی از عملیات پرس و جو. شما می توانید داده ها را از فهرست با استفاده از یک پرس و جو بازیابی کنید ، به همان روشی که از پرس و جو با یک جدول استفاده می کنید. یک جدول می تواند چندین شاخص ثانویه داشته باشد که به برنامه های شما به بسیاری از الگوهای پرس و جو مختلف دسترسی می دهد.

همچنین می توانید یک شاخص را به همان روشی که می خواهید یک جدول را اسکن کنید ، اسکن کنید.

هر شاخص ثانویه دقیقاً با یک جدول همراه است ، که از آن داده های خود را بدست می آورد. این جدول پایه برای شاخص نامیده می شود. هنگامی که یک فهرست ایجاد می کنید ، یک کلید جایگزین را برای فهرست (کلید پارتیشن و کلید مرتب سازی) تعریف می کنید. شما همچنین ویژگی هایی را که می خواهید پیش بینی یا کپی کنید ، از جدول پایه به داخل فهرست تعریف می کنید. DynamoDB این ویژگی ها را به همراه ویژگی های اصلی اصلی از جدول پایه در فهرست قرار می دهد. سپس می توانید از این فهرست پرس و جو یا اسکن کنید درست همانطور که می خواهید یک جدول را پرسید یا اسکن کنید.

هر شاخص ثانویه به طور خودکار توسط DynamoDB نگهداری می شود. هنگامی که موارد را در جدول پایه اضافه ، اصلاح یا حذف می کنید ، هر گونه شاخص در آن جدول نیز به روز می شود تا این تغییرات را منعکس کند.

DynamoDB از دو نوع شاخص ثانویه پشتیبانی می کند:

شاخص ثانویه جهانی - یک شاخص با یک کلید پارتیشن و یک کلید مرتب سازی که می تواند با موارد موجود در جدول پایه متفاوت باشد. یک شاخص ثانویه جهانی "جهانی" در نظر گرفته می شود زیرا نمایش داده شد در این فهرست می تواند تمام داده های موجود در جدول پایه را در تمام پارتیشن ها قرار دهد. یک شاخص ثانویه جهانی در فضای پارتیشن خود به دور از جدول پایه و مقیاس های جداگانه از جدول پایه ذخیره می شود.

شاخص ثانویه محلی - شاخصی که دارای همان کلید پارتیشن با جدول پایه است ، اما یک کلید مرتب سازی متفاوت است. یک شاخص ثانویه محلی "محلی" است به این معنا که هر پارتیشن از یک شاخص ثانویه محلی به یک پارتیشن جدول پایه که دارای همان مقدار کلید پارتیشن است ، جمع می شود.

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

مشخصهشاخص ثانویه جهانیشاخص ثانویه محلی
طرحکلید اصلی یک شاخص ثانویه جهانی می تواند ساده (کلید پارتیشن) یا کامپوزیت (کلید پارتیشن و کلید مرتب سازی) باشد.کلید اصلی یک شاخص ثانویه محلی باید کامپوزیت باشد (کلید پارتیشن و کلید مرتب سازی).
ویژگی های کلیدیکلید پارتیشن شاخص و کلید Sort (در صورت وجود) می تواند هر ویژگی جدول پایه از نوع رشته ، شماره یا باینری باشد.کلید پارتیشن شاخص همان ویژگی کلید پارتیشن جدول پایه است. کلید مرتب سازی می تواند هر ویژگی جدول پایه ای از رشته ، شماره یا باینری باشد.
محدودیت های اندازه در هر مقدار ارزش کلیدیمحدودیت اندازه برای شاخص های ثانویه جهانی وجود ندارد.برای هر مقدار کلید پارتیشن ، اندازه کل کلیه موارد ایندکس شده باید 10 گیگابایت یا کمتر باشد.
عملیات فهرست آنلاینشاخص های ثانویه جهانی را می توان همزمان با ایجاد یک جدول ایجاد کرد. همچنین می توانید یک شاخص ثانویه جهانی جدید را به یک جدول موجود اضافه کنید ، یا یک شاخص ثانویه جهانی موجود را حذف کنید. برای اطلاعات بیشتر ، به مدیریت فهرست های ثانویه جهانی مراجعه کنید.شاخص های ثانویه محلی همزمان با ایجاد یک جدول ایجاد می شوند. شما نمی توانید یک شاخص ثانویه محلی را به یک جدول موجود اضافه کنید ، و همچنین نمی توانید شاخص های ثانویه محلی را که در حال حاضر وجود دارد حذف کنید.
نمایش داده ها و پارتیشن هایک فهرست ثانویه جهانی به شما امکان می دهد تا در کل جدول ، در تمام پارتیشن ها پرس و جو کنید.یک فهرست ثانویه محلی به شما امکان می دهد تا از یک پارتیشن واحد پرس و جو کنید ، همانطور که توسط مقدار کلید پارتیشن در پرس و جو مشخص شده است.
قوام را بخوانیدنمایش داده شد در مورد شاخص های ثانویه جهانی فقط از قوام نهایی پشتیبانی می کند.هنگامی که از یک شاخص ثانویه محلی پرس و جو می کنید ، می توانید قوام نهایی یا قوام قوی را انتخاب کنید.
مصرف توان تأمین شدههر شاخص ثانویه جهانی تنظیمات توان ارائه شده خود را برای فعالیت خواندن و نوشتن دارد. نمایش داده شدگان یا اسکن در یک شاخص ثانویه جهانی واحدهای ظرفیت را از شاخص مصرف می کنند ، نه از جدول پایه. همین مورد در مورد به روزرسانی های شاخص ثانویه جهانی به دلیل نوشتن جدول نیز صادق است. یک شاخص ثانویه جهانی مرتبط با جداول جهانی ، واحدهای ظرفیت نوشتن را مصرف می کند.نمایش داده شد یا اسکن روی یک شاخص ثانویه محلی واحدهای ظرفیت خواندن را از جدول پایه مصرف می کنند. هنگامی که به یک جدول می نویسید ، شاخص های ثانویه محلی آن نیز به روز می شوند و این به روزرسانی ها واحدهای ظرفیت نوشتن را از جدول پایه مصرف می کنند. یک شاخص ثانویه محلی مرتبط با جداول جهانی واحدهای ظرفیت نوشتن را تکرار می کند.
ویژگی های پیش بینی شدهبا استفاده از نمایشگاه های شاخص ثانویه جهانی یا اسکن ، فقط می توانید از ویژگی هایی که در فهرست پیش بینی شده است درخواست کنید. DynamoDB هیچ ویژگی از جدول را واگذار نمی کند.اگر یک شاخص ثانویه محلی را پرس و جو یا اسکن کنید ، می توانید ویژگی هایی را که در فهرست پیش بینی نشده است درخواست کنید. DynamoDB به طور خودکار آن ویژگی ها را از جدول می گیرد.

اگر می خواهید بیش از یک جدول با شاخص های ثانویه ایجاد کنید ، باید این کار را به صورت متوالی انجام دهید. به عنوان مثال ، شما می توانید جدول اول را ایجاد کرده و منتظر بمانید تا فعال شود ، جدول بعدی را ایجاد کنید و منتظر بمانید تا آن را فعال کنید و غیره. اگر سعی می کنید همزمان بیش از یک جدول با شاخص ثانویه ایجاد کنید ، DynamoDB یک LimitexupedEdexception را برمی گرداند.

هر شاخص ثانویه از همان کلاس جدول و حالت ظرفیت به عنوان جدول پایه ای که با آن همراه است استفاده می کند. برای هر شاخص ثانویه ، باید موارد زیر را مشخص کنید:

نوع شاخصی که باید ایجاد شود - یا یک شاخص ثانویه جهانی یا یک شاخص ثانویه محلی.

نامی برای فهرست. قوانین نامگذاری برای ایندکس ها همانند جداول است ، همانطور که در سهمیه خدمات ، حساب و جدول در Amazon DynamoDB ذکر شده است. این نام باید برای جدول پایه ای که با آن همراه است بی نظیر باشد ، اما می توانید از همین نام برای شاخص هایی که با جداول پایه مختلف همراه است استفاده کنید.

طرح اصلی برای شاخص. هر ویژگی در طرح کلیدی شاخص باید یک ویژگی سطح بالا از نوع رشته ، تعداد یا باینری باشد. انواع دیگر داده ها ، از جمله اسناد و مجموعه ها ، مجاز نیستند. سایر الزامات مربوط به طرح کلیدی به نوع شاخص بستگی دارد:

برای یک شاخص ثانویه جهانی ، کلید پارتیشن می تواند هر ویژگی مقیاس جدول پایه باشد. یک کلید مرتب سازی اختیاری است و همچنین می تواند هر ویژگی مقیاس جدول پایه باشد.

برای یک شاخص ثانویه محلی ، کلید پارتیشن باید همان کلید پارتیشن جدول پایه باشد و کلید مرتب سازی باید یک ویژگی جدول پایه غیر کلید باشد.

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

در صورت لزوم تنظیمات توان ارائه شده برای شاخص:

برای یک فهرست ثانویه جهانی ، باید تنظیمات واحد ظرفیت خواندن و نوشتن را مشخص کنید. این تنظیمات توان ارائه شده مستقل از تنظیمات جدول پایه است.

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

برای حداکثر انعطاف پذیری پرس و جو ، می توانید حداکثر 20 فهرست ثانویه جهانی (سهمیه پیش فرض) و حداکثر 5 شاخص ثانویه محلی در هر جدول ایجاد کنید.

سهمیه شاخص های ثانویه جهانی در هر جدول پنج مورد برای مناطق AWS زیر است:

AWS GovCloud (US-East)

AWS GovCloud (ایالات متحده و غرب)

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

با استفاده از عملکرد پرس و جو یا اسکن می توانید به یک شاخص ثانویه دسترسی پیدا کنید. شما باید نام جدول پایه و نام شاخص مورد نظر خود را مشخص کنید ، ویژگی هایی که باید در نتایج برگردانده شود و هرگونه بیان یا فیلترهایی که می خواهید اعمال کنید. DynamoDB می تواند نتایج را به ترتیب صعودی یا نزولی بازگرداند.

هنگامی که یک جدول را حذف می کنید ، تمام شاخص های مرتبط با آن جدول نیز حذف می شوند.

آموزش کار در فارکس...
ما را در سایت آموزش کار در فارکس دنبال می کنید

برچسب : نویسنده : Mihayloo بازدید : 67 تاريخ : سه شنبه 1 فروردين 1402 ساعت: 0:21