当前位置:  数据库>其它
本页文章导读:
    ▪南大通用GBase8a Vs Oracle11g 单机测试亲测       南大通用GBase8a数据库是一款列存储的,专门用于查询统计分析,存储海量数据的数据库。 oracle、db2、sqlserver等都是传统行式存储,用于事务型处理的,所以,在海量数据查询方面,不占.........
    ▪oracle 中行列转换      由于项目中需要用到一个需求将多行合并为一行,大家看一个数据就一目了然的作用了(学号是唯一的) 原始查询出来的数据是这样的, A         B      C      .........
    ▪rhel下安装oracle10g+asm---测试环境搭建      su - root mkdir /asmdisk ==在unix/linux中,所有设备都是文件,所以我们可以建几个文件来模拟多块硬盘。先用dd建若干个文件,大小为1G dd if=/dev/zero of=/asmdisk/disk1 bs=1024k count=500 dd if=/dev/zero of=/asmdis.........

[1]南大通用GBase8a Vs Oracle11g 单机测试亲测
    来源: 互联网  发布时间: 2013-11-07
 南大通用GBase8a数据库是一款列存储的,专门用于查询统计分析,存储海量数据的数据库。
oracle、db2、sqlserver等都是传统行式存储,用于事务型处理的,所以,在海量数据查询方面,不占优势。

GBase8a与传统数据库相比,为客户直接能做到:
1、降低硬件成本
GBase8a不需要小型机、磁盘阵列等高端硬件,普通的Pc Server即可,同时数据存放采用压缩方式,节省了硬盘空间。

2、减少数据库维护
GBase8a独创的智能模糊索引,以及数据包即索引的机制,完全不需要用手工维护索引。

3、双向并行技术
实现多CPU同时工作,可以实现并行加载和查询功能,降低ETL时间。

4、大幅提高查询性能
由于是列存储,再加上GBase8a的高效自适应压缩,常见数据统计已存入数据包中,所以查询时性能很高。

5、内置全文检索功能
全单字索引方式,适合面向海量数据的检索查询应用。

我自己在笔记本上用VMware9做虚拟机测试,想比较下两者的差距,结果是GBase8a的查询效率比Oracle11g普遍快3~5倍以上!
以下是测试情况介绍:

[测试条件]
两台虚拟机都是4核cpu,2G内存,硬盘受限于笔记本
操作系统:
GBase8a使用RHEL6.2 Server
Oracle11g使用Oracle的Linux Server 6
数据库版本:
GBase8a版本是8.5.1
Oracle版本是11.2
客户端:
JDBC连接,DbVisualizer9

[测试用例]
业界常用的SSBM案例,即5张表做星型模型,其中:
1、lineorder 订单事实表,600多万条记录
2、customer 客户维表,6万条记录
3、part 部件维表,20万条记录
4、dwdate 日期维表,2556条记录
5、supplier 供应商维表,1万条记录

[测试方法]
GBase8a与Oracle11g先后各执行13条sql查询,分冷数据(第一次查询)和热数据(第二次查询)查询,并记录各自花费的时间。

[测试结果]
查询性能对比如下表:


冷数据 热数据 sql 8a oracle11g 8a oracle11g 1 0.294s 0.834s 0s 0.544s 2 0.078s 0.565s 0s 0.531s 3 0.107s 0.541s 0s 0.717s 4 1.938s 1.603s 0s 0.899s 5 0.647s 0.853s 0.018s 0.828s 6 0.543s 0.730s 0.005s 0.723s 7 1.377s 1.481s 0.002s 1.488s 8 0.777s 0.797s 0s 0.8s 9 0.552s 0.882s 0s 0.761s 10 0.12s
    
[2]oracle 中行列转换
    来源: 互联网  发布时间: 2013-11-07

由于项目中需要用到一个需求将多行合并为一行,大家看一个数据就一目了然的作用了(学号是唯一的)

原始查询出来的数据是这样的,

A         B      C        D
姓名  学号  科目  成绩

张三  001  语文  89

张三  001  数学  95

李斯  002  语文  43

李斯  002  数学  89

现在有个这种需求,需要展示出来一个人的所有科目的成绩

那么需要将科目都展示出来列变成以下这样

