标签: uuid

如何使用Python制作独特的短URL?

我怎样才能在Python中创建独特的URL http://imgur.com/gM19ghttp://tumblr.com/xzh3bi25y 当使用python中的uuid时,我会得到一个非常大的URL .我想要更短的URL.

python url uuid tinyurl short-url

34
推荐指数
7
解决办法
3万
查看次数

DynamoDB的UUID?

在向表中添加新项时,是否可以让DynamoDB自动生成唯一ID?

我注意到Java API提到@DynamoDBAutoGeneratedKey所以我假设有一种方法可以使用PHP.

如果是这样,应用程序代码是否会生成这些ID,还是在DynamoDB端完成?

uuid amazon-web-services amazon-dynamodb

34
推荐指数
2
解决办法
3万
查看次数

将boost :: uuid转换为char*

我期待将boost :: uuid转换为const char*.转换的正确语法是什么?

c++ uuid boost

33
推荐指数
3
解决办法
3万
查看次数

Android:在SQLite中使用UUID作为主键

我的应用需要与其他应用用户同步(在自己的设备上).我还想支持离线编辑,当用户连接到互联网时,这些编辑会与其他协作用户同步.

因此,用户A改变(当他离线时)一些数据(换句话说,他将更新数据库条目)或向数据库添加新记录.当用户A连接到互联网时,所有更改和新记录都将传递给其他协作用户.因此,用户B将获得更改/更新,并可以将其插入/更新到用户B本地设备数据库中.

但我需要确保数据库条目的ID在整个系统中是唯一的.因此我需要使用像UUID这样的东西.

我的问题:在android sqlite数据库表中使用UUID(String/Varchar)作为主键而不是自动递增的整数是不是一个坏主意?

我想通过使用字符串(UUID有36个字符)作为主键会出现性能问题.

我想索引uuids而不是整数需要更长的时间(比较字符串与比较整数).我还猜测,当我使用UUID时,每次插入新的数据库记录/条目时,数据库都需要重新索引主键列,因为它们的主键索引不再处于排序顺序(这将是我何时使用整数自动递增主键,因为每个未来的记录都会在末尾添加,因为新的自动递增的主键始终是目前为止最大的数字,因此索引将自动按排序顺序排列).我还需要做的是加入2到3张桌子.我还猜测,比较JOINS上的字符串而不是整数会减慢数据库查询的速度.

但是我无法看到实现这种协作同步系统的任何其他可能性,所以我必须使用UUID,对吧?

另一种可能性是使用整数自动增量主键并使用第二列uuid.因此,为了处理用户本地设备,我将使用此主键(整数)进行JOINS等,而我将使用uuid列与其他用户进行同步.

你们对这种方法有什么看法,或者你认为有多少工作,因为你不会期望UUID直接作为主键出现重大的性能问题?

还有其他建议吗?

sqlite performance uuid android primary-key

33
推荐指数
2
解决办法
1万
查看次数

如何从Python生成唯一的64位整数?

我需要从Python生成唯一的64位整数.我已经检查了UUID模块.但它生成的UUID是128位整数.所以那不行.

你知道在Python中生成64位唯一整数的方法吗?谢谢.

python random uuid guid uniqueidentifier

32
推荐指数
3
解决办法
3万
查看次数

当按钮点击事件发生时,如何在Android中创建随机UUID?

我是Android的学徒.我需要随机创建UUID并将其作为主键存储到数据库中.我在Button click事件中使用UUID.randomUUID.toString()这段代码.UUID实际上非常有趣.然而,如果我再次单击该按钮,我需要制作另一个UUID.无论如何,我的代码没有制作新的UUID.有人,当我点击catch时,请帮我制作一个不规则的UUID.

这是我的代码:

String uniqueId = null;
showRandomId = (Button)findViewById(R.id.showUUID);
showRandomId.setOnClickListener(new View.OnClickListener() {
  public void OnClick(View v) {
    if(uniqueId == null) {
       uniqueId = UUID.randomUUID().toString();
    }
    int duration = Toast.LENGTH_SHORT;
    Toast toast = Toast.makeText(getBaseContext(), uniqueId, duration);
    toast.show(); 
  }
});
Run Code Online (Sandbox Code Playgroud)

