വിതരണ സംവിധാനങ്ങൾ, ഡാറ്റാബേസുകൾ, വെബ് ആപ്ലിക്കേഷനുകൾ എന്നിവയ്ക്കായി കൂട്ടിയിടിക്കാനാവാത്ത പ്രത്യേക തിരിച്ചറിയലുകൾ (CUIDs) സൃഷ്ടിക്കുക. ഈ ഉപകരണം CUIDs സൃഷ്ടിക്കുന്നു, അവ സ്കെയിലബിള്, സോർട്ടബിള്, കൂടാതെ കൂട്ടിയിടിക്കാൻ വളരെ സാധ്യത കുറഞ്ഞവയാണ്.
തകരാറില്ലാത്ത ഐഡി വേഗത്തിൽ എളുപ്പത്തിൽ സൃഷ്ടിക്കുക.
CUID (Collision-resistant Unique IDentifier) ഒരു പ്രത്യേകമായി തകരാറുകൾ ഇല്ലാത്ത, അകമ്പടിയില്ലാത്ത, ക്രമീകരിച്ച രീതിയിൽ ക്രമീകരിക്കാവുന്ന ഏകീകൃത ഐഡന്റിഫയർ ആണ്. CUIDകൾ അകമ്പടിയില്ലാത്ത സിസ്റ്റങ്ങളിൽ ഉപയോഗിക്കാൻ വളരെ ഉപകാരപ്രദമാണ്, അവിടെ ഏകീകൃത ഐഡന്റിഫയറുകൾ നോട്കളുടെ ഇടയിൽ സഹകരണം ആവശ്യമില്ലാതെ നിർമ്മിക്കേണ്ടതുണ്ട്.
ഒരു CUID സാധാരണയായി താഴെപ്പറയുന്ന ഘടകങ്ങൾ അടങ്ങിയിരിക്കുന്നു:
CUID നടപ്പിലാക്കലിന്റെ അടിസ്ഥാനത്തിൽ കൃത്യമായ ഘടന വ്യത്യാസപ്പെട്ടേക്കാം, പക്ഷേ ഈ ഘടകങ്ങൾ ഒന്നിച്ച് പ്രവർത്തിച്ച് ഒരു ഏകീകൃതവും ക്രമീകരണയോഗ്യമായ ഐഡന്റിഫയർ സൃഷ്ടിക്കുന്നു.
ഒരു സാധാരണ CUID ഘടനയുടെ ദൃശ്യ പ്രതിനിധാനം ഇവിടെ കാണാം:
CUIDകൾ സമയ അടിസ്ഥാനവും യാദൃശ്ചിക ഘടകങ്ങളും ഉപയോഗിച്ച് നിർമ്മിക്കുന്നു. പ്രക്രിയ സാധാരണയായി അടങ്ങിയിരിക്കുന്നു:
ഫലമായ CUID സാധാരണയായി അക്ഷരങ്ങളും സംഖ്യകളും അടങ്ങിയ ഒരു സ്ട്രിങ്ങായി പ്രതിനിധീകരിക്കപ്പെടുന്നു.
CUIDകൾ മറ്റ് ഏകീകൃത ഐഡന്റിഫയർ സിസ്റ്റങ്ങൾക്കാളും നിരവധി അനുകൂലതകൾ നൽകുന്നു:
CUIDകൾക്കുള്ള സാധാരണ ഉപയോഗ കേസുകൾ ഉൾക്കൊള്ളുന്നു:
വിവിധ പ്രോഗ്രാമിംഗ് ഭാഷകളിൽ CUIDകൾ നിർമ്മിക്കുന്ന ഉദാഹരണങ്ങൾ ഇവിടെ കാണാം:
1// ജാവാസ്ക്രിപ്റ്റ് (cuid ലൈബ്രറി ഉപയോഗിച്ച്)
2const cuid = require('cuid');
3const id = cuid();
4console.log(id);
5
1## പൈത്തൺ (cuid ലൈബ്രറി ഉപയോഗിച്ച്)
2import cuid
3id = cuid.cuid()
4print(id)
5
1## റൂബി (cuid ജെം ഉപയോഗിച്ച്)
2require 'cuid'
3id = Cuid::generate
4puts id
5
1// ജാവ (com.github.f4b6a3.cuid ലൈബ്രറി ഉപയോഗിച്ച്)
2import com.github.f4b6a3.cuid.Cuid;
3
4public class CuidExample {
5 public static void main(String[] args) {
6 String id = Cuid.createCuid();
7 System.out.println(id);
8 }
9}
10
1// C# (Cuid.Net NuGet പാക്കേജ് ഉപയോഗിച്ച്)
2using Cuid;
3
4class Program
5{
6 static void Main(string[] args)
7 {
8 string id = CuidGenerator.Generate();
9 Console.WriteLine(id);
10 }
11}
12
1// PHP (endyjasmi/cuid പാക്കേജ് ഉപയോഗിച്ച്)
2<?php
3require 'vendor/autoload.php';
4use Endyjasmi\Cuid\Cuid;
5
6$id = Cuid::make();
7echo $id;
8
1// ഗോ (github.com/lucsky/cuid പാക്കേജ് ഉപയോഗിച്ച്)
2package main
3
4import (
5 "fmt"
6 "github.com/lucsky/cuid"
7)
8
9func main() {
10 id := cuid.New()
11 fmt.Println(id)
12}
13
1// സ്വിഫ്റ്റ് (CUID പാക്കേജ് ഉപയോഗിച്ച്)
2import CUID
3
4let id = CUID()
5print(id)
6
1// C++ (ഒരു കസ്റ്റം നടപ്പിലാക്കൽ ഉപയോഗിച്ച്)
2#include <iostream>
3#include <chrono>
4#include <random>
5#include <sstream>
6#include <iomanip>
7
8std::string generateCUID() {
9 auto now = std::chrono::system_clock::now();
10 auto now_ms = std::chrono::time_point_cast<std::chrono::milliseconds>(now);
11 auto value = now_ms.time_since_epoch();
12 long duration = value.count();
13
14 std::random_device rd;
15 std::mt19937 gen(rd());
16 std::uniform_int_distribution<> dis(0, 35);
17
18 std::stringstream ss;
19 ss << 'c';
20 ss << std::hex << std::setfill('0') << std::setw(8) << duration;
21 for (int i = 0; i < 8; i++) {
22 int r = dis(gen);
23 ss << (char)(r < 10 ? '0' + r : 'a' + r - 10);
24 }
25 return ss.str();
26}
27
28int main() {
29 std::string id = generateCUID();
30 std::cout << id << std::endl;
31 return 0;
32}
33
1% MATLAB (ഒരു കസ്റ്റം നടപ്പിലാക്കൽ ഉപയോഗിച്ച്)
2function id = generateCUID()
3 timestamp = dec2hex(round(posixtime(datetime('now'))*1000), 8);
4 random = '';
5 for i = 1:8
6 random = [random char(randi([48 57 97 122]))];
7 end
8 id = ['c' timestamp random];
9end
10
11% ഉപയോഗം
12id = generateCUID();
13disp(id);
14
1## R (ഒരു കസ്റ്റം നടപ്പിലാക്കൽ ഉപയോഗിച്ച്)
2library(lubridate)
3
4generate_cuid <- function() {
5 timestamp <- format(as.numeric(now()) * 1000, scientific = FALSE)
6 timestamp <- substr(timestamp, 1, 8)
7 random <- paste0(sample(c(0:9, letters[1:6]), 8, replace = TRUE), collapse = "")
8 paste0("c", timestamp, random)
9}
10
11## ഉപയോഗം
12id <- generate_cuid()
13print(id)
14
1' Excel VBA (ഒരു കസ്റ്റം നടപ്പിലാക്കൽ ഉപയോഗിച്ച്)
2Function GenerateCUID() As String
3 Dim timestamp As String
4 Dim random As String
5 Dim i As Integer
6
7 timestamp = Right("00000000" & Hex(CLng(CDbl(Now()) * 86400000)), 8)
8
9 For i = 1 To 8
10 random = random & Mid("0123456789abcdef", Int(Rnd() * 16) + 1, 1)
11 Next i
12
13 GenerateCUID = "c" & timestamp & random
14End Function
15
16' സെല്ലിൽ ഉപയോഗിക്കുക
17'=GenerateCUID()
18
CUIDകൾ 2012-ൽ എറിക് എലിയറ്റ് വികസിപ്പിച്ചെടുത്തതാണ്, ഇത് അകമ്പടിയില്ലാത്ത സിസ്റ്റങ്ങളിൽ ഏകീകൃത ഐഡന്റിഫയറുകൾ നിർമ്മിക്കുന്ന പ്രശ്നത്തിന് ഒരു പരിഹാരമായി. ഈ ആശയം ട്വിറ്ററിന്റെ സ്നോഫ്ലേക്ക് ഐഡി സിസ്റ്റത്തിൽ നിന്ന് പ്രചോദനം എടുത്തതാണ്, എന്നാൽ ഇത് വിവിധ പ്ലാറ്റ്ഫോമുകളിൽ എളുപ്പത്തിൽ നടപ്പിലാക്കുകയും ഉപയോഗിക്കാവുന്നതാണ്.
CUIDകളുടെ വികസനം ഏകീകൃത ഐഡന്റിഫയർ സിസ്റ്റം നിർമ്മിക്കാൻ ആവശ്യമായ ഒരു ലളിതമായ, തകരാറുകൾ ഇല്ലാത്ത ഐഡി സിസ്റ്റം ഉണ്ടാക്കാനുള്ള ആവശ്യകതയെ അടിസ്ഥാനമാക്കി നടന്നു. എലിയറ്റിന്റെ ലക്ഷ്യം എളുപ്പത്തിൽ നടപ്പിലാക്കാവുന്ന, കേന്ദ്ര സഹകരണം ആവശ്യമില്ലാത്ത, അകമ്പടിയില്ലാത്ത സ്കെയിലിംഗ് സാധ്യമാക്കുന്ന ഒരു സിസ്റ്റം സൃഷ്ടിക്കുക ആയിരുന്നു.
അതിന്റെ ആരംഭത്തിൽ നിന്ന്, CUID നിരവധി പതിപ്പുകളിൽ വികസിച്ചിരിക്കുന്നു:
CUIDകളുടെ പുരോഗതി അകമ്പടിയില്ലാത്ത സിസ്റ്റങ്ങളുടെ മാറ്റങ്ങൾക്കുള്ള പ്രതിഫലമാണ്, ഏകീകൃത ഐഡന്റിഫയർ നിർമ്മാണത്തിൽ ലളിതത്വം, സുരക്ഷ, പ്രവർത്തനക്ഷമത എന്നിവയെ സമന്വയിപ്പിക്കാൻ നടക്കുന്ന ശ്രമങ്ങൾ.
ഈ CUID ജനറേറ്റർ ഉപകരണം നിങ്ങളുടെ പ്രോജക്ടുകൾക്കായി CUIDകൾ എളുപ്പത്തിൽ നിർമ്മിക്കാൻ അനുവദിക്കുന്നു. പുതിയ CUID സൃഷ്ടിക്കാൻ "ജനറേറ്റ്" ബട്ടൺ ക്ലിക്ക് ചെയ്യുക, നിങ്ങളുടെ ആപ്ലിക്കേഷനുകളിൽ എളുപ്പത്തിൽ ഉപയോഗിക്കാൻ "കോപി" ബട്ടൺ ഉപയോഗിച്ച് ക്ലിപ്പ്ബോർഡിലേക്ക് കോപ്പി ചെയ്യുക.
നിങ്ങളുടെ പ്രവർത്തനത്തിന് ഉപയോഗപ്പെടുന്ന കൂടുതൽ ഉപകരണങ്ങൾ കണ്ടെത്തുക.