درباره نویسنده

مسعود طاهری

مسعود طاهری

عاشق علیرضا (پسرم) و همسرم. در ضمن SQL Server را هم دوست دارم.

5 دیدگاه

  1. سید مهدی ناظم السادات

    سید مهدی ناظم السادات

        سلام خدمت استاد ظاهری عزیز :

    من مشکلی پبا NewSequentailID دارم که به این شرح هست :
    در جداول عادی مشکلی ندارم اما برای جداولی که بصورت Memory Optimize Table  تعریف میشوند اصلاً درست کار نمیکنه
    مثلاً یک جدول که ساختم به شکل زیر هست
    ——————————————-

    CREATE TABLE [dbo].[Peyment]
    (
    [Id_Peyment] [uniqueidentifier] NOT NULL DEFAULT (newsequentialid()),
    [Ads_Id] [uniqueidentifier] NOT NULL,
    [Price] [decimal](18, 5) NOT NULL,
    [PaymentDay] [datetime] NOT NULL DEFAULT (getdate()),
    [UpdateDate] [datetime] NOT NULL DEFAULT (getdate()),
     PRIMARY KEY NONCLUSTERED HASH 
    (
    [Id_Peyment]
    )WITH ( BUCKET_COUNT = 1048576)
    )WITH ( MEMORY_OPTIMIZED = ON , DURABILITY = SCHEMA_AND_DATA )
    GO
    ——————————
    مشکل کجاست که جواب نمیده ؟؟؟
    مرسی

    پاسخ
    1. سید مهدی ناظم السادات

      سید مهدی ناظم السادات

          البته جدول NONCLUSTERED هست رو میدونم ولی میخوام بدونم راهش چیه که نظم و ترتیب داشته باشه 

      مرسی
      پاسخ
      1. مسعود طاهری

        مسعود طاهری

           در ضمن برای ترتیب می توانید از این نوع ایندکس استفاده کنید
        CREATE TABLE [dbo].[Peyment]
        (
            [Id_Peyment] [uniqueidentifier] NOT NULL DEFAULT (newsequentialid()),
            [Ads_Id] [uniqueidentifier] NOT NULL,
            [Price] [decimal](18, 5) NOT NULL,
            [PaymentDay] [datetime] NOT NULL DEFAULT (getdate()),
            [UpdateDate] [datetime] NOT NULL DEFAULT (getdate()),

         PRIMARY KEY nonclustered(
            [Id_Peyment]
        )
        )WITH ( MEMORY_OPTIMIZED = ON , DURABILITY = SCHEMA_AND_DATA )

        اما به یاد داشته باشید ساختار این نوع ایندکس با هش ایندکس متفاوت است و هر کدام از آنها معایب و مزایایی دارند
        برای کسب اطلاعا تبیشتر به این محصول مراجعه کنید
        nikamooz.com/what-is-the-guid-in-sql-server/nikamooz.com/product/using-sql-server-2014-c-sharp/

  2. مسعود طاهری

    مسعود طاهری

    چند تا نکته
    1- در Memory Optimized ما مانند جداول Disk based مفهوم Fill factor+ Fragmentation را نداریم.
    2- در Memory Optimized زمانی که از هش ایندکس استفاده می کنید ما یک Bucket داریم که هر عنصری که قرار است در آن درج شود توسط Hash Function یک مقداری به ازای کلید هش ایندکس بدست می آورد و در Bucket درج می شود قرار نیست این درج به ترتیب باشد. موقع خواندن هم عناصر موجود در این Bucket مورد بررسی قرار گرفته شود و… (می توانید مثال خود را با حالت Identity تست کنید )

    برای کسب اطلاعات بیشتر در این خصوص می توانید به این محصول مراجعه کنید
    nikamooz.com/product/using-sql-server-2014-c-sharp/

    در این محصول انواع ایندکس ها در Memory Optimized + معماری آنها + معایب و مزایا و… بررسی شده است

    پاسخ
  3. Morteza

    سلام بر استاد عزیز
    مهندس کارت مثل همیشه عالی بود

    پاسخ

ارسال یک نظر

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

تمامی حقوق مادی و معنوی این وب سایت متعلق به نیک آموز می باشد.
این سایت توسط تیم آموزش برنامه نویسی نیک آموز مدیریت می شود.

کمپین پایان بهار | ۳۰ درصد تخفیف ویژه پرفروش ترین محصولات
close-image