A         B      C        D
姓名  学号 语文  数学

张三  001  89     95

李斯  002  43     89


sql 语句如何写的,上一个不需要我啰嗦了,下面这个转换后的应该是这样的:

select  A,B, sum(decode(D, '语文', D, 0)) as 语文成绩, sum(decode(C, '数学', D, 0))  数学成绩

from  成绩表 group by B

作者:liuzhigang1237 发表于2013-3-17 15:53:27 原文链接
阅读:0 评论:0 查看评论

    
[3]rhel下安装oracle10g+asm---测试环境搭建
    来源: 互联网  发布时间: 2013-11-07

su - root


mkdir /asmdisk


==在unix/linux中,所有设备都是文件,所以我们可以建几个文件来模拟多块硬盘。先用dd建若干个文件,大小为1G

dd if=/dev/zero of=/asmdisk/disk1 bs=1024k count=500
dd if=/dev/zero of=/asmdisk/disk2 bs=1024k count=500
dd if=/dev/zero of=/asmdisk/disk3 bs=1024k count=500
dd if=/dev/zero of=/asmdisk/disk4 bs=1024k count=500

 

                          ////// 如果在安装失败可以使用这个命令,清空ASM磁盘  dd  if=/dev/zero  of=/asmdisk/disk4  bs=8192  count=500//////

 

==用losetup命令,使这些文件在linux看来是某个存储设备
/sbin/losetup /dev/loop1 /asmdisk/disk1
/sbin/losetup /dev/loop2 /asmdisk/disk2
/sbin/losetup /dev/loop3 /asmdisk/disk3
/sbin/losetup /dev/loop4 /asmdisk/disk4

raw /dev/raw/raw1 /dev/loop1
raw /dev/raw/raw2 /dev/loop2
raw /dev/raw/raw3 /dev/loop3
raw /dev/raw/raw4 /dev/loop4

注意:如果要删除通过dd模拟出的虚拟磁盘文件的话,直接删除模拟出的磁盘文件(也就是asm_disk1、asm_disk2…asm_disk6)还不够,
   还必须执行losetup -d /dev/loopN,在这里N从1到6。否则,磁盘文件所占用的磁盘空间不能释放。

cd /dev/raw
ls -ltr
chown -R oracle:oinstall *
chmod 660 *
ls -ltr

为了避免重启后之前的配置失效可做以下设置:

vi /etc/rc.local

#添加以下内容

/sbin/losetup /dev/loop1 /asmdisk/disk1
/sbin/losetup /dev/loop2 /asmdisk/disk2
/sbin/losetup /dev/loop3 /asmdisk/disk3
/sbin/losetup /dev/loop4 /asmdisk/disk4

raw /dev/raw/raw1 /dev/loop1
raw /dev/raw/raw2 /dev/loop2
raw /dev/raw/raw3 /dev/loop3
raw /dev/raw/raw4 /dev/loop4

 

开始安装oracle软件,并配置asm磁盘。

su - oracle
dbca

创建asm
运行脚本
创建asmdg


check asmdg

sqlplus / as sysdba


select name  from v$datafile;

确认数据文件位于asm磁盘上

 

 

 

 

补充:

如何干掉一个dg
export oracle_sid=+asm

1.DBCA删除instance
2.sqlplus登录ASM,删除DG
sqlplus登录第二个节点的ASM,dismount要删除的DG
           alter diskgroup xxx dismount;

sqlplus登录第一个节点的ASM,drop要删除的DG
           drop diskgroup xxx include content;
3.停止ASM,在节点1上执行

srvctl stop asm -n node1
srvctl stop asm -n node2
4.删除ASM,在节点1上执行

srvctl remove asm -n node1
srvctl remove asm -n node2
5.删除相关文件,在所有节点执行

