亿级别G级别文本数据去重

文件总行数 字节数 去重后行数

[root@d mongoexport]# wc -l superpub-ask-question.csv
126530681 superpub-ask-question.csv
[root@d mongoexport]# awk '!a[$0]++{print $0}' superpub-ask-question.csv | wc -l
63657205
[root@d mongoexport]# head -5 superpub-ask-question.csv
question
用海容模块建大棚成本高不高??
海容模块建房在南方适合吗?
用海容模块建房、墙体不都是泡沫嘛?后期怎么处理呢?
融资公司担保公司律师师事务所联合诈骗 亚洲创金资本有限公司,另一家担保公司,项目数据分析律师事务
[root@d mongoexport]# tail -5 superpub-ask-question.csv
长沙理工大学成考几月收学费
长沙理工大学成考几月收学费
长沙理工大学成考几月收学费
成都文理学院金堂校区专科和洪河校区专套本哪个好?
福州中亭街哪家店有卖职业装?
[root@d mongoexport]# ll -ash
total 7.3G
12K drwxr-xr-x 2 root root 12K Dec 17 15:10 .
4.0K drwxr-xr-x 4 root root 4.0K Nov 29 15:09 ..
205M -rw-r--r-- 1 root root 205M Dec 17 14:26 question.txt
7.1G -rw-r--r-- 1 root root 7.1G Dec 17 11:18 superpub-ask-question.csv

[root@d mongoexport]# cat superpub-ask-question.csv -n | tail -5
126530677 长沙理工大学成考几月收学费
126530678 长沙理工大学成考几月收学费
126530679 长沙理工大学成考几月收学费
126530680 成都文理学院金堂校区专科和洪河校区专套本哪个好?
126530681 福州中亭街哪家店有卖职业装?
[root@d mongoexport]#

209044 -rw-r--r-- 1 root root 214059578 Dec 17 14:26 question.txt
7358204 -rw-r--r-- 1 root root 7534793787 Dec 17 11:18 superpub-ask-question.csv

Total count:[126000000] Unique count:[66566614] FreeMemory:[372555496] ..
Total count:[126530684] Unique count:[66843173] FreeMemory:[369157728] ..
Total cost:[108852] ms ..

[root@d TestCardinality]# java -jar target/bigdata-1.0-SNAPSHOT-jar-with-dependencies.jar /data/bigdata/mongoexport/superpub-ask-question.csv -Xms10M -Xmx10M
Total count:[1000000] Unique count:[539926] FreeMemory:[420330832] ..
Total count:[2000000] Unique count:[1081544] FreeMemory:[470348776] ..

Total count:[126000000] Unique count:[66566614] FreeMemory:[367467784] ..
Total count:[126530684] Unique count:[66843173] FreeMemory:[364070000] ..
Total cost:[54606] ms ..
[root@d TestCardinality]#

126530681 superpub-ask-question.csv
[root@d mongoexport]# awk '!a[$0]++{print $0}' superpub-ask-question.csv | wc -l
63657205

Total count:[126530684] Unique count:[66843173] FreeMemory:[369157728] ..

误差比
总记录数

(126530684-126530681)/126530681=2.3709664535829063e-8

去重记录数

(66843173-63657205)/63657205=0.05004882008250284

python  list  set  去重后的文件

[root@d mongoexport]# cat superpub-ask-question.csv-distinct -n |tail
54390018 眼睛扎进一枚小铁屑,如果去厦门医院看要多少钱,现在不会痛能过几天去看吗,已经有六七天了
54390019 幻想神域镰刀配法书怎么样
54390020 自开票系统客户端打开提示伺服器配置界面,,然后到文件夹启动一下就提示重新注册了,怎么解决啊,里面的
54390021 室内的绿萝,在没有浇水的情况下,为什么会有水滴呢?
54390022 我告知冷的,可我的理论知识一点都不会,我现在该怎么办啊?
54390023 实木复合门复合的味道对人体有害吗
54390024 做现磨豆浆要做配个什么样的小吃卖比较好啊?
54390025 怎样在画图工具里打出来点阵字体,就是字占小格子的那种形式
54390026 帽子正着戴好好还是反着戴好
54390027 肛周脓肿缩小成局部皮下小硬核,请问还[root@d mongoexport]#

3.4G -rw-r--r-- 1 root root 3.4G Dec 17 16:46 superpub-ask-question.csv-distinct
[root@d selfPlatformAskAnswerProjeect]# cd ../mongoexport/
[root@d mongoexport]# ll -as
total 11066932
12 drwxr-xr-x 2 root root 12288 Dec 17 15:10 .
4 drwxr-xr-x 5 root root 4096 Dec 17 16:29 ..
4 -rw-r--r-- 1 root root 133 Nov 29 17:47 diskRoomMonitor.py
209044 -rw-r--r-- 1 root root 214059578 Dec 17 14:26 question.txt
7358204 -rw-r--r-- 1 root root 7534793787 Dec 17 11:18 superpub-ask-question.csv
3499664 -rw-r--r-- 1 root root 3583648979 Dec 17 16:46 superpub-ask-question.csv-distinct
[root@d mongoexport]# awk '!a[$0]++{print $0}' superpub-ask-question.csv-distinct | wc -l
54390027
[root@d mongoexport]# wc -l superpub-ask-question.csv-distinct
54390026 superpub-ask-question.csv-distinct
[root@d mongoexport]#

