KSUID உருவாக்கி: தனித்துவமான மற்றும் கால அடிப்படையிலான விசைகள்

வகுப்பில் உள்ள அமைப்புகள், தரவுத்தொகுப்புகள் மற்றும் தனித்துவமான, காலம் அடிப்படையில் வகைப்படுத்தக்கூடிய விசைகளை தேவைப்படும் பயன்பாடுகளுக்காக K-Sortable Unique Identifiers (KSUIDs) உருவாக்கவும். KSUIDs, நேரத்தை அடிப்படையாகக் கொண்டு மாறுபட்ட தரவுடன் சேர்க்கப்பட்டு, மோதல் எதிர்ப்பு, வகைப்படுத்தக்கூடிய அடையாளங்களை உருவாக்குகிறது.

KSUID உருவாக்கி

📚

ஆவணம்

KSUID உருவாக்கி

அறிமுகம்

KSUID (K-Sortable Unique IDentifier) என்பது பாரம்பரிய UUID (Universally Unique Identifier) மற்றும் பிற அடையாள அமைப்புகளுக்கு மாறாக பல நன்மைகளை வழங்கும் தனித்துவமான அடையாள வடிவமாகும். இந்த கருவி, நீங்கள் KSUID-ஐ விரைவாக மற்றும் எளிதாக உருவாக்க அனுமதிக்கிறது.

KSUID என்பது என்ன?

KSUID என்பது 20-பைட் வரிசைப்படுத்தக்கூடிய அடையாளமாகும், இது அடிப்படையில்:

  1. 32-பைட் காலம் (4 பைட்)
  2. 16 பைட்டுகளின் சீரற்ற தன்மை

ஒரு ஸ்டிரிங்காக பிரதிநிதித்துவப்படுத்தப்படும் போது, KSUID அடிப்படையில் base62 இல் குறியாக்கப்படுகிறது மற்றும் 27 எழுத்துக்களைக் கொண்டது.

KSUID-இன் அமைப்பு

KSUID-இன் அமைப்பை கீழே உள்ளவாறு உடைக்கலாம்:

  1. காலம் (4 பைட்): இது Unix காலக்கெட்டியின் (1970-ஆம் ஆண்டு ஜனவரி 1, 00:00 UTC) பிறகு கடந்த விநாடிகளை பிரதிநிதித்துவப்படுத்துகிறது. காலம் KSUID-ஐ உருவாக்கும் நேரத்தின் அடிப்படையில் வரிசைப்படுத்துவதற்கு உதவுகிறது.

  2. சீரற்ற கூறு (16 பைட்): இது ஒரு கிரிப்டோகிராபிகல் பாதுகாப்பான சீரற்ற எண்ணிக்கை ஆகும், இது ஒரே விநாடியில் பல KSUID-களை உருவாக்கும் போது தனித்துவத்தை உறுதி செய்கிறது.

  3. Base62 குறியாக்கம்: இணைக்கப்பட்ட 20 பைட்டுகள் (காலம் + சீரற்ற) பின்னர் base62 (A-Z, a-z, 0-9) மூலம் குறியாக்கப்படுகிறது, இறுதியாக 27 எழுத்துக்களைக் கொண்ட ஸ்டிரிங்கை உருவாக்குகிறது.

KSUID சூத்திரம்

KSUID-ஐ கணிதமாக கீழே உள்ளவாறு பிரதிநிதித்துவப்படுத்தலாம்:

KSUID=Base62(TR)KSUID = Base62(T || R)

எங்கு:

  • TT என்பது 32-பைட் காலம்
  • RR என்பது 128-பைட் சீரற்ற கூறு
  • || இணைப்பு குறிக்கிறது

காலம் TT இன் கணக்கீடு:

T = \text{floor}(\text{current_time} - \text{KSUID_epoch})

எங்கு KSUID_epoch என்பது 1400000000 (2014-05-13T16:53:20Z).

