OpenReplay Logo
12k
12k

مولّد UUID

أنشئ معرّفات UUID وفق RFC 9562 — عشوائية v4 أو مرتَّبة زمنيًا v7 — بالجملة، مع خيارات تنسيق، تُعالَج محليًا كي لا يغادر أي شيء متصفحك.

الإصدار
الصيغة
تتم المعالجة محليًا
UUID

حول هذه الأداة

إن معرّف UUID (المعرّف الفريد عالميًا) قيمة بطول 128 بتًا تُكتَب على هيئة 32 رقمًا ست عشريًا في النسق القياسي 8-4-4-4-12. ويُنتِج هذا المُولِّد معرّفات UUID من الإصدار 4، التي تملأ 122 بتًا ببيانات عشوائية آمنة تشفيريًا من الـ Web Crypto API، ومعرّفات UUID من الإصدار 7 وفق RFC 9562، التي تُلحِق في مقدمتها طابعًا زمنيًا بالملّي ثانية من Unix بطول 48 بتًا بترتيب big-endian قبل البتات العشوائية كي تُرتَّب المعرّفات زمنيًا. وكلاهما يضبط بتات الإصدار والصيغة (variant) يدويًا وفق المواصفة.

استخدمه لإنشاء مفاتيح أساسية لقواعد البيانات، أو معرّفات الربط والطلبات، أو مفاتيح الإتقان (idempotency)، أو بيانات الاختبار. اختر v7 حين تريد مفاتيح قابلة للترتيب زمنيًا تبقي فهارس B-tree متراصة وتتفادى اضطراب انقسام الصفحات الذي تسببه مفاتيح v4 العشوائية؛ واختر v4 حين تحتاج إلى التفرد فقط دون أي إشارة ترتيب. ولِّد حتى 500 دفعةً واحدةً، وانسخها قائمةً مفصولة بأسطر جديدة، وبدِّل خيارات الإخراج بأحرف كبيرة أو دون شرطات أو محاطة بعلامات اقتباس كي تلصقها مباشرةً في SQL أو JSON أو الشيفرة.

يُولَّد كل معرّف UUID في متصفحك باستخدام crypto.getRandomValues — ولا يُرسَل أي منها إلى أي خادم ولا يُسجَّل لديه.

الأسئلة الشائعة

ما الفرق بين UUID v4 وUUID v7؟

الإصدار v4 عشوائي تمامًا (122 بتًا عشوائيًا)، فتكون القيم غير متوقَّعة لكن غير مرتَّبة. أما v7 فيبدأ بطابع زمني بالملّي ثانية من Unix بطول 48 بتًا تتبعه بتات عشوائية، فتُرتَّب القيم المُولَّدة لاحقًا بعد السابقة — وهو ما يفيد مفاتيح قواعد البيانات التي تُفهرَس بكفاءة.

هل تفرّد قيم UUID v4 مضمون؟

ليس مضمونًا، لكن احتمال التصادم ضئيل لا يُذكر: فمع 122 بتًا عشوائيًا ستحتاج إلى توليد مليارات المعرّفات قبل أن يصبح التكرار محتملًا إحصائيًا. ولأغراض عملية تُعامَل على أنها فريدة.

هل استخدام UUID v7 آمن كمفتاح أساسي لقاعدة بيانات؟

نعم، وهو غالبًا أفضل من v4 لهذا الغرض. ولأن v7 مرتَّب زمنيًا، تُلحَق الإدخالات المتسلسلة بنهاية فهرس B-tree بدلًا من تشتّتها عبره، مما يقلل انقسام الصفحات ويُبقي الفهارس أكثر تراصًّا.