Vertica 8和 Hadoop 集群的互操作性已经很不错的, 但这块肯定是Vertica研发的重点, 将来可能还有较大的变动. Vertica 集群 和 Hadoop 集群的两种布局方式 集群布局 描述 许可证 支持Vertica for SQL on Hadoop特性 共享集群 Vertica 节点部署在 Hadoop 所有节点或部分节点上 Vertica for SQL on Hadoop 许可证 支持 分离集群 Vertica 集群和 Hadoop 分属不同的集群 社区版或Premiu…
背景 谈到负载均衡, 对于数据库集群需要区分几个概念: 运算的负载均衡, Vertica 本身是 MPP 数据库, SQL 操作自动会利用多台机器来加快处理速度. 数据库连接的负载均衡, Vertica 和 Teradata 一样都是无主节点的架构, 这种架构允许客户端连接任意一个节点, 连接后将由这个节点负责和客户端交互. 数据库连接的 Fail over, 这个概念不同于会话 node 的负载均衡. 对于多数数据库, 数据库连接字符串(比如 JDBC)只能设定一个 IP 地址, 如果这个 I…
Hadoop的本地模式为Hadoop的默认模式,不需要启用单独进程,直接可以运行,测试和开发时使用. 在<啃掉Hadoop系列笔记(02)-Hadoop运行环境搭建>中若环境搭建成功,则直接可以使用本地模式. 在这里我们运行官方的两个案例 1.官方grep案例 1)在hadoop-2.7.2文件夹下面创建一个input文件夹…
传送门 C#互操作系列文章: C# 互操作性入门系列(一):C#中互操作性介绍 C# 互操作性入门系列(二):使用平台调用调用Win32 函数 C# 互操作性入门系列(三):平台调用中的数据封送处理 C# 互操作性入门系列(四):在C#中调用COM组件 本专题概要: 引言 平台调用 C++ Interop(互操作) COM Interop(互操作) 一.引言 这个系列是在C#基础知识中遗留下来的一个系列的,因为在C# 4.0中的一个新特性就是对COM互操作改进,然而COM互操作性却是.NET平台…
Vertica 性能非常好, 平时基本不会碰到性能问题, 即使碰到, 优化也很容易, 而且效果往往会很好. ======================优化工具====================== 1. explain 命令. 在一个大 SQL 执行之前, 使用 profile 来查看资源的预期消耗. veritica 执行计划除了有普通文本格式, 还有 graphviz 格式的文本输出, 可以使用一些 graphviz viewer网站或工具将这些文本以流程图的形式呈现. 比如这个网站…
===========================================对象名称可以长到128字符===========================================1. Vertica 中字段名/表名/视图名/projection名/schema名, 名称最长达128个字节, 所以我们不用费尽心思缩写表名和字段名. 2. Vertica中的名称在catalog系统表能区分出大小写, 但使用的时候是大小写不铭感的. 在Oracle中, 因为表名不能超过30个字符,…
参考 https://thisdataguy.com/2015/01/05/vertica-some-uses-of-sequences/ 在 vertica 中有三种定义 identity 字段的方法, 分别是使用 AUTO_INCREMENT 或 IDENTITY 或 sequence. 简单对比: AUTO_INCREMENT 同 SQL Server 的概念一样, sequence 和 Oracle 的概念是一样. AUTO_INCREMENT 或 IDENTITY 字段都是直接在表定义…
本文仅涉及 Vertica 导入导出本地文件, 以及两个 Vertica 集群相互导出, 不涉及 Vertica 和 hdfs/Hive 导入导出和互操作. copy 数据导入工具 copy 命令无疑是最常用的导入工具了, 它是Vertica的bulk copy工具, 性能非常好. 可以直接从文本文件或者压缩文件导入数据, 支持的压缩格式有: BZIP | GZIP | LZO | UNCOMPRESSED 支持的文件格式有: csv | FIXEDWIDTH | json | ORC | pa…
Vertica 表发生死锁后, 通过下面3个查询即可解锁. --步骤1: 找到被锁表的 transaction_idselect transaction_id, t.* from v_monitor.locks t; --步骤2:根据 transaction_id 获得 session_id, 这一步需要登录账号有较高的权限, 否则会差不到对应的sessionselect session_id,t.* from v_monitor.sessions twhere transaction_id i…
Vertica 有两个数据分布的概念, segmentation 和 partition, 至少有下面几个区别: 1.目的方面:segmentation 解决各节点数据倾斜问题, 适用于木桶原理, 数据量大的那个节点将会拖慢整个查询. partition 主要解决的是数据删除和空间回收问题. 列式数据库删除数据的代价较大. 相比一条一条记录的删除动作, 删除整一个partition 的代价要小得多(其实一个partition就是一个文件). 当然一般情况下,分区也会在一定程度上改善查询效率. 2…