All Projects → peterkingsbury → Ordered Uuid

peterkingsbury / Ordered Uuid

Licence: mit
Reorganizes UUIDs for the purpose of fast indexing and searching by a database.

Programming Languages

javascript
184084 projects - #8 most used programming language

Labels

Projects that are alternatives of or similar to Ordered Uuid

ulid-creator
A Java library for generating Universally Unique Lexicographically Sortable Identifiers (ULID)
Stars: ✭ 38 (+660%)
Mutual labels:  uuid
Uniuri
Go package uniuri generates random strings good for use in URIs to identify unique objects.
Stars: ✭ 336 (+6620%)
Mutual labels:  uuid
Laravel Binary Uuid
Optimised binary UUIDs in Laravel
Stars: ✭ 523 (+10360%)
Mutual labels:  uuid
vue-uuid
Add UUID to Vue instance.
Stars: ✭ 55 (+1000%)
Mutual labels:  uuid
Newid
A sequential id generator that works across nodes with no collisions
Stars: ✭ 255 (+5000%)
Mutual labels:  uuid
Go Nanoid
Golang random IDs generator.
Stars: ✭ 373 (+7360%)
Mutual labels:  uuid
user
A domain layer providing basic user management
Stars: ✭ 14 (+180%)
Mutual labels:  uuid
Timeflake
Timeflake is a 128-bit, roughly-ordered, URL-safe UUID.
Stars: ✭ 669 (+13280%)
Mutual labels:  uuid
Xyuuid
iOS14 UUID KeyChain DeviceInfo IDFA UDID
Stars: ✭ 301 (+5920%)
Mutual labels:  uuid
Uuid
Generate and parse UUIDs.
Stars: ✭ 457 (+9040%)
Mutual labels:  uuid
twitch-chat-visualizer
A Node.js Project. Would you like to see your chat stream with a custom design? This is for you!
Stars: ✭ 14 (+180%)
Mutual labels:  uuid
shortuuid.rb
Convert UUIDs & numbers into space efficient and URL-safe Base62 strings, or any other alphabet.
Stars: ✭ 38 (+660%)
Mutual labels:  uuid
Laravel Eloquent Uuid
A simple drop-in solution for providing UUID support for the IDs of your Eloquent models.
Stars: ✭ 388 (+7660%)
Mutual labels:  uuid
uuix
A tiny (<1KB) and fast UUID (v4) generator for Crystal
Stars: ✭ 17 (+240%)
Mutual labels:  uuid
Shortuuid
🍄 A generator library for concise, unambiguous and URL-safe UUIDs
Stars: ✭ 603 (+11960%)
Mutual labels:  uuid
secrets.clj
A library designed to generate cryptographically strong random numbers.
Stars: ✭ 64 (+1180%)
Mutual labels:  uuid
Android cn oaid
适用于国内各大Android手机厂商的开放匿名设备标识(OAID)解决方案,可替代移动安全联盟提供的 SDK 闭源方案(miit_mdid_xxx.aar)。
Stars: ✭ 370 (+7300%)
Mutual labels:  uuid
Uuid Doctrine
Allow the use of a ramsey/uuid UUID as Doctrine field type.
Stars: ✭ 751 (+14920%)
Mutual labels:  uuid
Uuid Readable
Generate Easy to Remember, Readable UUIDs, that are Shakespearean and Grammatically Correct Sentences 🥳
Stars: ✭ 616 (+12220%)
Mutual labels:  uuid
Go.uuid
UUID package for Go
Stars: ✭ 4,427 (+88440%)
Mutual labels:  uuid

ordered-uuid

Introduction

The intent of UUIDs is to enable distributed systems to uniquely identify information without significant central coordination.

However, when storing UUIDs in a database, there is a need for UUIDs to be optimized in a way that allows the database to search, order and index them quickly.

The ordered-uuid module implements the results of research by Karthik Appigatla, originally based on work done by Peter Zaitsev. It can typically be used with RDBMSs which allow storage of 16-bit binary fields (e.g. Binary(16) in MySQL/MariaDB).

API

Module Functions

generate()

Generate an ordered UUID, and return it as a string.

toBinary16(orderedUUID)

Convenience function which intakes an ordered UUID string, and returns it as a hex-encoded Buffer object.

fromBinary16(binaryUUID)

Convenience function which intakes a hex-encoded binary Buffer object containing an ordered UUID, decodes it, and returns it as the original ordered-UUID string.

Examples

var OrderedUUID = require('ordered-uuid');

var orderedUuid = OrderedUUID.generate();
// '4352e80c5117dff996296b7531fbc4c0'

var binaryUuid = OrderedUUID.toBinary16(orderedUuid);
// <Buffer 43 52 e8 0c 51 17 df f9 96 29 6b 75 31 fb c4 c0>

var decodedUuid = OrderedUUID.fromBinary16(binaryUuid);
// '4352e80c5117dff996296b7531fbc4c0'

Questions and Issues

For all questions and issues, please open an Issue in GitHub.

License

Licensed liberally under MIT; see LICENSE for complete license text.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].