KSUID அமைப்பு வரைபடம்

காலம் (4 பைட்) சீரற்ற கூறு (16 பைட்)

KSUID-களுக்கான பயன்பாடுகள்

KSUID-கள் குறிப்பாக கீழ்க்காணும் நிலைகளில் பயனுள்ளதாக இருக்கின்றன:

  1. விநியோகிக்கப்பட்ட அமைப்புகள்: பல சேவைகள் அல்லது சேவைகளில் ஒரே நேரத்தில் தனித்துவமான அடையாளங்களை தேவைப்படும் போது.

  2. காலத்தில் வரிசைப்படுத்தக்கூடிய தரவுகள்: தனித்துவமான அடையாளங்களை உருவாக்கும் போது தனித்துவமான காலத்தைச் சேமிக்காமல் தரவுகளை உருவாக்க விரும்பும் போது.

  3. தரவுத்தள விசைகள்: குறிப்பாக தானாகவே அதிகரிக்கும் முழு எண்கள் பொருந்தாத விநியோகிக்கப்பட்ட தரவுத்தளங்களில் முதன்மை விசைகளாக.

  4. URL-க்கு பாதுகாப்பான அடையாளங்கள்: இணைய பயன்பாடுகளில் வளங்களை உருவாக்குவதற்கான குறுகிய, தனித்துவமான, URL-க்கு பாதுகாப்பான அடையாளங்களை உருவாக்க.

  5. பதிவு ஒத்திசைவு: மைக்ரோசர்வீசுகள் கட்டமைப்பில் பல்வேறு சேவைகளில் பதிவு உள்ளீடுகளை ஒத்திசைவதற்கான.

KSUID-களின் நன்மைகள்

KSUID-கள் பிற அடையாள அமைப்புகளுக்கு மாறாக பல நன்மைகளை வழங்குகின்றன:

  1. வரிசைப்படுத்துதல்: UUID-களுக்கு மாறாக, KSUID-கள் கால வரிசைப்படுத்துவதற்கான, இது தரவுத்தளத்திற்கான குறியீடு மற்றும் பதிவு பகுப்பாய்வுக்கு பயனுள்ளதாக இருக்கிறது.

  2. ஒருங்கிணைப்பு தேவை இல்லை: தானாகவே அதிகரிக்கும் அடையாளங்களுக்கு மாறாக, KSUID-கள் மோதல்களை தவிர்க்காமல் பல சேவைகளால் சுயமாக உருவாக்கப்படலாம்.

  3. சுருக்கமான பிரதிநிதித்துவம்: 27 எழுத்துக்களாக, KSUID-கள் ஸ்டிரிங்காக பிரதிநிதித்துவப்படுத்தும்போது UUID-களுக்குப் பதிலாக அதிக சுருக்கமானவை.

  4. காலம் உள்ளடக்கப்பட்டுள்ளது: உள்ளடக்கப்பட்ட காலம் தனித்துவமான கால அடிப்படையில் வரிசைப்படுத்துவதற்கும் வடிகட்டுவதற்கும் தனித்துவமான காலத்தைப் பெறுவதற்கான.

  5. URL-க்கு பாதுகாப்பானது: base62 குறியாக்கம் KSUID-களை URL-ல் எந்த கூடுதல் குறியாக்கமும் இல்லாமல் பயன்படுத்துவதற்கான பாதுகாப்பாக செய்கிறது.

  6. மோதல் வாய்ப்பு குறைவாக: 16-பைட் சீரற்ற கூறு, அதிக அளவில் உருவாக்கும் போது மோதல்கள் மிகவும் சாத்தியமற்றதாக இருக்கிறது.

