之前在“Vertica 安装,建库,新建测试用户并授予权限,建表,入库”这篇文章也简单介绍过入库部分的内容。

但之前测试用例若用于生产环境有明显的局限性:

1.是用dbadmin管理员用户入库的。

2.没有建立和指定入库专用资源池。

现在我们需要规范下入库,用普通业务用户test进行入库测试,并指定入库资源池load_pool。

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 业务用户指定资源池加载数据的更多相关文章

  1. js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符

    js中对arry数组的各种操作小结   最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...

  2. Tomcat启动时加载数据到缓存---web.xml中listener加载顺序(例如顺序:1、初始化spring容器,2、初始化线程池,3、加载业务代码,将数据库中数据加载到内存中)

    最近公司要做功能迁移,原来的后台使用的Netty,现在要迁移到在uap上,也就是说所有后台的代码不能通过netty写的加载顺序加载了. 问题就来了,怎样让迁移到tomcat的代码按照原来的加载顺序进行 ...

  3. datagrid 根据指定参数重新加载数据

    $('#statisticalRecordList').datagrid('reload',{ start_date:$('#dd1').datebox('getValue'), end_date: ...

  4. AppCan学习笔记----关闭页面listview动态加载数据

    AppCan页面关闭 AppCan 的页面是由两个HTML组成,如果要完全关闭的话需要在主HTML eg.index.html中关闭,关闭方法:appcan.window.close(-1); 管道 ...

  5. Flexigrid从对象中加载数据

    (有问题,在找…………) Flexigrid是用来动态加载数据的一种比较好(老)的Jquery表插件,然后有些时候,我们需要其从本地或者jQuery对象中加载数据,比如有这么个需求,页面显示中有两个表 ...

  6. java攻城狮之路(Android篇)--widget_webview_metadata_popupwindow_tabhost_分页加载数据_菜单

    一.widget:桌面小控件1 写一个类extends AppWidgetProvider 2 在清单文件件中注册: <receiver android:name=".ExampleA ...

  7. ListView用法及加载数据时的闪烁问题和加载数据过慢问题

    ListView介绍及添加数据时的闪烁问题 1.     ListView类 1.1 ListView常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示 ...

  8. infinite-scroll插件无限滚动加载数据的使用

    网上对于infinite-scroll插件使用的例子不多.但由于它的出现,鼓吹了瀑布流形式的页面展示方式,所以不得不了解了解这种新的分页方式. 官网上有对infinite-scroll的详细描述,但一 ...

  9. selenuim和phantonJs处理网页动态加载数据的爬取

    一.图片懒加载 什么是图片懒加载? 案例分析:抓取站长素材http://sc.chinaz.com/中的图片数据 #!/usr/bin/env python # -*- coding:utf-8 -* ...

随机推荐

  1. iPhone Anywehre虚拟定位提示“后台服务未启动,请重新安装应用后使用”的解决方法

    问题描述: iPhone越狱了,之后在Cydia中安装Anywhere虚拟定位,但是打开app提示:后台服务未启动,请重新安装应用后使用. 程序无法正常使用... 解决方法: 打开Cydia-已安装, ...

  2. Android 6.0 权限知识学习笔记

    最近在项目上因为6.0运行时权限吃了亏,发现之前对运行时权限的理解不足,决定回炉重造,重新学习一下Android Permission. 进入正题: Android权限 在Android系统中,权限分 ...

  3. AES加密

    package com.edu.hpu; import java.math.BigInteger; import java.security.MessageDigest; import java.se ...

  4. C#多线程之线程同步篇3

    在上一篇C#多线程之线程同步篇2中,我们主要学习了AutoResetEvent构造.ManualResetEventSlim构造和CountdownEvent构造,在这一篇中,我们将学习Barrier ...

  5. 【详细教程】论android studio中如何申请百度地图新版Key中SHA1值

    一.写在前面 现在越来越多的API接口要求都要求提供我们的项目SHA1值,开发版目前还要求不高,但是发布版是必定要求的.而目前定位在各大APP中也较为常见,当下主流的百度地图和高德地图都在申请的时候会 ...

  6. java 线程 Lock 锁使用Condition实现线程的等待(await)与通知(signal)

    一.Condition 类 在前面我们学习与synchronized锁配合的线程等待(Object.wait)与线程通知(Object.notify),那么对于JDK1.5 的 java.util.c ...

  7. ESLint的使用笔记

    原文地址:https://csspod.com/getting-started-with-eslint/?utm_source=tuicool&utm_medium=referral 在团队协 ...

  8. Android studio使用git教程

    ①下载Git工具,配置到Android studio中 http://git-scm.com/downloads ------------------------------------------- ...

  9. 如何开发FineReport的自定义控件?

    FineReport作为插件化开发的报表软件,有些特殊需求的功能需要自己开发,开发的插件包帆软官方有提提供,可以去帆软论坛上找,本文将主要介绍如何开发一个自定义控件,这里讲讲方法论. 第一步:实例化一 ...

  10. ABP框架理论研究总结(典藏版)

    目前,我已经完成了Module-Zero的翻译,请查看我的<Module-Zero学习目录>. 到现在为止,使用ABP框架开发正式项目已经3个月有余了,期间翻阅了大量文档资料,包括ABP官 ...