ag娱乐平台
你好,游客 登录 注册
背景:
阅读新闻

Ubuntu环境使用TPC-DS工具生成测试数据

[日期:2019-04-14] 来源:Linux社区  作者:webDepOfQWS [字体:ag娱乐平台大 ]

1、下载工具

ag娱乐平台,此外,热点城市土地供应不足,症结在于工业用地盘活难度大。由于产能过剩、外需疲软,新经济成为转型方向,热点城市大片工业用地亟待盘活。但土地掌握在国企手里,若转向住宅,规划和用途管制的上位法横亘在面前,要么补缴巨额土地出让金(过去这些土地是无偿划拨的),还要自建生活配套;要么,到期后政府收回重新“招拍挂”。

1/8决赛的对阵抽签仪式将在欧洲当地时间12月12日下午进行,16支球队根据小组赛成绩分为两档。八个小组第一作为种子队,1/8决赛中先客后主面对各个小组第二的非种子队。同一足协下的球队和小组赛同组的球队抽签中会回避。1/8决赛的首回合将在欧洲时间2017年2月14日、15日、21日、22日进行,次回合在2017年3月7日、8日、14日、15日进行,届时胜者晋级1/4决赛。本赛季的欧冠决赛将在欧洲时间2017年6月3日在英国加的夫的千禧球场进行。谢尔豪胜负手一举逆转 苏耀国:井山瞬间崩盘  英国《每日电讯报》3月28日,原题:面对中国的全球雄心,世界是时候做出调整了 世界最长的桥是哪座?不是旧金山金门大桥,不是沙特的法赫德国王大桥,也不是斯堪的纳维亚半岛那种长到“越过地平线”的桥。迄今,它是京沪高速铁路线上的丹阳-昆山大桥,不短于102英里,横跨长三角,建成于2010年。它是英国最长桥伯明翰附近的布罗姆福德高架桥的29倍多。世界第二长大桥也在中国。天津特大桥绵延70多英里,属京沪铁路线的一部分,也建成于2010年。第三长桥也是中国的……世界最长的12座大桥中,不少于9座在中国,全都在过去10年左右修建。而美国最长的桥开通于1956年。

两种渠道

 a、官网(建议直接跳过~)

地址:/wwwc0b7tpcc0b7org/tpc_documents_current_versions/current_specifications.asp

在信息填写正确的情况下,无法下载。看网友的解答,需要用谷歌浏览器才能下载。尝试未果。

b、github上下载

地址: /githubc0b7com/gregrahn/tpcds-kit.git

ps:官方的包生成sql的时候会报错,上面这个大神已经修复。

2、编译

操作环境:Ubuntu 16.04

进入TPC-DS工具包所在目录,由于下载的是源码,需要编译后才能使用。

a、解压

unzip  tpcds-kit-master.zip

b、编译

编译之前请确认依赖环境ok

ubuntu:

1 sudo apt-get install gcc make flex bison byacc git

CentOS/RHEL:

1 sudo yum install gcc make flex bison byacc git
tpcds-kit-master/tools

make  -f  Makefile.suite

编译过程中报错:

make: yacc: Command not found。报错是因为yacc没有安装 。

安装yacc

sudo apt-get install -y byacc

再次编译

又报错对‘yy_create_buffer’未定义的引用。对C/C++不熟悉,搜索了一下也没有相关的解答。百思不得其解之下,换了个思路。可能是第一次编译报错生成的错误文件对第二次编译产生的影响。

于是删除解压后的目录,重新编译成功。

如果生成dsdgen和dsqgen且无报错,说明编译成功

ll *gen

 3、生成数据

第一次使用这个工具我是一脸懵比的。因为官方的文档特喵的根本看不懂。回想一下,你碰到不熟悉的Linux命令是怎么做的?man或者--help,对吧。这里也可以用--help。

先不着急生成数据,看一下帮助信息先。

./dsdgen  --help

  • DIR:数据存放目录。
  • SCALE:数据量,以GB为单位。
  • TABLE:生成哪张表的数据,一共有24张表哦。
  • PARALLEL:生成的数据一共分为多少份,一般生成TB级数据才会用到。
  •  CHILD:当前数据是第几份,与PARALLEL配对使用。
  • FORCE:强制写入数据。

常用的参数就上面几个。下面我们来生成1G包含所有表的数据。

./dsdgen  -scale 1 -dir ../data/

等待dsdgen程序正常退出后,1G数据需要2~3min左右,进入data目录查看生成的数据。

cd ../data

假如只想生成其中某一张表的数据呢?这就需要用到-table参数了,以web_returns表为例。

./dsdgen  -scale 1 -dir ../data -table web_returns

报错了,信息如下:

web_returns是子表,它是依赖于父表web_sales的。生成父表的时候也会同时生成子表,我们来验证一下。

./dsdgen  -scale 1 -dir ../data -table web_sales

