#database #data-cleaning
#База данных #очистка данных
Вопрос:
Необработанные данные хранятся в базе данных (несколько таблиц). это необходимо вручную проверить и исправить. Проверенные данные также должны храниться в базе данных вместе с необработанными данными. В таком случае, будет ли хорошей идеей создать две отдельные базы данных (например. raw_data и checked_data)? Или должна быть только одна база данных? Спасибо
Ответ №1:
Вообще говоря, намного проще работать в одном экземпляре, чем в нескольких экземплярах. Распределенные транзакции выполняются медленнее. Они требуют большего набора текста (всегда приходится добавлять ссылку на базу данных). Это вопрос не только удобства, но и целостности. Возможно, вы захотите убедиться, что данная запись находится либо в наборе НЕОБРАБОТАННЫХ данных, либо в наборе ОЧИЩЕННЫХ данных, но не в обоих. Проверка такого рода вещей более управляема в одной базе данных.
То, как вы организуете все в единой базе данных, в некоторой степени зависит от выбранного вами стиля СУБД и того, что она поддерживает. У вас может быть единственная схема (учетная запись пользователя) и использовать соглашение об именовании, такое как префикс, например RAW_TABLE_1 и CLEAN_TABLE_1. Или вы можете захотеть использовать разные схемы, которые позволят вам сохранить одно и то же имя таблицы, например RAW_USER.TABLE_1 и CLEAN_USER.ТАБЛИЦА_1. Оба подхода имеют преимущества. Всегда полезно иметь постоянное напоминание о том, работаем ли мы с необработанными или чистыми данными. С другой стороны, у нас могут быть инструменты или приложения, которые мы хотели бы использовать, которые ожидают обычных имен таблиц. Синонимы могут помочь в этом отношении.
Ответ №2:
Если ваши необработанные данные и проверенные данные будут очень большими, чем использовать только две разные базы данных
С помощью нормализации и процедур использования вы можете поддерживать их в одной базе данных.
Ответ №3:
Здесь нет рекомендуемого метода, кроме ваших собственных предпочтений. Вы можете хранить очищенные данные с необработанными данными в одной базе данных, но в разных таблицах, и может быть что-то вроде префикса raw_ к таблицам необработанных данных.
В противном случае у вас может быть отдельная база данных для каждого типа данных. Преимуществами было бы разделение, где недостатком было бы более дорогостоящее объединение и т.д., Если необходимо выполнить между этими двумя.