Я должен ежедневно обновлять таблицы BigQuery строками из таблиц MySQL. Обычно я сравниваю максимальный идентификатор в обеих базах данных и получаю разные строки. Например, у меня есть TableBQ в BigQuery и TableM в Mysql, и они имеют одинаковую схему (столбцы с одинаковым именем и типом данных). Когда я делаю «SELECT MAX (ID) from», я получаю 1005 из TableM и 1003 из TableBQ, я делаю вывод, что TableBQ устарел, после чего я отправляю в TableBQ только строки с идентификаторами больше 1003. Это прекрасно работает с таблицами первичных ключей, но мне также необходимо обновить таблицы составных ключей.
Сегодня я вижу два решения:
1) худшее: вставлять всю таблицу (которая может иметь уже 16 миллионов строк) каждый день в BigQuery
2) не так плохо, но можно избежать: создайте первичный ключ и заставьте таблицу работать, как остальные
В моем случае мне нужно работать с двумя таблицами составных ключей, и одна из них была создана Wordpress: wp_term_relationships