简单计数查询需要花费相当长的时间才能完成。 我在做错什么吗?
@api.multi
def affect_sku(self):
_logger.info("running affect_sku")
Product = self.env['product.product']
_logger.info("Model ::: %s" % Product)
product_ids = Product.search([('active', '=', True), ('default_code', '=', '')])
_logger.info("Les Produits ::: %s " % product_ids)
if product_ids:
for product_id in product_ids:
_logger.info("Product id : %s" % product_id)
product = Product.browse(product_id.id)
_logger.info("Old Product default code : %s" % product.default_code)
x = self.randomStringDigits(13)
y = self.env['product.product'].search([('active', '=', True), ('default_code', '=', x)])
_logger.info("y = %s" % y)
while y :
x = self.randomStringDigits(13)
y = self.env['product.product'].search([('active', '=', True), ('default_code', '=', x)])
product.default_code = x
_logger.info("SKU de %s : %s" % (product.id, product.default_code))
(如果来自bigquery的人听到此消息: 工作编号:southamerica-east1.bquxjob_6a6df24d_16dfdbe0b54)
答案 0 :(得分:0)
如注释中所述,有多种原因导致查询在BigQuery中运行缓慢的原因-如果您的表是外部表,也可能会引起问题。如果时间安排对您很关键,并且查询非常简单,则您可能需要考虑使用Cloud SQL(这是一个实时数据库)。
BigQuery通常用于对非常大的数据集进行较大且更复杂的查询。如果您有支持包,则可能需要与Google Cloud支持团队联系以查询查询,以了解其运行如此缓慢的原因。
如果您只想知道行数,另一种解决方法是查询元数据:
SELECT table_id, row_count, size_bytes
FROM `PROJECT_ID.DATASET.__TABLES__` where table_id = 'your_table'