இந்த உருவாக்கியைப் பயன்படுத்துவது எப்படி

  1. தேவையான பிற அளவீடுகளை உள்ளிடவும் (எ.கா., தனிப்பயனாக்கப்பட்ட காலம்).
  2. புதிய KSUID-ஐ உருவாக்க "KSUID உருவாக்கவும்" பொத்தானை அழுத்தவும்.
  3. உருவாக்கப்பட்ட KSUID வெளியீட்டு புலத்தில் காட்டப்படும்.
  4. நீங்கள் பல KSUID-களை உருவாக்க, படி 1-3-ஐ மீண்டும் செய்யலாம்.
  5. ஒவ்வொரு KSUID-க்கும், அதை உங்கள் கிளிப்போர்டுக்கு நகலெடுக்க "நகலெடுக்கவும்" பொத்தானைப் பயன்படுத்தவும்.
  6. விருப்பமாக, உருவாக்கப்பட்ட KSUID-க்களின் பட்டியலைப் பதிவிறக்க "ஏற்றுமதி" அம்சத்தைப் பயன்படுத்தவும்.

ஒவ்வொரு KSUID-வும் தனித்துவமானது மற்றும் ஒருமுறை மட்டுமே பயன்படுத்தப்பட வேண்டும் என்பதை நினைவில் கொள்ளுங்கள். தனித்துவமான அடையாளம் தேவைப்படும் ஒவ்வொரு முறையும் புதிய KSUID-ஐ உருவாக்குங்கள்.

குறியீட்டு எடுத்துக்காட்டுகள்

பல நிரலாக்க மொழிகளில் KSUID-களை உருவாக்குவதற்கான எடுத்துக்காட்டுகள்:

1## Python
2import ksuid
3
4new_id = ksuid.ksuid()
5print(f"Generated KSUID: {new_id}")
6

மேற்கோள்கள்

  1. Segment-இன் KSUID GitHub களஞ்சியம்: https://github.com/segmentio/ksuid
  2. "சிறந்த தனித்துவமான அடையாளங்களை உருவாக்குதல்" - பீட்டர் போர்கான்: https://peter.bourgon.org/blog/2019/05/20/generating-good-unique-ids.html
  3. KSUID விவரக்குறிப்பு: https://github.com/segmentio/ksuid/blob/master/README.md
🔗

தொடர்புடைய கருவிகள்

உங்கள் பணிப்பாக்கிலுக்கு பயனுள்ள மேலும் பயனுள்ள கருவிகளைக் கண்டறியவும்

ஈரமான சுற்றளவு கணக்கீட்டுக்கருவி மற்றும் பயன்பாடுகள்

இந்த கருவியை முயற்சி செய்க

மாங்கோடிபி ஆப்ஜெக்ட் ஐடி உருவாக்கும் கருவி

இந்த கருவியை முயற்சி செய்க

யூனிவர்சல் யூனிக் அடையாள உருவாக்கி - UUID உருவாக்கம்

இந்த கருவியை முயற்சி செய்க

CUID உருவாக்கி: மோதல்-எதிர்ப்பு அடையாளங்களை உருவாக்கவும்

இந்த கருவியை முயற்சி செய்க

நானோ ஐடி உருவாக்கி - பாதுகாப்பான மற்றும் தனிப்பட்ட அடையாளங்கள்

இந்த கருவியை முயற்சி செய்க

எளிய QR குறியீடு உருவாக்கி: உடனடி QR குறியீடுகளை உருவாக்கவும் மற்றும் பதிவிறக்கவும்

இந்த கருவியை முயற்சி செய்க

சோதனைக்கான CPF எண்களை உருவாக்கும் கருவி

இந்த கருவியை முயற்சி செய்க

அர்ஜென்டினா CUIT/CUIL உருவாக்கி மற்றும் சரிபார்க்கும் கருவி

இந்த கருவியை முயற்சி செய்க

எம்.டி.5 ஹாஷ் உருவாக்கி

இந்த கருவியை முயற்சி செய்க

சரியான வடிவத்திற்கேற்ப IBAN உருவாக்கி மற்றும் சரிபார்க்கும் கருவி

இந்த கருவியை முயற்சி செய்க