java uuid android

32
推荐指数
3
解决办法
3万
查看次数

如何在Python中生成可重现(使用种子)的随机UUID

Python模块的uuid4()函数uuid生成一个随机UUID,并且似乎每次生成一个不同的UUID:

In [1]: import uuid

In [2]: uuid.uuid4()
Out[2]: UUID('f6c9ad6c-eea0-4049-a7c5-56253bc3e9c0')

In [3]: uuid.uuid4()
Out[3]: UUID('2fc1b6f9-9052-4564-9be0-777e790af58f')
Run Code Online (Sandbox Code Playgroud)

我希望每次运行脚本时都能生成相同的随机UUID - 也就是说,我想将随机生成器播种到uuid4().有没有办法做到这一点?(或通过其他方式实现这一点)?

到目前为止我尝试过的

我将使用uuid.UUID()带有随机128位整数(来自种子实例random.Random())的方法生成UUID 作为输入:

import uuid
import random

rd = random.Random()
rd.seed(0)
uuid.UUID(rd.getrandbits(128))
Run Code Online (Sandbox Code Playgroud)

但是,UUID()似乎不接受这个作为输入:

Traceback (most recent call last):
  File "uuid_gen_seed.py", line 6, in <module>
    uuid.UUID(rd.getrandbits(128))
  File "/usr/lib/python2.7/uuid.py", line 133, in __init__
    hex = hex.replace('urn:', '').replace('uuid:', '')
AttributeError: 'long' object has no attribute 'replace'
Run Code Online (Sandbox Code Playgroud)

还有其他建议吗?

python random uuid

32
推荐指数
6
解决办法
1万
查看次数

Typescript Node.js应用程序中的guid/uuid

我尝试uuid在Node/Typescript应用程序中创建一个(v 3.0.1)包,但我不确定应该导入什么以及如何使用它.

这是index.d.ts(从@types/uuid2.0.29开始):

declare namespace uuid {
    interface V1Options {
        node?: number[];
        clockseq?: number;
        msecs?: number | Date;
        nsecs?: number;
    }

    type V4Options = { random: number[] } | { rng: () => number[]; }

    interface UuidStatic {
        (options?: V4Options): string;
        (options: V4Options | null, buffer: number[], offset?: number): number[];
        (options: V4Options | null, buffer: Buffer, offset?: number): Buffer;

        v1(options?: V1Options): string;
        v1(options: V1Options | null, buffer: number[], offset?: number): number[];
        v1(options: V1Options | …
Run Code Online (Sandbox Code Playgroud)

uuid guid node.js typescript

32
推荐指数
5
解决办法
3万
查看次数

java.util.UUID.randomUUID().toString()length

java.util.UUID.randomUUID().toString()长度总是等于36吗?

我无法找到相关信息.这里只说以下内容:

public static UUID randomUUID()静态工厂,用于检索类型4(伪随机生成的)UUID.使用加密强伪随机数生成器生成UUID.返回:随机生成的UUID

这没type 4告诉我什么.我不知道在这种情况下4型是什么意思.

java string random uuid string-length

32
推荐指数
2
解决办法
3万
查看次数

如何在protobuf消息中表示UUID?

我想在我的protobuf用户消息示例中将UUID附加到字段.

message User {
  // field containing id as UUID type
  required string email;
  optional string name;
}
Run Code Online (Sandbox Code Playgroud)

我知道protobuf消息还不支持UUID类型.我已经读过,最好的方法是使用UUID消息类型.

所以我猜我的用户消息将导入我的UUID消息原型定义并将其用作字段类型,如下所示:

import "myproject/UUID.proto";

message User {
  required UUID id;
  required string email;
  optional string name;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,UUID消息将如何显示,以及如何对其进行编码/解码?我的目标是Java/Scala和C#兼容性.

uuid protocol-buffers

31
推荐指数
4
解决办法
2万
查看次数