Я бы хотел найти алгоритмы дедупликации данных, в основном для поиска дубликатов файлов. Похоже, первым шагом является идентификация файлов с одинаковыми отметками времени, размерами и именами файлов. Я могу сделать контрольную сумму MD5 для этих файлов и сравнить. В дополнение к этому можно сравнивать содержимое файлов. Чего еще я должен смотреть?Алгоритмы дедупликации данных
ответ
У вас есть метаинформация ОС (размер и временные метки). Другая метаинформация включает разрешения. Вы можете сравнить информацию inode и dnode, но это мало значит.
У вас есть сводка (контрольная сумма).
У вас есть байтовые байты.
Что еще может быть? Вы просите другие резюме? Сводка менее информативна, чем байтовые данные. Но вы можете легко придумать множество других резюме. Сводка полезна только в том случае, если вы ее где-то сохраните, чтобы не перекомпилировать ее все время.
Если вы хотите сохранить резюме для «основной» копии, вы можете придумать любую сводку, которую хотите. Количество строк, количество букв «e», средняя длина строки, что-то потенциально интересное.
Есть продукты, доступные для этого. Найдите дубликат детектив файлов. Он может совпадать по имени, метке времени, md5 и другим алгоритмам
Md5 имеет проблемы столкновения (два файла с таким же md5 еще может иметь различное содержание.)
Если выполнить SHA-1 хэш каждого файла и сравнить хэши, только файлы с точно таким же содержанием будет иметь тот же хеш. Период.
Это также помогает, не обращая внимания, есть ли они разные имена, даты изменения и т.д.
Некоторые люди идут лишнюю милю и использовать SHA-256, но это действительно не нужно. Большинство коммерческих устройств дедупликации полагаются на SHA-1 (также называемый SHA-160).
Если вы используете SHA-1 для сравнения файлов, вам ничего не нужно.
Я знаю это, потому что я работал с разными системами и поставщиками дедупликации в течение ряда лет, и я также написал пример системы дедупликации.
- 1. Алгоритмы дедупликации записей (linkage)
- 2. VB.Net - эффективный способ дедупликации данных
- 3. MongoDB агрегации многомерных данных/дедупликации
- 4. Использование машинного обучения для дедупликации данных
- 5. Алгоритм дедупликации данных для большого числа контактов
- 6. Алгоритмы: бинаризация данных
- 7. Алгоритмы и структуры данных
- 8. Алгоритмы сжатия данных
- 9. Логика алгоритма дедупликации
- 10. Python список дедупликации кортежей
- 11. Aerospike как кеш дедупликации
- 12. дедупликации двумя колоннами
- 13. Выход дедупликации SimHash в MapReduce
- 14. Структура данных и алгоритмы сложности
- 15. Параллельные алгоритмы и структуры данных
- 16. Структура данных и алгоритмы java
- 17. Сортировка алгоритмы для уникальных данных
- 18. Алгоритмы для обновления реляционных данных
- 19. Алгоритмы масштабирования данных в matlab
- 20. Строка дедупликации особенность Java 8
- 21. Ruby дедупликации и экземпляры отслеживания
- 22. Исправлена ошибка о массиве дедупликации
- 23. Алгоритмы
- 24. Алгоритмы синхронизации
- 25. Лучший способ использования словаря для дедупликации?
- 26. Использование SQL для дедупликации, ВЫБРАТЬ аналогичные поля
- 27. Есть ли эффективный алгоритм для нечеткой дедупликации списков строк?
- 28. Queue Алгоритмы
- 29. Алгоритмы сравнения данных трехмерного сигнала от акселерометров
- 30. Алгоритмы поиска для основных баз данных
Это не совсем правильно: SHA-1, дающий всего 2^160 возможных хэшей, безусловно, делает его очень маловероятным *, чтобы страдать от столкновения, но на самом деле невозможно. Тем не менее, обычно бывает, что только сравнение хэшей даст вам хорошие результаты скорее быстрее, чем байты, поэтому +0 в целом. –