自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

In-Memory Computing Technology

内存数据库,内存网格技术,包括TimesTen, Redis, HANA, Spark, Coherence等

  • 博客(44)
  • 资源 (4)
  • 收藏
  • 关注

原创 配置VirtualBox共享文件夹

我的TimesTen软件运行在笔记本电脑上的Oracle Virtual Box,然后需要在虚拟机和笔记本本地目录间共享文件夹,例如做备份恢复测试,传递安装文件等。 在控制|设置|共享文件夹中添加一个分配即可,如下图,注意途中右下的在线帮助,其中有命令: 共享目录的属性如下: 在虚拟机OS下,运行以下命令即可,然后笔记本上的TEMP目录映射到了Linux的/mnt目录: [root@loc

2016-04-28 15:55:14 1058

原创 如何让Sublime2中支持Markdown

在Sublime Text 2中支持Markdown,过程大致如下: 1. 安装Package Control 打开View > Show Console菜单,从https://packagecontrol.io/installation中拷贝适合于Sublime Text 2的一段代码,粘贴执行 安装完成后重启程序 2. 安装Markdown package Ctrl+Shift

2016-04-28 15:54:46 1062

原创 TimesTen访问Oracle的口令存在哪里(ttCacheUidPwdSet还是OraclePWD)

在TimesTen中建立Cache Group时,需要用ttCacheUidPwdSet存储Oracle数据库中Cache Admin的用户名和口令。但同时,在一些操作如passthrough或者是ttLoadFromOracle时,还需要在connectString中指定OraclePWD,若未指定,则出现以下的错误,例如: Command> refresh cache group readca

2016-04-27 18:49:48 1216

原创 TimesTen与Oracle BI一体机Exalytics

TimesTen有三种用法: 1. 独立的内存数据库 2. 作为Oracle数据库的Cache 3. 以及嵌入到Exalytics中作为BI的提速。 本文谈谈第三种用法,即TimesTen在Exalytics中的作用。 Oracle Exalytics In-Memory Machine is the industry’s first engineered in-memory analy

2016-04-27 18:11:40 1859

原创 SSD和内存数据库技术

本文为阅读书籍Next Generation Databases: NoSQL, NewSQL, and Big Data 第7章: The End of Disk? SSD and In-Memory Databases的笔记。 磁盘已死?比尔.盖茨在1981年曾说过: 640K of memory should be enough for anybody. 在2001年,他意识到之

2016-04-26 10:57:47 8810

原创 Linux虚拟机扩展文件系统

我的安装TimesTen和12c的虚拟机文件系统满了,需要扩展文件系统。 然后下面的过程大致是: 1. 扩展物理磁盘 2. 创建磁盘分区 2. 重启 3. 使用磁盘分区创建PV 4. 使用新PV扩展VG 5. 使用新PV扩展文件系统所在的LV 6. 扩展文件系统以下是文件系统满的信息,可以看到文件系统所在的VG为VolGroup,LV为lv_root[root@tt12c ~]# d

2016-04-25 21:35:20 2978

原创 TimesTen可以缓存哪些版本的Oracle数据库

TimesTen最初的产品是可以缓存非Oracle数据库的,不过被收购后,就只支持Oracle数据库了。 支持的Oracle数据库版本可以从 HOWTO : Find Oracle TimesTen In-Memory RDBMS Current Release And Support Policy Information (Doc ID 1305293.1) 找到,如下图: 从此图可以看出,

2016-04-24 18:45:07 1229

原创 TimesTen 应用层数据库缓存学习:15. TimesTen 缓存组autorefresh的原理

autorefresh操作的数据同步流方向是从Oracle到TimesTen,因此只有read-only缓存组和user managed缓存组才能定义autorefresh。 AWT和SWT缓存的数据同步流方向是从TimesTen到Oracle,由于TimesTen有事务日志,则可以利用日志来做数据同步。 而从Oracle到TimesTen的autorefresh则是依赖于触发器和change

2016-04-23 20:13:26 1016

原创 在Linux中安装SQL Developer

在TimesTen的管理中,SQLDeveloper是一个很重要的工具,和CLI可以配合使用。 本文讲述如何在Linux系统下安装SQLDeveloper下载sqldeveloper和JDK安装包下载地址为 URL 目前最新的版本为JDK 8u91和SQL Developer 4.1.3,建议下载RPM包安装和配置安装直接用rpm -ivh即可。 然后用rpm -ql查询JDK的路径,会在后续

2016-04-23 19:52:36 7735

原创 TimesTen 应用层数据库缓存学习:3. 环境准备 - DB 12cR1版本

本文通过一个例子讲述在建立Cache Group之前的准备工作。 准备工作包含4个部分。 1. 在Oracle数据库中创建用户 2. 为TimesTen数据库创建DSN 3. 在TimesTen 数据库中建立用户 4. 在TimesTen数据库中设置cache administration用户名和口令本例演示环境包括一个Oracle数据库TTORCL(对应于12c的可插拔数据库pdborc

2016-04-23 19:04:05 904

原创 TimesTen 应用层数据库缓存学习:12. 管理缓存环境

缓存和复制代理的启停和状态查看cache agent的作用是将监控Oracle中数据的变化,并更新到TimesTen。因此,对于只读和AWT缓存组,cache agent都是必需的。cache agent的启停ttisql> call ttcachestartttisql> call ttcachestop或者$ ttadmin -cachestart DSN$ ttadmin -cache

2016-04-22 18:53:09 5363

原创 TimesTen 应用层数据库缓存学习:11. AWT性能监控

演示环境准备为了运行以下的例子,我们建立了一个AWT缓存组 Oracle Schema用户:$ sqlplus tthr/oracle@ttorclcreate table orders(ord_num int primary key, ship_time timestamp not null);grant select, insert, update, delete on orders to

2016-04-22 09:45:33 1424

原创 TimesTen 应用层数据库缓存学习:10. 监控缓存组的autorefresh操作

测试环境准备$ sqlplus tthr/oracle@ttorclcreate table orders(ord_num int primary key, ship_time timestamp not null);insert into orders values(1, sysdate);commit;grant select on orders to cacheadm;$ ttisql

2016-04-21 20:56:17 1631

原创 TimesTen 应用层数据库缓存学习:9. 一些独特的缓存组定义选项

在缓存组定义中,有一些选项,它们平常很少会用到,但在一些特定的场合也许有用。 这些选项是: * ON DELETE CASCADE * UNIQUE HASH ON * Where 条件中的SYNONYM * 缓存LOB数据ON DELETE CASCADEon delete cascade由于涉及到delete操作,因此一般用于AWT缓存组。不过只读缓存组也可以用。设定了ON DELET

2016-04-21 17:22:31 810

原创 TimesTen 与Oracle 数据库 12c的结合

之前的例子都是TimesTen与Oracle 11gr2结合,今天试了一下与DB 12c的结合。 从TimesTen的角度来说,12c和11g没有区别,都是通过tnsnames.ora来连接,主要的工作还是在12c这边。本文介绍TimesTen 11.2.2.8.11和Oracle DB 12.1.0.2.0的结合,平台为Oracle Linux Server release 6.6 安装完Or

2016-04-20 21:12:56 1856

原创 TimesTen 应用层数据库缓存学习:14. 用户自定义(User Managed)缓存

在TimesTen中,read-only, AWT, SWT都属于系统管理的缓存组,而User managed cache group则是用户自定义的缓存组。 When TimesTen manages operations for user managed cache groups, it connects to the Oracle database using the current

2016-04-19 14:55:51 1119

原创 在Windows上安装TimesTen

在Windows上安装TimesTen比Linux上安装还要简单,根据向导一步步走即可,下面只讲比较关键的部分。本文描述在64位Windows上安装TimesTen 11.2.2.8.9指定安装目录为C:\TimesTen\tt1122_64 选择安装组件,本例安装客户端和服务器 选择示例数据库数据文件目录,C:\Users*username*\AppData\Roaming\TimesTen\

2016-04-15 20:17:53 3714

原创 TimesTen 应用层数据库缓存学习:8. 配置Sliding Window(滑动窗口)

Sliding Window(滑动窗口)是Cache Group常用的一种场景。 本文介绍滑动窗口的基本概念以及如何配置滑动窗口。滑动窗口的描述如下: In a sliding window configuration, new rows are inserted into and old rows are deleted from the cache tables on a regular

2016-04-15 19:09:43 1019

原创 TimesTen 应用层数据库缓存学习:7. 同步读写缓存

同步读写缓存(SWT)比较少用到,它性能肯定是不如AWT,但数据一致性强于AWT。 数据先在Oracle提交,然后才在TimesTen中提交,因此TimesTen的约束可以比Oracle弱。和AWT一样,SWT的定义不能出现where条件 和AWT一样,虽然Oracle端可以修改,但是不建议。定义dynamic SWT缓存CREATE DYNAMIC SYNCHRONOUS WRITETHROU

2016-04-15 19:07:36 1172

原创 TimesTen 应用层数据库缓存学习:6. Aging策略

declare a number := 1; begin select max(a) into :a from lru_tab; a := a+1; insert into lru_tab values(a, sysdate); end; /Aging基本概念Aging就是缓存的老化策略,毕竟缓存不能容纳所有的数据库数据,因此根据Aging设置,一些数据在某些时刻会退出缓

2016-04-14 16:52:59 1367

原创 TimesTen 应用层数据库缓存学习:5. 异步读写缓存

eleAsynchronous Write Through(AWT) cache group, 即TimesTen的异步写缓存。数据只允许在TimesTen中修改,然后同步到Oracle。当然,TimesTen中的数据最初是从Oracle加载而来。 对于熟悉存储的人来说,cache 分为write-through和write back。而TimesTen的AWT对应的就是存储的write-back

2016-04-14 16:52:01 5705

原创 TimesTen 应用层数据库缓存学习:4. 只读缓存

在运行本文例子前,首先先执行TimesTen 应用层数据库缓存学习:2. 环境准备中的操作。Read-only Cache Group的概念只读缓存组如下图: 只读缓存组(Read-Only Cache Group)的cache table不能直接修改,在Oracle数据库中的数据更新后自动同步到Timesten。 只读缓存的原理是对Oracle中需要缓存的表建立触发器来捕捉其变化 For

2016-04-14 09:52:34 2386

原创 为什么TimesTen比使用内存缓存的Oracle还要快

Oracle可以把整个表置于内存缓存中,为什么还是不如Oracle快呢? Oracle TimesTen Application-Tier Database Cache Introduction中第一章中Why is Oracle TimesTen In-Memory Database fast?做出了解释: Much of the work that is done by a convent

2016-04-14 09:49:49 1945

原创 TimesTen 应用层数据库缓存学习:3. 环境准备 - DB 11gR2版本

本文通过一个例子讲述在建立Cache Group之前的准备工作。 准备工作包含4个部分。 1. 在Oracle数据库中创建用户 2. 为TimesTen数据库创建DSN 3. 在TimesTen 数据库中建立用户 4. 在TimesTen数据库中设置cache administration用户名和口令本例演示环境包括一个Oracle数据库TTORCL,版本为11.2.0.2.0;一个Tim

2016-04-10 20:42:26 1075

原创 TimesTen 应用层数据库缓存学习:1. 基本概念

Cache Group基本概念 TimesTen Application-Tier Database Cache is an Oracle Database product option that includes the Oracle TimesTen In-Memory Database. It is used as a database cache at the application t

2016-04-10 20:41:10 1250

原创 创建TimesTen 数据库

定义Data Source Name (DSN)TimesTen是通过DSN来访问的,DSN是TimesTen数据库的逻辑名,在Linux系统中,DSN文件位于/info/sys.odbc.ini 我们以自带的sampldb_1122 DSN定义为例:[ODBC Data Sources]sampledb_1122=TimesTen 11.2.2 Driver# Driver有两种,Times

2016-04-09 08:48:53 1916

原创 TimesTen数据库迁移工具 - ttMigrate

本文讲述TimesTen数据库的迁移工具ttMigrate,并通过几个例子,让大家有个直观的认识ttMigrate 和 ttBackup/ttRestore的区别对于备份和恢复,TimesTen有两个重要的工具,ttBackup/ttRestore和ttMigrate,他们的区别是: The ttBackup utility and the ttRestore utility backup an

2016-04-09 08:47:24 1390

原创 TimesTen与Oracle字符集查询

在建立Cache Group时,要求TimesTen的字符集与Oracle保持一致,下面讲述如何查询TimesTen和Oracle数据库的字符集TimesTen字符集从DSN文件中查询vi $TT_HOME/info/sys.odbc.ini...[plsqldb]Driver=/home/oracle/app/oracle/product/TimesTen/tt1122/lib/libtte

2016-04-06 20:26:15 1480

原创 TimesTen数据库的备份和恢复

准备工作先建立一个样例数据库sampledb_1122和待恢复数据库和sampledb1_1122 DSN文件如下: [sampledb_1122] Driver=/home/oracle/TimesTen/tt1122/lib/libtten.so DataStore=/home/oracle/TimesTen/tt1122/info/DemoDataStore/sampledb

2016-04-05 20:37:05 3704

原创 TimesTen 应用层数据库缓存学习:2. 缓存组分类

Cache Group,简单来说,就是在TimesTen中建立Oracle表的内存缓存,然后数据在两者之间自动同步。如下图,Oracle中黄颜色的表称为cached table,TimesTen中绿色的表称为cache table. TimesTen中Cache Group有很多类型,如下图,这张图对于了解Cache Group的概念非常重要: 红框内的类型是最常用的,我们先只关注此部分。主类型

2016-04-05 16:44:36 1133

原创 TimesTen 应用层数据库缓存学习:13. 全局数据缓存(cache grid)

本文讲述了TimesTen Global Cache Group的基本概念,并用一个例子促进对概念的理解 本实验环境使用一台虚拟机,包括一个TimesTen instance和一个Oracle Instance。两个TimesTen数据库(cachedb1和cachedb2)共享Oracle(sid=ttorcl)中的数据。 Oracle中的数据来源于HR Schema,可以从$TT_HOM

2016-04-05 11:12:37 1979

原创 TimesTen强大且简单的开发接口支持

谈到内存数据库,高速处理,性能在用户那里已经认为是理所当然了,那么还有那些特性会左右我们对于内存数据库的选择呢? 对于数据库而言,面对的不止是DBA,还有大量的开发人员,对于他们而言,开发的简便性至关重要。所谓简便性,就是不需要学习或只需学习少量的技能就可以对接上新的产品,以前的代码不需要修改或只需少许修改就可以结合新的内存数据库运行。 一个好的产品,不管内部如何的复杂,采用的技术多么高深,面

2016-04-04 22:25:00 1357

原创 TimesTen中的passthrough模式

TimesTen没有象Oracle中的DB Link,但可以通过设置passthrough来实现类似的功能。 使用passthrough模式时,需要指定OracleNetServiceName和OraclePWD passthrough的好处在于简单,只需要建立一个到TimesTen的连接,而后端访问Oracle是透明的;但是如果需要频繁访问Oracle,出于性能考虑,还是建议建立单独建立一个到

2016-04-03 21:29:20 2137

原创 在一个会话中产生多个连接

没有大的用处,一般用在测试和演示中,比较方便,避免切换多屏[oracle@localhost info]$ ttisqlCopyright (c) 1996-2011, Oracle. All rights reserved.Type ? or "help" for help, type "exit" to quit ttIsql.Command> connect plsqldb as con

2016-04-03 20:28:02 1968

原创 TimesTen中如何标识客户端连接

有时需要在数据库中分辨客户端的连接,在客户端中指定connectionname属性即可。 在编程中可以设定此属性,在ttisql中,可以用connect….as connectionname命令。 缺省情况下,connectionname使用的是DSN的名字,如下[oracle@localhost info]$ ttisql "dsn=plsqldb;connectionname=client1

2016-04-03 20:20:47 1183

原创 如何更改TimesTen数据库的大小

TimesTen的内存分配主要是PermSize和TempSize两块,在sys.odbc.ini中定义,并可通过dssize或ttconfiguration查看Command> dssize m; PERM_ALLOCATED_SIZE: 512 PERM_IN_USE_SIZE: 29.6396484375 PERM_IN_USE_HIGH_WATER:

2016-04-03 16:29:30 2397

原创 TimesTen中应尽量使用CHAR替代VARCHAR2类型

在TimesTen SQL Reference中,Data Type|Storage Requirement一节,对于VARCHAR2类型有以下的描述: For NOT INLINE columns: On 64-bit platforms, length of value + 24 bytes (minimum of 40 bytes). NULL value is stored as

2016-04-03 15:35:40 1037

原创 TimesTen的inline和out-of-line数据类型

由于TimesTen的数据类型和Oracle不尽相同,因此有必要了解一下TimesTen的数据类型的概念。 所谓inline, 就是数据存放在页面内的行内,所谓out-of-line,是指数据不和其它的列连续存放,而通过指针存放在页面外。 固定长度的数据类型都是inline的,不可改变。LOB和大于128字节的VARCHAR2, NVARCHAR2 和 VARBINARY缺省会被定义为out-o

2016-04-03 15:34:40 2402

原创 TimesTen的列压缩功能

本文出处为:http://ggsig.blogspot.jp/2012/02/columnar-compression-in-timesten.htmlColumnar Compression是11.2.2新增的功能,和Oracle一样,所谓的压缩其实就是重复数据删除,是通过类似于look-up table的技术实现的。 语法可参见SQL Reference. 原理如下图: 在字典表中存放了

2016-04-02 21:03:13 1316

原创 探索OTN上的TimesTen Hands-on Lab虚拟机

在前文 TimesTen学习资源 中提到有一个TimesTen的VirtualBox虚拟机。下载页面为 地址虚拟机大小为4.04G,导入后为11.6G,内存才900M,VM的操作系统是RHEL5U5, 32位的,包含两个12G的虚拟盘。机器虽小,包含的东西挺丰富。 有Oracle Database 11.2.0.2 [oracle@localhost ~]$ cat /etc/oratab

2016-04-02 08:04:57 1110

Oracle自治数据库自动分区报告

Oracle LiveLab实验“Boost Database Performance with Oracle Auto Partitioning”中的自动分区报告。

2022-11-16

Martin :另一篇优化的文章

Martin :另一篇优化的文章

2022-04-29

twp-stats-concepts-19c-5324209.pdf

优化器统计信息基本概念

2021-10-26

result.html

result.html

2021-07-07

TImesTen博客示例源代码

我的内存计算专栏示例源代码

2017-03-05

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除