پرش به محتوای اصلی
داده و دیتابیس
۱ دقیقه مطالعه

مدل‌سازی داده‌های ماتریسی چندبعدی در پایگاه‌داده‌های رابطه‌ای

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

سید محمد بهبهانی‌زاده
توسعه‌دهنده فول‌استک و معمار نرم‌افزار

بسیاری از سیستم‌های انبارداری و فروشگاهی با اقلامی سر و کار دارند که فراتر از یک شناسه تکی هستند و ویژگی‌های چندبعدی دارند. طراحی درست اسکیما و ایندکس‌ها مانع از کندی کوئری‌ها در تیراژ بالا می‌شود.

طراحی اسکیما با شاخص‌های ترکیبی (Composite Indexes)

در چنین سیستم‌هایی، ایجاد یک جدول مجزا برای واریانت‌ها با کلید خارجی به محصول اصلی و یک قید یکتایی چندستونی (Composite Unique Constraint) به حفظ یکپارچگی داده‌ها کمک شایانی می‌کند.

sql
CREATE TABLE product_variant (
  id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
  product_id UUID REFERENCES product(id),
  dimension_x NUMERIC(5, 2) NOT NULL,
  dimension_y NUMERIC(5, 2) NOT NULL,
  stock_quantity INTEGER NOT NULL DEFAULT 0,
  UNIQUE(product_id, dimension_x, dimension_y)
);

CREATE INDEX idx_variant_lookup 
ON product_variant (product_id, dimension_x, dimension_y);

جمع‌بندی

مدل‌سازی دقیق ابعاد کالا در سطح دیتابیس، فرآیند ثبت فاکتور و کنترل موجودی انبار را سریع و بدون مغایرت نگاه می‌دارد.

داده و دیتابیسخبر
۴ دقیقه مطالعهtheregister.com

تعویق PostgreSQL 19؛ بازبینی کد با هوش مصنوعی بیش از توان توسعه‌دهندگان باگ یافت

انتشار PostgreSQL 19 به حدود ۱۹ نوامبر عقب افتاد. بازبینی کد با هوش مصنوعی آن‌قدر باگ پیدا کرد که بین ۸ تا ۱۰ قابلیت مهم، از جمله SQL/PGQ، از این نسخه کنار رفت.

خواندن خبر#PostgreSQL