Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的python脚本无法从配置单元中获取列的不同计数_Python_Count_Hive_Distinct - Fatal编程技术网

我的python脚本无法从配置单元中获取列的不同计数

我的python脚本无法从配置单元中获取列的不同计数,python,count,hive,distinct,Python,Count,Hive,Distinct,“我的表”有超过2500000000条记录。您的查询中没有语法错误。你试过使用fetchall吗 cur.execute("SELECT COUNT(DISTINCT USER_ID) FROM tname") a= cur.fetchone()[0] 查询中没有语法错误。你试过使用fetchall吗 cur.execute("SELECT COUNT(DISTINCT USER_ID) FROM tname") a= cur.fetchone()[0] 因为USER_ID不是索引字段,所以

“我的表”有超过2500000000条记录。

您的查询中没有语法错误。你试过使用fetchall吗

cur.execute("SELECT COUNT(DISTINCT USER_ID) FROM tname")
a= cur.fetchone()[0]

查询中没有语法错误。你试过使用fetchall吗

cur.execute("SELECT COUNT(DISTINCT USER_ID) FROM tname")
a= cur.fetchone()[0]

因为USER_ID不是索引字段,所以数据库必须访问每一行以确定该字段中的所有唯一值。对于这么多行,这可能需要很长时间。(正如您所指出的,在配置单元中运行查询需要一个小时才能执行)

所以,如果说“挂起”,你的意思是你得到了类似Windows的东西:“这个应用程序没有响应。”这可能是因为你在主线程中运行了这个游标。任何长时间阻塞主线程的操作都会导致应用程序“挂起”


你能详细说明一下你所说的应用程序被卡住是什么意思吗?您让它运行多久了?

因为用户ID不是索引字段,所以数据库必须访问每一行,以确定该字段中的所有唯一值。对于这么多行,这可能需要很长时间。(正如您所指出的,在配置单元中运行查询需要一个小时才能执行)

所以,如果说“挂起”,你的意思是你得到了类似Windows的东西:“这个应用程序没有响应。”这可能是因为你在主线程中运行了这个游标。任何长时间阻塞主线程的操作都会导致应用程序“挂起”


你能详细说明一下你所说的应用程序被卡住是什么意思吗?你让它运行多久了?

这是很多记录,用户ID是索引字段吗?不是。它不是索引字段。那么它可能需要很长时间。你能索引数据库吗?那是很多记录,用户ID是索引字段吗?不。它不是索引字段。那么它可能需要很长时间。你能为数据库建立索引吗?但是当我在蜂巢中单独尝试这个查询时,它工作得很好,尽管执行起来需要一个小时。所以我猜光标有问题。是否存在高值或其他限制?发生的情况是,您有一个具有distinct的查询,您将失去性能。试着在数据库中执行这个查询,你们会看到它要运行多长时间。但当我单独在配置单元中尝试这个查询时,它工作得很好,尽管执行起来需要一个小时。所以我猜光标有问题。是否存在高值或其他限制?发生的情况是,您有一个具有distinct的查询,您将失去性能。尝试在数据库中执行此查询,您将看到要运行多长时间。