亿级别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. jquery -- onchange

    触发onchange 首先页面有一个input标签,并且已绑定onchange事件,如: 1 <input type="text" onchange="consol ...

  2. erlang 自定义函数的初步应用

    一.模块内调用 1> AA=fun(BB)-> io:format("this is test args ~s~n",[BB]) end.#Fun<erl_eva ...

  3. Session超时问题(AOP 过滤器)

    public class TimeoutAttribute : ActionFilterAttribute { public override void OnActionExecuting(Actio ...

  4. XML高速入门

    XML是什么 Extensible Markup Language 自己定义标签: 用来数据传输: 可扩展标记语言,是一种类似超文本标记语言的标记语言. 与HTML的比較: 1.不是用来替代HTML的 ...

  5. Bash Shell 里的各种括号

    天在 SegmentFault 上看到又有人问起关于Shell里各种括号的问题.对于很多玩Shell的人,括号是个很尴尬的问题,用起来没问题,说起来不明白,我在这里总结一下Bash Shell几种括号 ...

  6. 关于js中定时器的返回值问题

    在js中,我们常常会用到定时器来处理各种各样的问题,当我们需要清除定时器的时候,我们常常会定义一个值来接受定时器的返回值,然后再把定义好的这个值写到清除定时器的括弧后面,如: var times = ...

  7. 什么叫做hack

    由于不同的浏览器,比如Internet Explorer 6,Internet Explorer 7,Mozilla Firefox等,对CSS的解析认识不一样,因此会导致生成的页面效果不一样,得不到 ...

  8. Mybatis中insert

    <insert id="insert" parameterType="Currency"> INSERT INTO YZ_SECURITIES_CU ...

  9. IE8及以下的数组处理与其它浏览器的不同

    在解决search-box的bug时,由于IE8-的数组处理与其它浏览器的不同,而导致报错. 示例:arr=[1,3,3,]; 当数组的最后是一个逗号时: IE9+默认 arr=[1,3,3];也就是 ...

  10. Kotlin——初级篇(一):最详细的环境搭建

    众所周知,Kotlin出来已经良久了.Kotlin有着众多优势,不管是用于Android开发中,还是Java开发,都能缩减很大的代码量,大大提高了工作效率.而小生本人也是才从忙碌的个工作中抽身出来,有 ...