如何比较多个csv文件和数百万条记录?

时间:2014-06-23 17:09:03

标签: bigdata database-migration

我提供了两组csv文件,理论上应该是相同的,但由于某种原因,其中一组包含的数据多于另一组(csv。文件是来自crm系统的自动每周数据备份)。

理想情况下,我只需打开csv文件并执行vlookup并找到丢失的行(或&#34;额外的&#34;行)并开始调查它们的来源以及差异原因。< / p>

但是,这些文件很庞大,包含数百万行。你知道如何比较文件并找出它们有何不同之处?您可以推荐哪些应用程序(希望免费且易于使用)?我无法打开文件,因为我达到了Excel的行限制。

感谢任何帮助。谢谢!

3 个答案:

答案 0 :(得分:1)

我能够通过使用UltraEdit和UltraCompare来解决这个问题。 UltraCompare比较文件的能力令人惊叹。非常好用。

答案 1 :(得分:0)

您可以随时使用vi,nano等精简编辑器打开大文件。

它的极端选择,但我喜欢这些东西的awk,你可以使用awk来比较两个或更多的文件。

Example:

       awk '
            FNR==NR {
                    # file one use a key that need to match with file 2
                    from_file_one[$1] = $1
                    next
            }
            {
                    # file two check if file's two key has not matched with
                    # some of the keys in file one 
                    if(!($1 in hour)) {
                           print $1 "didn't match"
                    }
            } file1 file2 

答案 2 :(得分:0)

您可以将它们导入SQL服务器(或类似程序)并使用SQL(或类似语言)进行比较。

这可能不是最有说服力的选择,但有时最直接的路径是通过泥浆。