我正在运行类似于此的查询:
SELECT date, group, COUNT(a.user_id) as count
FROM (
SELECT user_id, DATE(timestamp) as date
FROM [db.log_2015_08]
GROUP EACH BY user_id, date) as a
JOIN EACH (
SELECT user_id, group
FROM [db.users]) as b
ON a.user_id = b.user_id
GROUP BY date, group
收到以下错误:
Error: Shuffle reached broadcast limit for table __I0 (broadcasted at least 137619698 bytes). Consider using partitioned joins instead of broadcast joins .
我一直在使用BigQuery,这对我来说是一个新的!这是一个非常大的联接,但我觉得我之前没有这个错误做过类似的事情。
答案 0 :(得分:1)
尝试将<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSection>
<section name="hibernate-configuration" type="NHibernate.cfg.ConfigurationSectionHandler, NHibernate "></section>
</configSection>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="dialect">NHibernate.Dialect.MsSql2008Dialect</property>
<property name="connection.driver_class">NHibernate.Driver.SqlServerCeDriver</property>
<property name="connection.connection_string">Data Source=(local);Initial Catalog=Learning;Integrated Security=True</property>
<property name="show_sql">true</property>
<mapping assembly="NHibernateBasics.Mapping"></mapping>
</session-factory>
</hibernate-configuration>
</configuration>
更改为GROUP EACH BY
。聚合不再需要GROUP BY
关键字,事实上,如果删除它,查询规划器可以更聪明一些。