Vertica 业务用户指定资源池加载数据
之前在“Vertica 安装,建库,新建测试用户并授予权限,建表,入库”这篇文章也简单介绍过入库部分的内容。
但之前测试用例若用于生产环境有明显的局限性:
1.是用dbadmin管理员用户入库的。
2.没有建立和指定入库专用资源池。
现在我们需要规范下入库,用普通业务用户test进行入库测试,并指定入库资源池load_pool。
- 1.创建业务用户test和测试表t_jingyu
- 2.创建入库专用load_pool资源池并赋权给业务用户test
- 3.准备入库脚本loadData.sh和入库文件sourceData.dat
- 4.赋予业务用户test入库文件sourceData.dat所在目录/tmp的权限
- 5.调用入库脚本入库数据
1.创建业务用户test和测试表t_jingyu
创建业务用户test
```
CREATE USER test IDENTIFIED BY 'testpwd';
CREATE SCHEMA test AUTHORIZATION test;
```
创建测试表t_jingyu
```
vsql -Utest -wtestpwd
create table t_jingyu(
col1 int,
col2 varchar,
col3 timestamp not null)
PARTITION BY (date_part('doy', t_jingyu.col3));
<h1 id="2">2.创建入库专用load_pool资源池并赋权给业务用户test</h1>
## 2.1 创建入库专用load_pool资源池 ##
使用dbadmin用户登录数据库创建load_pool资源池:
CREATE RESOURCE POOL load_pool PRIORITY 2 RUNTIMEPRIORITY MEDIUM PLANNEDCONCURRENCY 12 MAXCONCURRENCY 5 QUEUETIMEOUT NONE;
因为入库任务往往是很耗费资源,为避免争抢过度general资源池的资源,所以就单独设定一个资源池load_pool用来入库,这样只需要限制这个资源池的总资源就可以了。
## 2.2 赋给业务用户test使用资源池的权限 ##
默认业务用户test是没有使用新建资源池的权限,需要赋予其使用权。
GRANT USAGE ON RESOURCE POOL load_pool TO test;
<h1 id="3">3.准备入库脚本loadData.sh和入库文件sourceData.dat</h1>
## 3.1 准备入库脚本loadData.sh ##
/tmp/loadData.sh
!/bin/bash
loading data
vsql -U test -w testpwd <<-EOF 2>&1
\timing
set role all;
set session resource_pool=load_pool;
copy test.t_jingyu(
col1,
col2,
col3
)
from '$1' on v_testdb_node0001
delimiter E'|' NULL '' NO ESCAPE DIRECT;
EOF
## 3.2 准备入库文件sourceData.dat ##
/tmp/sourceData.dat
1|jingyu|2014-06-19
2|xiaobei|2014-06-20
3|alfred|2014-05-20
4|martin|2014-06-20
5|靖宇|2014-06-19
<h1 id="4">4.赋予业务用户test入库文件sourceData.dat所在目录/tmp的权限</h1>
注:这里测试举例入库文件是存放在/tmp目录,实际的存放目录,同样需要有良好的读写性能。
CREATE LOCATION '/tmp' NODE 'v_testdb_node0001' USAGE 'USER';
GRANT READ ON LOCATION '/tmp' TO test;
<h1 id="5">5.调用入库脚本入库数据</h1>
sh /tmp/loadData.sh /tmp/sourceData.dat
脚本运行结果如下:
[dbadmin@vertica1 ~]$ sh /tmp/loadData.sh /tmp/sourceData.dat
Timing is on.
SET
Time: First fetch (0 rows): 23.649 ms. All rows formatted: 23.703 ms
SET
Time: First fetch (0 rows): 33.587 ms. All rows formatted: 33.612 ms
Rows Loaded
5
(1 row)
Time: First fetch (1 row): 116.278 ms. All rows formatted: 116.461 ms
至此,Vertica 利用普通业务用户test,指定专有入库资源池load_pool,测试入库数据成功。
Vertica 业务用户指定资源池加载数据的更多相关文章
- js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符
js中对arry数组的各种操作小结 最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...
- Tomcat启动时加载数据到缓存---web.xml中listener加载顺序(例如顺序:1、初始化spring容器,2、初始化线程池,3、加载业务代码,将数据库中数据加载到内存中)
最近公司要做功能迁移,原来的后台使用的Netty,现在要迁移到在uap上,也就是说所有后台的代码不能通过netty写的加载顺序加载了. 问题就来了,怎样让迁移到tomcat的代码按照原来的加载顺序进行 ...
- datagrid 根据指定参数重新加载数据
$('#statisticalRecordList').datagrid('reload',{ start_date:$('#dd1').datebox('getValue'), end_date: ...
- AppCan学习笔记----关闭页面listview动态加载数据
AppCan页面关闭 AppCan 的页面是由两个HTML组成,如果要完全关闭的话需要在主HTML eg.index.html中关闭,关闭方法:appcan.window.close(-1); 管道 ...
- Flexigrid从对象中加载数据
(有问题,在找…………) Flexigrid是用来动态加载数据的一种比较好(老)的Jquery表插件,然后有些时候,我们需要其从本地或者jQuery对象中加载数据,比如有这么个需求,页面显示中有两个表 ...
- java攻城狮之路(Android篇)--widget_webview_metadata_popupwindow_tabhost_分页加载数据_菜单
一.widget:桌面小控件1 写一个类extends AppWidgetProvider 2 在清单文件件中注册: <receiver android:name=".ExampleA ...
- ListView用法及加载数据时的闪烁问题和加载数据过慢问题
ListView介绍及添加数据时的闪烁问题 1. ListView类 1.1 ListView常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示 ...
- infinite-scroll插件无限滚动加载数据的使用
网上对于infinite-scroll插件使用的例子不多.但由于它的出现,鼓吹了瀑布流形式的页面展示方式,所以不得不了解了解这种新的分页方式. 官网上有对infinite-scroll的详细描述,但一 ...
- selenuim和phantonJs处理网页动态加载数据的爬取
一.图片懒加载 什么是图片懒加载? 案例分析:抓取站长素材http://sc.chinaz.com/中的图片数据 #!/usr/bin/env python # -*- coding:utf-8 -* ...
随机推荐
- C语言 · 奇偶判断
问题描述 能被2整除的数称为偶数,不能被2整除的数称为奇数.给一个整数x,判断x是奇数还是偶数. 输入格式 输入包括一个整数x,0<=x<=100000000. 输出格式 如果x是奇数,则 ...
- Android性能优化之利用Rxlifecycle解决RxJava内存泄漏
前言: 其实RxJava引起的内存泄漏是我无意中发现了,本来是想了解Retrofit与RxJava相结合中是如何通过适配器模式解决的,结果却发现了RxJava是会引起内存泄漏的,所有想着查找一下资料学 ...
- Android调用微信登陆、分享、支付
前言:用了微信sdk各种痛苦,感觉比qq sdk调用麻烦多了,回调过于麻烦,还必须要在指定包名下的actvity进行回调,所以我在这里写一篇博客,有这个需求的朋友可以借鉴一下,以后自己别的项目有用到也 ...
- 主成分分析(PCA)原理总结
主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一.在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用.一般我们提到降维最容易想到的算法就 ...
- [C#] C# 知识回顾 - 委托 delegate
C# 知识回顾 - 委托 delegate [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6031892.html 目录 What's 委托 委托的属性 ...
- mybatis_个人总结
在使用mybatis框架开发数据访问层的过程中,我在这段时间遇到很多细节问题困住我,在这里我来分享一下我遇到的坑,希望能帮到大家. 一.mybatis动态代理方式开发的规范: 1.注意在mybatis ...
- pdo的使用
PHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口. PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据. PDO随 ...
- 【踩坑速记】开源日历控件,顺便全面解析开源库打包发布到Bintray/Jcenter全过程(新),让开源更简单~
一.写在前面 自使用android studio开始,就被它独特的依赖方式:compile 'com.android.support:appcompat-v7:25.0.1'所深深吸引,自从有了它,麻 ...
- Android Studio —— 创建Menu菜单项
大多数android程序的右上角都会设置一个菜单按钮比如微信的界面右上角的加号. 这个需要在layout同级目录下新建文件夹命名为menu,再右击新建的menu新建xml文件:
- 项目游戏开发日记 No.0x00000
14软二杨近星(2014551622) ---恢复内容开始--- 2016-03-17 从开始迈进软件工程专业, 已经快两年了, 记得当初选择软件的理由是, 我要学去做东西, 我享受开发过程. 两年来 ...