代码克隆数据集BigCloneBench使用方法
因为科研需要要使用到BigCloneBench代码克隆数据集,经过各种教程查找大概知道怎么使用这个数据集了。其实我只想要的就是数据集中的克隆代码片段和克隆对的对应关系这些,但是github上的使用方法实在太难懂了,废话不多说,开始。
数据集下载
这是这个数据集项目的原地址,如果不用它的工具只要数据集的话不看也罢。
https://github.com/clonebench/BigCloneBench
从这个onedrive中下载第一个,解压得到bcb.h2.db和bcb.trace.db两个文件,其中bcb.h2.db就是包含代码克隆对信息的数据库文件,大概5个G多,还是挺大的。第三个dataset.tar.gz是代码数据集,也下载。
https://onedrive.live.com/?authkey=%21AP4orqFoZkFEnKo&id=root&cid=81D558668AEE46B5&qt=sharedby
查看数据集
下面的重点就是如何查看数据库中的信息
用到的是h2数据库(https://www.h2database.com/html/main.html),进入之后不要下载最新版本的包,反正我试过最新的打不开,然后摸索着安装了一个旧版本的(https://h2database.com/h2-2019-10-14.zip)。我是在windows环境下使用的,下载解压以后打开bin目录,双击h2.bat或者h2w.bat文件,会跳转到一个浏览器登陆界面。
其中的选项就如图,JDBC URL以jdbc:h2:开头,后面跟上下载的bcb.h2.db的实际路径,注意,最后文件名不要打全,要去掉.h2.db的后缀名,只保留bcb,然后点测试连接,能测试成功就可以点击连接进入数据库了。
进入数据库主要有用的就是这两个表,clones包含克隆对的具体信息,function是每个代码段的信息。
代码数据集
解压dataset.tar.gz,里面有三个文件夹default、sample、selected,与functions表中的ype对应