پایگاه داده نمایه شده
معمولاً هنگام توسعه برنامه های تحت وب، سناریوهایی وجود دارد که می خواهیم اطلاعات غیر حساس خاصی را در سیستم مشتری، به عبارت دیگر در حافظه مرورگر ذخیره کنیم.
با معرفی HTML 5، بسیاری از ویژگی های جدید در دسترس هستند و تعدادی از آنها را می توان برای رسیدگی به سناریوی مشخص شده قبلی استفاده کرد. به عنوان مثال ذخیره سازی محلی و پایگاه داده نمایه شده. در این مقاله پایگاه های اطلاعاتی نمایه شده را با جزئیات بیشتری مشاهده خواهیم کرد.
پایگاه داده Indexed چیزی نیست جز یک ذخیره شی که می تواند اشیاء جاوا اسکریپت را از هر نوع ذخیره کند. یک جنبه مهم برای درک در مورد یک DB نمایه شده این است که شبیه پایگاه داده رابطه ای نیست که در آن مجموعه سطرها، ستون ها و رکوردها را دارید، با این حال، ایندکس ها را روی رکوردهایی که ذخیره می کند حفظ می کند و کاربران می توانند رکوردها را با کلید یا پرس و جو کنند. فهرست جستجو
هر پایگاه داده نمایه شده به دامنه محدود می شود، به این معنی که پایگاه داده نمایه شده ایجاد شده توسط دامنه abc.com قابل دسترسی یا استفاده توسط xyz.com نیست.
رویکرد ناهمزمان
تقریباً تمام عملیات انجام شده بر روی DB نمایه شده، ماهیت ناهمزمان دارند و معمولاً با استفاده از اشیاء "درخواست" انجام می شوند. هنگامی که هر فراخوانی API ناهمزمان برقرار میشود، ارجاع به شیء «درخواست» را برمیگرداند که دارای روشهای برگشتی برای «onerror» و «onsuccess» است.
سازه های اساسی
فروشگاه اشیاء
فروشگاه Object چیزی نیست جز محفظه ای از اشیاء در پایگاه داده ایندکس شده. یک DB ایندکس شده می تواند چندین ذخایر شی داشته باشد که موجودیت های مجزا از یکدیگر هستند. (می توانید آن را به یک ساختار پوشه در یک سیستم فایل یا جداول در SQL Server مرتبط کنید).
کلیدها
هر ذخیره شی می تواند شامل مجموعه ای از رکوردها باشد. هر رکورد یک جفت کلید/مقدار ساده است، با این حال، یک کلید باید برای هر رکورد منحصر به فرد باشد. تمام رکوردهای داخل یک شی ذخیره به طور خودکار بر اساس ترتیب صعودی کلیدها مرتب می شوند.
هر رکورد باید یک کلید منحصر به فرد داشته باشد که بتوان آن را "در خط"، به عبارت دیگر در داخل خود رکورد داد. به مثال زیر توجه کنید:
- var object = { id: articleid, articlename: name, articleauthor: author };
در مثال بالا می بینید که کلید "id" به صورت درون خطی مشخص شده است، به عبارت دیگر، بخشی از شی است.
مسیر کلیدی
Keypath چیزی نیست جز شناسه رشته ای که برای نشان دادن کلید استفاده می شود اگر به صورت خطی داده شود همانطور که در مثال قبل نشان داده شده است.