Total count:[53000000] Unique count:[53246465] FreeMemory:[362177968] ..
Total count:[54000000] Unique count:[54312366] FreeMemory:[390427384] ..
Total count:[54390027] Unique count:[54680098] FreeMemory:[356065008] ..
Total cost:[44043] ms ..

误差比
总记录数

0

去重记录数

(54680098-54390027)/54390027=0.005333165214277243

亿级别G级别文本数据去重的更多相关文章

  1. C#大数据文本高效去重

    C#大数据文本高效去重 转载请注明出处 http://www.cnblogs.com/Huerye/ TextReader reader = File.OpenText(@"C:\Users ...

  2. C#实现大数据量TXT文本数据快速高效去重

    原文 C#实现大数据量TXT文本数据快速高效去重 对几千万的TXT文本数据进行去重处理,查找其中重复的数据,并移除.尝试了各种方法,下属方法是目前尝试到最快的方法.以下代码将重复和不重复数据进行分文件 ...

  3. Python之读写文本数据

    知识点不多 一:普通操作  # rt 模式的 open() 函数读取文本文件 # wt 模式的 open() 函数清除覆盖掉原文件,write新文件 # at 模式的 open() 函数添加write ...

  4. Linux基础篇,文本数据的比较与排序:sort、uniq、comm、diff

    一.sort sort命令用于将文本文件内容以行排序 sort [选项参数] [-o<输出文件>] [-t<分隔字符>] [+<起始栏位> -<结束栏位> ...

  5. NLP相关问题中文本数据特征表达初探

    1. NLP问题简介 0x1:NLP问题都包括哪些内涵 人们对真实世界的感知被成为感知世界,而人们用语言表达出自己的感知视为文本数据.那么反过来,NLP,或者更精确地表达为文本挖掘,则是从文本数据出发 ...

  6. hadoop mapreduce实现数据去重

    实现原理分析: map函数数将输入的文本按照行读取,   并将Key--每一行的内容   输出    value--空. reduce  会自动统计所有的key,我们让reduce输出key-> ...

  7. java 两个csv文件数据去重

    1.pom.xml配置 <dependency> <groupId>commons-io</groupId> <artifactId>commons-i ...

  8. MapReduce将HDFS文本数据导入HBase中

    HBase本身提供了很多种数据导入的方式,通常有两种常用方式: 使用HBase提供的TableOutputFormat,原理是通过一个Mapreduce作业将数据导入HBase 另一种方式就是使用HB ...

  9. shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中

    shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中 利用shell脚本将文本数据导入到mysql中 需求1:处理文本中的数据,将文本中的数据插入到mys ...

随机推荐

  1. CentOS 6.5在grub界面下更改root密码

    想要更改CentOS 7 root的密码或者忘记了root的密码的时候可以在grub界面下更改root的密码. 百度了很多内容,更多方法都是适用于centos6及以前版本的,终于找到一个可以的. 1. ...

  2. 【Java面试题】55 说说&和&&的区别。

    &和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false. ...

  3. 【java 类加载的深入研究1】loadClass()的研究

    1.开门见山 以前曾经看到过一个java的面试题,当时觉得此题很简单,可是自己把代码运行起来,可是结果并不是自己想象的那样.题目如下: class SingleTon { private static ...

  4. CSS导入使用及引用的两种方法

    方法一<link rel="stylesheet" type="text/css" href="test.css"> 方法二&l ...

  5. Spring-JDBC配置

    以C3P0连接池为例:由于C3P0是第三方,我们无法使用注解将其定义为bean,因此需要在applicationContext.xml中配置: <!-- 导入配置文件 --> <co ...

  6. strusts annotation

    也叫Zero Configuration(零配置),它省去了写xml文件的麻烦,可以直接在类叫进行配置,不用在java文件和xml文件中来回切换. 1.Action级的注解 @ParentPackag ...

  7. Asp.Net实现FORM认证的一些使用技巧(必看篇)

    最近因为项目代码重构需要重新整理用户登录和权限控制的部分,现有的代码大体是参照了.NET的FORM认证,并结合了PORTAL KITS的登录控制,代码比较啰嗦,可维护性比较差.于是有了以下的几个需求( ...

  8. ubuntu 安装source insight

    1. 首先安装wine sudo apt-get install wine 2.下载source insight 安装包(.exe) 3,将安装包放到已知的目录下. 4.在终端进行安装,wine Si ...

  9. HBase表的架构原理

    HBase总体架构图 Hbase Table的基本单位是Region,一个Table相应多个Region.Table层级关系例如以下: Table       (HBase table)     Re ...

  10. Javascript 字符串替换

    <!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content=& ...