Sybase到GreenPlum迁移的POC

应客户一次需求,去客户现场做了次GreenPlum的POC。

GreenPlum环境是

  •    1台master
  •    6台segment host,每个host上2个segment实例

不过GreenPlum是装在一个有hadoop并存的机器上的,硬件资源不是很充足。

整个过程有三部:数据导出、数据导入、Query性能评价

  • 数据导出

   迁移的对象从Sybase导出数据。

   这里主要的内容有三个:文字编码转码、导出速度、分隔符的选择

   原来Sybase的编码是CP936,也就是GBK,因为GP/PG的server都不支持CP936,打算转成默认的UTF-8数据。起先用linux的iconv,发现超过20M的文件,就会转码失败。好在后来用kettle转码比较正常。

  sybase的bcp导出数据,有些慢。刚好周末两天,开了多个终端,同时导出,计划七天的数据,两天就做完了。

   至于分隔符,理想的是不可见字符,当时对PG的转义没搞清楚,暂时用了^。数据大都是从业务系统过来的,不会输入这样的内容

  • 数据load

   因为GP的一个亮点就在于IO的分离和并行。数据load过程也能体验到这种效果,所以数据load也作为POC内容。

   导出数据的存放,先后用了三种方式

   1.数据放在master上,从master导入数据 非常慢

   2.数据散落在6个segment host上,使用gpfdist启动服务,速度大幅改善

   3.找了一台独立的机器,使用gpdist服务,因为IO并行做的好,速度是最理想的

load是用的外部表的方式

   insert into 实表 select * from 外部表;

产生的错误不多,低于万分之一。

  • query

   实际query测试了下,性能跟sybase差不多。

   主要原因是GP的硬件资源没有配置好。

   1) segment实例太少,CPU多核没有充分利用

   2) 内存资源不足,mem长时间都是0的

   3)通过gpcheckperf来看,磁盘的IO也是很差的,读的速度只有80M/s

而query本身的特征,也存在分表的可能性。

    

   

时间: 2024-09-20 17:50:56

Sybase到GreenPlum迁移的POC的相关文章

Deepgreen DB 是什么?

Deepgreen DB 全称 Vitesse Deepgreen DB,它是一个可扩展的大规模并行(通常称为MPP)数据仓库解决方案,起源于开源数据仓库项目Greenplum DB(通常称为GP或GPDB).所以已经熟悉了GP的朋友,可以无缝切换到Deepgreen. 它几乎拥有GP的所有功能,在保有GP所有优势的基础上,Deepgreen对原查询处理引擎进行了优化,新一代查询处理引擎扩展了: 优越的连接和聚合算法 新的溢出处理子系统 基于JIT的查询优化.矢量扫描和数据路径优化 下面简单介绍

解决系统从Oracle到Sybase的迁移

目的:解决系统从Oracle到Sybase的迁移. 命令纵览: C:\Documents and Settings\newuesr>isql -help Syntax Error in '-help'. usage: isql [-b] [-e] [-F] [-p] [-n] [-v] [-X] [-Y] [-Q] [-a display_charset] [-A packet_size] [-c cmdend] [-D database] [-E editor [-h header [-H h

从Sybase 12.x/15.x迁移到DB2的测试战略

本文将介绍在从 Sybase ASE 12.x/15.x 迁移到 DB2® 9.7.x/DB2 10.1.x 后需要遵循的http://www.aliyun.com/zixun/aggregation/8775.html">测试流程和方法.我们介绍的流程使您能够通过各种验证和确认流程执行成功的测试. 范围 验证范围 验证所有来源数据库 (Sybase) 对象是否已迁移到目标数据库 (DB2). 确认目标数据库的所有已迁移版本,确保 它们在结构和功能上与来源数据库等效. 假设 所有迁移前检查

从Sybase 12.x/15.x迁移到DB2的完整性检查指南

本文介绍验证从 Sybase ASE 12.x/15.x 迁移到 DB2 9.7.x/DB2 10.1.x 而得到的结果数据库的完整性时,应遵循的步骤.本文所介绍的流程将使您能够成功迁移到 DB2 for Linux®, UNIX®, and Windows®,这个流程包含数据库完整性检查. 概述 完整性检查是任何迁移流程的一个重要部分,因为它可确保来源和目标数据库对象是同步的.此流程不是一个分开或独立的流程,应该在迁移每个对象之后执行,使迁移流程更加安全,避免出现数据库不一致性的可能性. 这篇

Oracle数据如何迁移到GreenPlum

Oracle端表结构 SQL> select dbms_metadata.get_ddl('TABLE','TAB_ORA','ZWC') from dual; CREATE TABLE "ZWC"."TAB_ORA" (    "ID" NUMBER, "OWNER" VARCHAR2(30), "NAME" VARCHAR2(128), CONSTRAINT "PK_ID" P

[转载]聊聊Greenplum的那些事

原文   http://dbaplus.cn/news-21-341-1.html 聊聊Greenplum的那些事 李巍 2016-04-01 14:15:00 1024   开卷有益--作者的话    有时候真的感叹人生岁月匆匆,特别是当一个IT人沉浸于某个技术领域十来年后,蓦然回首,总有说不出的万千感慨.   笔者有幸从04年就开始从事大规模数据计算的相关工作,08年作为Greenplum 早期员工加入Greenplum团队(当时的工牌是"005",哈哈),记得当时看了一眼Gree

专访神州飞象高级数据库工程师赖伟:迁移不怕难,大象肚里能撑船

赖伟,神州飞象高级数据库工程师,多年关系数据库运维经验,长于PostgreSQL的调优和运维,具有丰富的数据库开发和异构数据库迁移经验. 赖伟说,在大象的肚子里,你总能找到那么一个方法帮你撑起一艘船来 9月24日,赖伟将参加在北京举办的线下活动,并做主题为<Sybase迁移PG的那些事>的分享.值此,他分享了工作经历和一些看法. 9月24日开源数据库企业应用实践PostgreSQL.Greenplum专场,点击这里>>>免费报名 以下为正文: 赖伟,曾经做过VB开发.ASP开

Sybase中创建与使用段

段(Segment)是数据库设备上磁盘空间的逻辑组合,它可以看作是指向一个或多个数据库设备的标签.利用段可以控制数据库对象的存放位置,可以将数据库对象分类存放到不同的段上. 设备与段之间的关系:多对多关系.一个设备上可以创建多个段,一个段也可以覆盖多个设备. 1.使用段的优点 a. 控制空间的使用:放在一个段上的数据库对象不会在段外增长: b. 提高性能:处于不同磁盘设备上的段可以并行地读写: d.处理大表:利用段,可以将一个大表分段放在独立的物理设备上,如将一个表的文本或图象数据存储另外的一个

基于ASP.NET的数据迁移方法 dbf上传

  1 引言 近年来,国内许多高校逐步建立了网络基础设施,构建了一些应用系统.但由于缺乏对数字校园总体结构的认识,出现了系统构建各自为政,缺乏统一规划,已构建的系统互割裂,信息与资源无法共享,而有些系统则集成度过高.维护与升级困难,网络基础服务平台与应用系统脱节等问题. 在数字化校园的建设中,URP(University Resource Plan)概念的提出很好地解决了信息共享等问题.URP通过建立统一的数据库,制定统一的信息标准,使各种信息系统以松散耦合的方式集成起来,保障了数据的一致性.可