§

UUID ಜನರೇಟರ್ — ಉಚಿತ ಆನ್‌ಲೈನ್ UUID v4 ಜನರೇಟರ್

v4 ಡೀಫಾಲ್ಟ್. v7 ರಚನಾ ಸಮಯದ ಮೂಲಕ ಶಬ್ದಕ್ರಮದಲ್ಲಿ ಕ್ರಮಿಸುತ್ತದೆ ಮತ್ತು ಡೇಟಾಬೇಸ್ ಕೀಗಳಿಗೆ ಅತ್ಯುತ್ತಮ ಆಯ್ಕೆ.
ಔಟ್‌ಪುಟ್ ಫಾರ್ಮ್ಯಾಟ್
§

ಔಟ್‌ಪುಟ್

    Universally Unique Identifier ಗಳು ಭಾರತದ ಡೇಟಾ ಸ್ಟ್ಯಾಕ್‌ನಲ್ಲಿ ಗುರುತಿನ ಕಾಲಮ್‌ಗಳಿಗೆ ಆಧಾರ ಒದಗಿಸುತ್ತವೆ: ಹೊಸ Supabase, PlanetScale, ಅಥವಾ AWS Aurora PostgreSQL ಟೇಬಲ್‌ನಲ್ಲಿ ಪ್ರತಿ ಡೀಫಾಲ್ಟ್ `id` `uuid` ಪ್ರಕಾರ, ಮತ್ತು Razorpay ಮತ್ತು Stripe ಆಬ್ಜೆಕ್ಟ್‌ಗಳು UUID-ಆಕಾರದ ಕೀ ಒಯ್ಯುತ್ತವೆ. ಈ ಜನರೇಟರ್ ಕ್ರಿಪ್ಟೋಗ್ರಾಫಿಕ್ ಯಾದೃಚ್ಛಿಕ v4 UUID ಗಳು ಮತ್ತು ಸಮಯ-ಕ್ರಮ v7 UUID ಗಳನ್ನು ಸಂಪೂರ್ಣ ಬ್ರೌಸರ್ Web Crypto API ಮೂಲಕ ಹೊರಡಿಸುತ್ತದೆ, ಹೀಗಾಗಿ ಉತ್ಪಾದನೆಗಾಗಿ ಕಾಯ್ದಿರಿಸಿದ ಗುರುತಿಕೆ ಮೌಲ್ಯಗಳು ರಿಮೋಟ್ endpoint ಮೂಲಕ ಸೋರಿಕೆ ಆಗುವುದಿಲ್ಲ.

    UUID ಎಂದರೇನು?

    UUID (Universally Unique Identifier) ಒಂದು 128-ಬಿಟ್ ಮೌಲ್ಯ 550e8400-e29b-41d4-a716-446655440000 ಮೊದಲಾದ 36-ಅಕ್ಷರ ಸ್ಟ್ರಿಂಗ್ ಆಗಿ ನಿರ್ಮಿಸಲ್ಪಡುತ್ತದೆ. ಫಾರ್ಮ್ಯಾಟ್ ಮತ್ತು ಆವೃತ್ತಿ ಅರ್ಥಶಾಸ್ತ್ರ v1 ರಿಂದ v5 ಗೆ RFC 4122 ನಿಂದ, ಮತ್ತು ಹೊಸ v6, v7 ಮತ್ತು v8 ಆವೃತ್ತಿಗಳಿಗೆ RFC 9562 ನಿಂದ ವ್ಯಾಖ್ಯಾನಿಸಲ್ಪಟ್ಟಿದೆ. ಈ ಸಾಧನ v4 (ಶುದ್ಧ ಯಾದೃಚ್ಛಿಕ), v1 (timestamp ಮತ್ತು ಯಾದೃಚ್ಛಿಕ node ID), ಮತ್ತು v7 (Unix-ಮಿಲಿಸೆಕೆಂಡ್ timestamp ಪ್ರಿಫಿಕ್ಸ್, ರಚನಾ ಸಮಯದ ಮೂಲಕ ಕ್ರಮಿಸಬಹುದಾದ) ರಚಿಸುತ್ತದೆ — ಎಲ್ಲ ನಿಮ್ಮ ಬ್ರೌಸರ್‌ನಲ್ಲಿ. ಯಾವ ಡೇಟಾ ಸರ್ವರ್‌ಗೆ ಕಳಿಸಲ್ಪಡುವುದಿಲ್ಲ.

    UUID ರಚನೆ ಹೇಗೆ ಕಾರ್ಯ ನಿರ್ವಹಿಸುತ್ತದೆ?

    ಪ್ರತಿ ಆವೃತ್ತಿ ನಿರ್ಣಾಯಕತೆ, ಕ್ರಮಿಸಬಹುದಾಗಿರುವಿಕೆ ಮತ್ತು ಎಂಟ್ರೊಪಿ ಭಿನ್ನವಾಗಿ ವಿನಿಮಯ ಮಾಡುತ್ತದೆ. ಸಾಧನ ನಿಮ್ಮ ಆಯ್ಕೆ ಆಧಾರದ ಮೇಲೆ ಸರಿಯಾದ ಅಲ್ಗಾರಿದಮ್ ಆಯ್ಕೆ ಮಾಡುತ್ತದೆ:

    1. v4 (ಯಾದೃಚ್ಛಿಕ) ಬ್ರೌಸರ್‌ನ crypto.randomUUID() ಕರೆಯುತ್ತದೆ, ಇದು 6 ಸ್ಥಿರ ಬಿಟ್‌ಗಳೊಂದಿಗೆ (ಆವೃತ್ತಿ 0100 ಮತ್ತು 10 ವೇರಿಯಂಟ್) 122 ಬಿಟ್ ಕ್ರಿಪ್ಟೋಗ್ರಾಫಿಕ್ ಯಾದೃಚ್ಛಿಕತೆ ಹಿಂದಿರುಗಿಸುತ್ತದೆ. ಘರ್ಷಣೆ ಖಗೋಳ ಪ್ರಮಾಣದಲ್ಲಿ ಸಾಧ್ಯತೆ ಕಡಿಮೆ.
    2. v1 (ಟೈಮ್‌ಸ್ಟ್ಯಾಂಪ್ + ನೋಡ್) 60-ಬಿಟ್ ಗ್ರೆಗೋರಿಯನ್ ಟೈಮ್‌ಸ್ಟ್ಯಾಂಪ್ (1582-10-15 ರಿಂದ 100-ನ್ಯಾನೊಸೆಕೆಂಡ್ ಟಿಕ್‌ಗಳು) time_low / time_mid / time_hi_and_version ನಲ್ಲಿ ಪ್ಯಾಕ್ ಮಾಡಿ, ಆವೃತ್ತಿ nibble 0001 ಗೆ ಹೊಂದಿಸಿ, ವೇರಿಯಂಟ್ ಬಿಟ್‌ಗಳ ಸಮೇತ 14-ಬಿಟ್ ಗಡಿಯಾರ ಅನುಕ್ರಮ ಆಯ್ಕೆ ಮಾಡಿ, ಮತ್ತು ಯಾದೃಚ್ಛಿಕ 48-ಬಿಟ್ ನೋಡ್ ID ಬಳಸುತ್ತದೆ ಇದರಲ್ಲಿ ಬಹುಪ್ರಸಾರ ಬಿಟ್ ಬಲವಂತವಾಗಿ ಆನ್ ಆಗಿದೆ (RFC 4122 §4.5 ಸ್ಪಷ್ಟವಾಗಿ ಅನುಮತಿಸುತ್ತದೆ ಯಂತ್ರಾಂಶ MAC ಲಭ್ಯವಿಲ್ಲದಿರುವಾಗ ಯಾದೃಚ್ಛಿಕ ನೋಡ್ ID ಬಳಸಲು — ಬಹುಪ್ರಸಾರ ಬಿಟ್ ಅದನ್ನು ಗೈರು-MAC ಎಂದು ಗುರುತಿಸುತ್ತದೆ).
    3. v7 (ಕ್ರಮಿಸಬಹುದಾದ timestamp), RFC 9562 §5.7 ಪ್ರಕಾರ, 48-ಬಿಟ್ big-endian Unix-ಮಿಲಿಸೆಕೆಂಡ್ timestamp, ನಂತರ 4-ಬಿಟ್ ಆವೃತ್ತಿ 0111, ನಂತರ 12 ಯಾದೃಚ್ಛಿಕ ಬಿಟ್‌ಗಳು, ನಂತರ 2-ಬಿಟ್ ವೇರಿಯಂಟ್ 10, ನಂತರ 62 ಹೆಚ್ಚಿನ ಯಾದೃಚ್ಛಿಕ ಬಿಟ್‌ಗಳು ವಿನ್ಯಾಸ ಮಾಡುತ್ತದೆ. timestamp ಅತ್ಯಂತ-ಮಹತ್ವದ ಬಿಟ್‌ಗಳಲ್ಲಿ ಇರುವ ಕಾರಣ v7 UUID ಗಳು ರಚನಾ ಕ್ರಮದಲ್ಲಿ ಶಬ್ದಕ್ರಮ ಕ್ರಮಿಸುತ್ತವೆ.
    4. ಎಲ್ಲ ಯಾದೃಚ್ಛಿಕತೆ crypto.getRandomValues() ನಿಂದ ಬರುತ್ತದೆ, ಬ್ರೌಸರ್‌ನ ಕ್ರಿಪ್ಟೋಗ್ರಾಫಿಕ್-ಸುರಕ್ಷಿತ RNG. v1 ಮತ್ತು v7 ಎರಡೂ ಇಂಟ್ರಾ-ಟಿಕ್ ಮೊನೊಟೋನಿಕ್ ಗಾರ್ಡ್ ಒಳಗೊಂಡಿದ್ದು ಒಂದೇ ಗಡಿಯಾರ ಟಿಕ್‌ನಲ್ಲಿ ಎರಡು ಸತತ ಕಾಲ್‌ಗಳು ಎರಡನೇ ಮೊದಲನೆಯ ಮೇಲೆ ಕ್ರಮಿಸುತ್ತವೆ.
    5. ಫಾರ್ಮ್ಯಾಟ್ ಪೈಪ್‌ಲೈನ್ ರಚನೆ ನಂತರ ಚಲಾಯಿಸುತ್ತದೆ. ಹೈಫನ್ ತೆಗೆದುಹಾಕಿ, ಅಪ್ಪರ್‌ಕೇಸ್‌ಗೆ ಬದಲಿಸಿ, ಬ್ರೇಸ್‌ಗಳಲ್ಲಿ ಸುತ್ತಿ ({…} — Microsoft GUID ಸಂಪ್ರದಾಯ), ಅಥವಾ ಕಚ್ಚಾ 16 ಬೈಟ್‌ಗಳನ್ನು base64 ಆಗಿ ನಿರ್ಮಿಸಬಹುದು.

    ಈ UUID ಜನರೇಟರ್ ಏಕೆ ಬಳಸಬೇಕು?

    • ನಿಮ್ಮ ಬ್ರೌಸರ್ ಬಿಡುವುದಿಲ್ಲ. Web Crypto API ಸ್ಥಳೀಯವಾಗಿ ಚಲಾಯಿಸುತ್ತದೆ; ಆರಂಭ ದಾಖಲೆ ಲೋಡ್ ನಂತರ ಪುಟ ಶೂನ್ಯ ನೆಟ್‌ವರ್ಕ್ ವಿನಂತಿ ಮಾಡುತ್ತದೆ. DevTools ತೆರೆದು Generate ಕ್ಲಿಕ್ ಮಾಡಿ — Network ಪ್ಯಾನೆಲ್ ಮೌನವಾಗಿ ಉಳಿಯುತ್ತದೆ.
    • RFC-ಸರಿಯಾದ ಔಟ್‌ಪುಟ್. v4 RFC 4122 §4.4 ಅನುಸರಿಸುತ್ತದೆ, v1 §4.2 ಮತ್ತು §4.5 ಅನುಸರಿಸುತ್ತದೆ, ಮತ್ತು v7 RFC 9562 §5.7 ಅನುಸರಿಸುತ್ತದೆ. ಪ್ರತಿ UUID ಮಾನಕ ಆವೃತ್ತಿ regex ವಿರುದ್ಧ ಮೌಲ್ಯೀಕರಿಸುತ್ತದೆ.
    • ಡೇಟಾಬೇಸ್ ಕೀಗಳಿಗೆ ಕ್ರಮಿಸಬಹುದಾದ v7. Postgres, MySQL ಅಥವಾ SQL Server ನಲ್ಲಿ ಕ್ಲಸ್ಟರ್ಡ್ ಪ್ರಾಥಮಿಕ ಕೀ ಆಗಿ ಬಳಸಿದ v7 UUID ಇಂಡೆಕ್ಸ್‌ನಲ್ಲಿ ಇನ್ಸರ್ಟ್‌ಗಳನ್ನು ಅನುಬಂಧ-ಮಾತ್ರ ಇರಿಸಿ ಪೇಜ್ ಸ್ಪ್ಲಿಟ್ ಮತ್ತು ಯಾದೃಚ್ಛಿಕ I/O ತಡೆಯುತ್ತದೆ.
    • ದರ ಮಿತಿ ಇಲ್ಲದೆ ದೊಡ್ಡ ಪ್ರಮಾಣ ರಚನೆ. ಏಕಕಾಲದಲ್ಲಿ 1, 10, 100, ಅಥವಾ 1,000 UUID ರಚಿಸಿ. ಯಾವ ಕೋಟಾ ಇಲ್ಲ ಮತ್ತು ಸೈನ್‌ಅಪ್ ಇಲ್ಲ — ಸಾಧನ ನಿಮ್ಮ ಟ್ಯಾಬ್‌ನಲ್ಲಿ ಚಲಾಯಿಸುತ್ತದೆ.

    UUID ಗಳ ಸಾಮಾನ್ಯ ಅನ್ವಯಗಳು ಯಾವುವು?

    UUID ಗಳು ಕೇಂದ್ರ ಪ್ರಾಧಿಕಾರದೊಂದಿಗೆ ಸಮನ್ವಯ ಮಾಡದೆ ಸಿಸ್ಟಮ್‌ಗೆ ಜಾಗತಿಕವಾಗಿ-ಅನನ್ಯ ಗುರುತಿಕೆ ಅಗತ್ಯ ಎಲ್ಲ ಸ್ಥಳದಲ್ಲೂ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತವೆ:

    • ಡೇಟಾಬೇಸ್ ಪ್ರಾಥಮಿಕ ಕೀಗಳು. ಸ್ವಯಂ-ಇಂಕ್ರಿಮೆಂಟ್ ಪೂರ್ಣಾಂಕಗಳು ಸಾಲು ಎಣಿಕೆ ಸೋರಿಕೆ ಮಾಡಿ ಶಾರ್ಡಿಂಗ್ ಭಾಂಗಿಸುತ್ತವೆ. UUID ಗಳು ಶಾರ್ಡ್‌ಗಳಾದ್ಯಂತ ಸ್ಥಿರ, ಪ್ರದೇಶಗಳಾದ್ಯಂತ ವಿಲೀನಿಸಲು ಸುರಕ್ಷಿತ, ಮತ್ತು (v7 ನೊಂದಿಗೆ) ಪೇಜ್ ಸ್ಪ್ಲಿಟ್ ಇಲ್ಲದೆ B-tree ಇನ್ಸರ್ಟ್ ಬಿಸಿಯಾಗಿ ಇರಿಸುತ್ತದೆ.
    • ವಿನಂತಿ ಪರಸ್ಪರ ಸಂಬಂಧ ID ಗಳು. HTTP ಮಿಡಲ್‌ವೇರ್ v4 UUID ಅನ್ನು ಪ್ರತಿ ಒಳಬರುವ ವಿನಂತಿಗೆ ಜೋಡಿಸಿ ಪ್ರತಿ span ನಲ್ಲಿ ಲಾಗ್ ಮಾಡಿ ಡೌನ್‌ಸ್ಟ್ರೀಮ್‌ಗೆ ಹರಡುತ್ತದೆ (ಸಾಮಾನ್ಯವಾಗಿ X-Request-Id ಹೆಡರ್ ಆಗಿ). ಗ್ರಾಹಕ ಬಗ್ ವರದಿ ಮಾಡಿದಾಗ, ಬೆಂಬಲ ಇಂಜಿನಿಯರ್ ID ಅಂಟಿಸಿ ಸಂಪೂರ್ಣ ವಿನಂತಿ ಟ್ರೇಸ್ ತೋರಿಸುತ್ತದೆ.
    • Idempotency ಕೀಗಳು. ಪಾವತಿ API ಗಳು (Stripe, Razorpay, Adyen) `Idempotency-Key` ಹೆಡರ್ ಸ್ವೀಕರಿಸಿ ಮರುಪ್ರಯತ್ನ ವಿನಂತಿ ಗ್ರಾಹಕರನ್ನು ಎರಡು ಬಾರಿ ಶುಲ್ಕ ವಿಧಿಸದು ಎಂದು ಖಚಿತಪಡಿಸುತ್ತವೆ. ಕ್ಲೈಂಟ್-ರಚಿತ UUID ಕೀ ಪ್ರತಿ ತಾರ್ಕಿಕ ಕಾರ್ಯಾಚರಣೆಗೆ ಅನನ್ಯ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತದೆ.

    UUID ಉದಾಹರಣೆ ಹೇಗೆ ಕಾಣುತ್ತದೆ?

    Node.js ಅಥವಾ ಆಧುನಿಕ ಬ್ರೌಸರ್‌ನಲ್ಲಿ, ಒಂದೇ ಸಾಲಿನ crypto.randomUUID() ತಾಜಾ v4 UUID ಹಿಂದಿರುಗಿಸುತ್ತದೆ — ಉದಾಹರಣೆಗೆ 3f50b5a8-2c54-4b9c-9c1f-3e5c7e2b8d12. ವಿನಂತಿ ID ಅಥವಾ idempotency ಕೀಗೆ ಇದನ್ನು ಬಳಸಿ. UUID ಕ್ಲಸ್ಟರ್ಡ್ ಪ್ರಾಥಮಿಕ ಕೀ ಆಗಲಿರುವ ಡೇಟಾಬೇಸ್ ಕಾಲಮ್‌ಗೆ ಹೋದಾಗ, ಬದಲಿಗೆ v7 ರಚಿಸಿ: ಒಂದು ಮಿಲಿಸೆಕೆಂಡ್ ಅಂತರದಲ್ಲಿ ಉತ್ಪಾದಿಸಿದ ಎರಡು v7 ಮೌಲ್ಯಗಳು ಶಬ್ದಕ್ರಮ ರಚನಾ ಕ್ರಮದಲ್ಲಿ ಕ್ರಮಿಸುತ್ತವೆ.

    ಈ UUID ಜನರೇಟರ್ ಒಂದು ಕೆಲಸ ಮಾಡುತ್ತದೆ: ಒಂದು ಕ್ಲಿಕ್ ಅನ್ನು ಒಂದು ಅಥವಾ ಅನೇಕ RFC-ಅನುಸರಣಾ ಗುರುತಿಕೆಗಳಾಗಿ, ನಿಮಗೆ ಬೇಕಾದ ರೀತಿ ಫಾರ್ಮ್ಯಾಟ್ ಮಾಡಿ, ನಿಮ್ಮ ವಿನಂತಿ ಸರ್ವರ್‌ಗೆ ಕಳಿಸದೆ ತಿರುಗಿಸಿ. ಆವೃತ್ತಿ ಆಯ್ಕೆ ಮಾಡಿ, ಸಂಖ್ಯೆ ಆಯ್ಕೆ ಮಾಡಿ, ಫಾರ್ಮ್ಯಾಟ್ ಆಯ್ಕೆ ಮಾಡಿ — ರಚಿಸಿ, ನಕಲಿಸಿ, ಮುಂದುವರಿಯಿರಿ.