شناسه منحصر به فرد جهانی (UUID)، همچنین به عنوان شناسه منحصر به فرد جهانی (GUID) شناخته می شود، به طور گسترده در سیستم های کامپیوتری استفاده شده است.
این یک کد 128 بیتی است که توسط سیستم بر اساس متغیرها و ثابت ها تولید می شود: زمان جاری، آدرس MAC، هش SHA-1، فضای نام MD5. نتیجه نهایی ایجاد یک UUID که به صورت یک کد الفبایی 32 کاراکتری جدا شده با خط فاصله نمایش داده می شود، ممکن است دلخواه به نظر برسد، اما در واقع نتیجه محاسبات پیچیده است. بنابراین، یک کامپیوتر یک کد را "اختراع" نمی کند، بلکه آن را از مقادیر فنی خاصی که در یک زمان معین مرتبط هستند، تشکیل می دهد.
احتمال اینکه UUID یکسان در دو رایانه مختلف در زمانهای مختلف تولید شود، به صفر میرسد، که استفاده از کدهای حاصل را برای شناسایی دادههای نقطه/محلی بدون ارجاع به مرکز هماهنگی ممکن میسازد. امروزه، UUID/GUID هم در شبکههای آنلاین و هم در شبکههای آفلاین در همه جا وجود دارد و نه تنها در فضای جهانی اینترنت، بلکه در سیستمهای رایانهای مستقل نیز کار میکند.
سابقه UUID
کدهای 128 بیتی UUID برای اولین بار توسط شرکت آمریکایی آپولو کامپیوتر در دهه 1980 استفاده شد. آنها مبتنی بر کدهای 64 بیتی سادهتر مورد استفاده در Domain/OS بودند و در محیط محاسباتی Open Software Foundation استفاده گستردهای پیدا کردند.
با ظهور اولین پلتفرم های ویندوز، شناسه منحصر به فرد جهانی تعمیم و استاندارد شد. مایکروسافت طرح DCE را از Apollo Computer اتخاذ کرد و فضای نام URN را در RFC 4122 ثبت کرد. در سال 2005، استاندارد جدید توسط IETF پیشنهاد شد و UUID در ITU استاندارد شد.
پیش از این در سال 2002، هنگام استفاده از UUID به عنوان کلید اصلی در پایگاه داده های محلی، مشکلات عملکرد سیستم شناسایی شد. این موارد در نسخه 4 با افزودن یک پسوند غیر تصادفی بر اساس زمان سیستم رایانه برطرف شد. رویکرد موسوم به COMB (Combined GUID Time Identifier) خطر تکرار کد را افزایش داد، اما در عین حال عملکرد را در هنگام کار با Microsoft SQL Server به طور قابل توجهی بهبود بخشید.
با توسعه فنآوریهای IT، شناسه منحصربهفرد جهانی دیگر یک ابزار فنی بسیار تخصصی نیست و امروزه همه میتوانند از آن استفاده کنند. احتمال تکرار کدهای تولید شده برابر با صفر نیست، بلکه به آن تمایل دارد و هر گونه اطلاعات دیجیتالی را می توان توسط آنها شناسایی کرد و پس از آن می توان آنها را در آرایه های داده واحد با حداقل خطر تکرار ترکیب کرد.
مزایای UUID
تولیدکنندههای کدهای منحصربهفرد جهانی نیازی به تطبیق/همگامسازی دادههای متمرکز ندارند و بهطور رایگان در دسترس همه کاربران هستند. مزایای اصلی UUID عبارتند از:
- حداقل خطرات "برخورد" (تکرار) کدها. با وجود استفاده گسترده از آنها، احتمال تکرار به صفر میرسد.
- قابلیت پیوستن به آرایههای مختلف داده با استفاده از UUID بهعنوان کلیدهای اصلی (یکتا).
- توزیع ساده داده ها در چندین سرور پراکنده.
- قابلیت تولید کدهای آفلاین.
کدهای شناسایی منحصربهفرد، که با فرمت xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx نوشته شدهاند، به سیستمهای پراکنده اجازه میدهند تا اطلاعات را بدون هماهنگی از یک مرکز داده واحد شناسایی کنند: با احتمال تقریباً صفر خطا/تکرار. این ویژگی، همراه با سهولت استفاده و نیازهای اندک برای عملکرد رایانه، UUID را مورد تقاضا و ضروری در طیف گسترده ای از صنایع فناوری اطلاعات و سیستم های محاسباتی مستقل می کند.