rm -f $ORACLE_HOME/dbs/*ASM*
删除/etc/oratab中有关ASM的内容

作者:royjj 发表于2013-3-17 19:53:08 原文链接
阅读:0 评论:0 查看评论

    
最新技术文章:
▪gc buffer busy/gcs log flush sync与log file sync    ▪让你的PL/SQL更好用    ▪ADO.NET中的非脱机数据库查询
▪参数job_queue_processes与Oracle jobs    ▪11gR2游标共享新特性带来的一些问题以及_cursor...    ▪_library_cache_advice和latch:shared pool、latch:shared poo...
▪SQL: Date Utility    ▪DB2 分区表增加分区    ▪DB2第一步 — 创建表
▪oracle 数据库    ▪插入10万条记录测试    ▪rebuild index VS. rebuild index online
▪如何处理undo tablespace 表空间太大的问题    ▪ado执行存储过程中包含结果集获取输出参数为...    ▪oracle函数的demo
▪Entity Framework 学习建议及自学资源    ▪存储过程的编写    ▪Linux/Unix shell 自动发送AWR report(二)
▪第二章 Oracle恢复内部原理(基础数据结构)    ▪Redis源码学习之【Tcp Socket封装】    ▪Java Jdbc减少与Oracle之间交互提升批量处理性能...
▪南大通用GBase8a Vs Oracle11g 单机测试亲测    ▪oracle 中行列转换    ▪rhel下安装oracle10g+asm---测试环境搭建
▪Redis系列-主从复制配置    ▪MySQL索引与查询优化    ▪INDEX受到NULL值的影响
▪测试人员的SQL语言 系列    ▪SQL数据库基本语句    ▪MySQL Replication常见错误整理[持续更新...]
▪eclipse下建立esper的demo    ▪把oracle rac 转化为单机数据库    ▪Redis系列-存储篇sorted set主要操作函数小结
▪基本的SQL*Plus报表和命令    ▪druid简单教程    ▪11g调度--scheduler使用
▪EF基础一    ▪db2存储过程中循环语句while do的continue有没有...    ▪oracle 创建DBLINK
▪DB2数据库备份还原    ▪Warning: prerequisite DBD::mysql 1 not found错误解决方...    ▪innotop性能监视mysql,innodb工具
▪数据迁移:DataGuard配置    ▪QX项目实战-19.跨库数据同步    ▪Mysql EXPLAIN
▪Oracle 11g AWR 系列七:Active Session History (ASH) 报...    ▪Oracle 11G新特性(共36个)    ▪父子节点问题
▪OEM简介及按钮乱码问题    ▪NoSql之MongoDB的常用类管理    ▪ORA-39700: database must be opened with UPGRADE option
▪node.js 访问redis数据库,pub/sub    ▪使用DBMS_REDEFINITION在线重定义分区表    ▪SQL Developer 使用问题与解决方法汇总
▪oralce 11g dataguard 概念    ▪ORA-30004 错误处理    ▪oracle分组函数rollup,cube
▪Sql Developer 使用问题与解决方法汇总    ▪Configure Oracle Dataguard Primary-ASM to Physical-ASM    ▪Oracle Data Guard 理论知识
▪Control File 恢复    ▪Oracle数据文件收缩    ▪Oracle 11g AWR 系列五:如何生成 AWR 报告?
▪Wireshark数据包分析实战(第2版)    ▪MySql用户权限控制    ▪db2和oracle查询序列区别
▪更新blob字段的存储过程    ▪MySQLReport分析报告三    ▪DB2中的序列
▪Oracle中DBMS_RANDOM.STRING 的用法    ▪SQL SERVER无法安装成功,sqlstp.log文件提示[未发...    ▪Data Guard 部署物理备库的 10 大注意事项
▪万能数据库查询分析器使用技巧之(九)    ▪SQL 自定义Split函数    ▪视图 v$sql,v$sqlarea,$sqltext,v$sqltext_with_newlines 的...
▪Data Guard Standby_archive_dest 和 Log_archive_dest_n 的...    ▪机房收费系统数据库设计(一)    ▪利用putty的SSH tunnel连接Oracle
▪DBCA建库偶遇ORA-27125    ▪使用PowerPivot建立简单的分析模型    ▪Linux/Unix shell 自动发送AWR report
▪写入到blob字段的存储过程    ▪关于JDBC中ResultSet接口的一点细节探究    ▪Data Guard 配置 Standby Redo Log
▪linux下redis的安装    ▪windows下redis的安装    ▪手动创建数据库步骤(简单翻译官方文档)
▪Ubuntu安装Mongodb    ▪SQL CLR应用    ▪redis的配置文件参数--详细说明
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3