说明一下,最终生成的数据量以少于scale值的。

dsdgen的用法暂时先总结到这里。

 4、生成SQL

查询SQL使用dsqgen生成,主要用于测试数据仓库的性能,一共99个。详细用法可以用--help查看帮助信息。这里不做介绍直接生成。

./dsqgen  -DIRECTORY ../query_templates/ -TEMPLATE "query1.tpl" -DIALECT netezza -FILTER Y > ../sql/query1.sql
  • -DIRECTORY:SQL模板的路径
  • -TEMPLATE:SQL模板的名称
  • -DIALECT:include query dialect defintions found in <s>.tpl
  • -FILTER:重定向到标准输出。

查看生成的SQL:

一共有99,每一个都要这样生成多费劲呀。来写个for循环一把生成所有的SQL。

shell版:

#!/bin/sh
for i in `seq 1 99`
do
./dsqgen  -DIRECTORY ../query_templates/ -TEMPLATE "query${i}.tpl" -DIALECT netezza -FILTER Y > ../sql/query${i}.sql
done

Python3版:

#coding:utf-8
import os
print("generate query sql")
for i in range(1,100):
    tpl = "query"+str(i)+".tpl"
    qsql = "query" +str(i) +".sql"
    #拼接命令
    cmd = "./dsqgen  -DIRECTORY ../query_templates/ "+"-TEMPLATE "+tpl+" -DIALECT netezza -FILTER Y > "+"../sql/"+qsql
    #print(cmd)
    #执行命令
    os.system(cmd)

去sql目录下查看刚才生成的SQL:

这种情况下还是shell更快一点。

5、总结

  1. 通过TPC-DS,可以生成指定量级的数据。
  2. 碰到报错不要慌,先google或bing,不要用某度,原因你懂的。
  3. TPC-DS基本用法已经总结完了,但是实际操作中还有很多问题,比如:
  • 我想要生成10T数据怎么搞?
  • 怎么判断生成的数据是否正确呢?
  • child和parallel怎么使用?
  • 数据和SQL生成完了怎么测试?
  • 。。。。。。

Linux公社的RSS地址/wwwc0b7linuxidcc0b7com/rssFeed.aspx

本文永久更新链接地址/wwwc0b7linuxidcc0b7com/Linux/2019-04/158099.htm

linux
相关资讯       TPC-DS 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
国安战苏宁海报创意足:历经磨砺 方能超越 格列兹曼妻子巴萨找房?西媒辟谣:完全是假消息 网上买花 也要警惕被“扎伤” 大坂直美当选WTA三月最佳球员 IW赛连胜强敌夺冠 海帅:比达尔要做手术短期缺阵 情绪将决定结果 观点:恒大到了统治崩塌的时候 争冠混乱出乎意料 飞利浦CEO何国伟:让人工智能渗透飞利浦所有产品 最新宣布!马杜罗:委内瑞拉货币要减5个零 印度宣布对进口太阳能电池征收25%的保障措施关税 比利时一城市强制露宿街头者避寒:不去庇护所拘留 特朗普前竞选顾问蠢“霸屏” 不配合调查这样叫嚣 10中2+篮下打铁!火箭最稳的输出送走了20+10
周小川:中国央行的同龄者 朴槿惠一审被判处有期徒刑24年 大基金资本局:3200亿芯片“国家队”浮出水面 怕大陆军力?台军:加速沱江舰量产 2025年完成3艘 世界卫生组织:全力预防埃博拉疫情进一步扩散 如果有人注册了“栟多多” 拼多多告不告对方侵权? 美学者:贸易冲突升级或将中美拖入修昔底德陷阱 还是因M503 台当局向多国媒体“投书抗议”装可怜 Airbnb扩大平台资源 进一步挑战酒店和旅游产业 叙军方:反政府武装计划使用化武嫁祸政府军 李嘉诚正式宣布退休 巴西大规模越狱事件致23死 武装组织炸开外墙
阿里巴巴战略投资汇通达45亿元 探索农村新零售 直击|罗永浩:大佬看完我们的产品 称苹果一定会抄袭 王大雷:失去一个很重要的球迷 全队现在很悲痛 地下期货黑洞调查 大乐透头奖2注1000万落2地 奖池升至61.47亿 意大利通过法案 禁未成年人使用电子博彩设备赌博 拍拍贷宣布成立区块链研究中心 盘前大涨逾18% 中赫国安筹建U13、U14青训梯队 面向全北京公开招募 “白番不败”怪圈依旧 柯洁发微博:真服我自己 马尔代夫总统宣布全国实行紧急状态 为期15天 尤文名将:我的帽子戏法早晚会来 这是努力的回报 美移民局对无证移民“先逮捕后问话” 被批违宪 英国劳埃德银行将禁止客户用信用卡购买比特币 ag娱乐平台