ساختار داده‌ها و Mapping ساده برای یک پروژه واقعی

  • مدرس : علی بیگدلی
  • تاریخ انتشار: 1404/06/26
  • تعداد بازدید: 1

در Elasticsearch قبل از ذخیره‌سازی داده‌ها، می‌توان یک Mapping تعریف کرد تا نوع و ویژگی هر فیلد مشخص شود. این کار به بهبود جستجو، آنالیز و عملکرد کمک می‌کند. در ادامه یک مثال ساده برای یک پروژه واقعی فرضی فروشگاه آنلاین آورده شده است.

مثال Mapping برای ایندکس محصولات


PUT /products
{
  "mappings": {
    "properties": {
      "product_id": {
        "type": "integer"
      },
      "name": {
        "type": "text"
      },
      "brand": {
        "type": "keyword"
      },
      "price": {
        "type": "float"
      },
      "available": {
        "type": "boolean"
      },
      "created_at": {
        "type": "date",
        "format": "yyyy-MM-dd"
      }
    }
  }
}

توضیح فیلدها

  • product_id: شناسه عددی یکتا برای هر محصول.
  • name: نام محصول که قابل جستجوی متنی است.
  • brand: برند محصول به صورت keyword برای جستجوی دقیق.
  • price: قیمت محصول به صورت عدد اعشاری.
  • available: وضعیت موجود بودن محصول به صورت بولین.
  • created_at: تاریخ ایجاد محصول با فرمت مشخص.

مثال سند در این ایندکس


POST /products/_doc/1
{
  "product_id": 1,
  "name": "Laptop Pro 15",
  "brand": "Dell",
  "price": 2500.50,
  "available": true,
  "created_at": "2025-09-17"
}

مزایای تعریف Mapping

  • کنترل دقیق نوع داده‌ها و جلوگیری از اشتباهات در ذخیره‌سازی.
  • بهبود سرعت جستجو و تحلیل داده‌ها.
  • امکان استفاده بهینه از Aggregations و فیلترها.
  • قابلیت اعمال تنظیمات پیشرفته مانند آنالیز متن برای فیلدهای text.

با تعریف ساختار داده‌ها و Mapping مناسب، پروژه شما آماده ذخیره و جستجوی داده‌ها به شکل بهینه در Elasticsearch خواهد بود.

ثبت دیدگاه


نکته: آدرس ایمیل شما منتشر نخواهد شد

دیدگاه کاربران (0)


هیچ دیدگاهی ثبت نشده است. می‌توانید اولین نفر باشید.