维度建模相关
1:事实表:包含业务过程等数据,通常包含大量记录。2:维度表:基于事实表的事实记录的特性,提供描述性信息。3:维度包含三种模型:星形模型,雪花模型,多维模型。(1)星形模型:事实表被维度表所包围,且维度没有被新的表连接。(2)雪花模型:事实表被多个维表或一个或多个层次所包围。个人感觉不同的模型,主干部分就是对主键的拆分。(分支部分就是外键或者新主键又一层的拆分)。看清了主键的组成也就看清楚了模型的结构。4 :维度的类型:无维度数据处理,缓慢变化维,快速变化维,大维和迷你维,退化维,普通维度、雪花维度、父子维度。
一种迁移到体系结构化环境的方案
(1)获得一个数据模型(2)定义记录系统,也就是找到最符合数据模型需求的数据。记录系统是数据仓库模型的数据源。然后,需要寻找将记录系统中的数据迁移到数据仓库中可能面临的技术挑战。包括1)DBMS的变化 2)操作系统的变化 3)需要将源自不同DBMS和操作系统的数据合并起来 4)基本数据格式的变化(3)设计数据仓库,主要工作有,1)清除纯操作性数据 2)做数据稳定性分析,将经常变动的数据和比较稳定的数据分开存放于不同的物理结构中。3)按主题域进行组织等。(4)设计和建立记录系统和数据仓库之间的接口(数据抽取+数据集成),可以用ETL软件建立和维
Unix shell解决实际问题脚本(3)
(1)移除注释#行管道|管道|sed / ^#/d(2)以kb或1024字节块,mb,gb查看文件系统命令:df -k | tail +2df -m | tail +2df -g | tail +2(3)df -k | tail +2 | egrep -v '/dev/cd[0-9]| /proc'=df -k | tail +2 | grep -v '/dev/cd[0-9]' | grep -v '/proc'df -k | tail +2 | egrep -v 'dev/cd[0-9]|/proc' | awk '{print $1, $4, $7}' #awk内一个逗号,一个空格(4)%号移除方法sed s /% //gcommd | sed s/current_string/new_string/g(5)BINDIR="/usr/local/bin"EXCETPIONS="${BINDIR}/exceptions" # 用大括号把BINDIR括起来
Unix shell解决实际问题脚本(2)
处理文件速度比较快的脚本方法:方法1:function while_read_line_bottom_fd_out{>$OUTIFILEexec 4<&1 #文件描述符exec 1>$OUTFILE while read LINEdoecho "$LINE"done < $INFILE #循环结束处,重定向输入exec 1<&4exec 4>&-}处理文件速度比较慢的脚本方法:方法2:function while_read_line_cmdsub2_fd_in{>$OUTFILEexec 3<&0exec 0<$INFILEwhile LINE=$(line)doecho "$LINE" >>$OUTFILEdoneexec 0<&3exec 3>&-}使用文件描述符,处理速度可以快10ms.用
设计数据仓库和数据仓库的粒度
1:设计数据仓库的一种常用方法叫多维方法。需要星形连接,事实表和维。星型连接的中央的表称作事实表。其周围的其它实体称为维表。2:数据集市中的数据结构是根据部门的需求而建立的。所以,部门不同,数据集市也不同,但是,它们的所有结构都要依赖于数据仓库中粒度化的数据。3:如何确定粒度?(1) 对数据仓库中将来的数据行数和所需要的空间进行粗略估算(数量级)。比如:确定创建所有的表,一两张大表和多张小表,估计每张表中行的大小,估计一个上界和一个下界。(2)计算索引数据所占的空间,确定每张表(对表中的每个关键字或会被直接搜索的
Unix shell解决实际问题脚本(1)
#转大写typeset -u#转小写typeset -ltypeset -u VARIABLE VARIABLE="True"echo $VARIABLE#字母转大写小写upcaseservar=$(echo $VARIABLE | tr ' [a-z]' '[A-Z]')downcaseservar=$(echo $VARIABLE | tr '[A-Z]' '[a-z]')#############################################cron,1月8日所在星期的每天早晨3:15执行脚本(分小时日月星期)15 3 8 1 * /usr/local/bin/somescripts.bash 2>&1 >/dev/null在1月1日午夜00:00,在控制台写入Happy New Year0 0 1 1 * /usr/bin/banner "Happy New Year" > /dev/console###
数据仓库设计的问题和重要概念
1:设计数据仓库重要问题:粒度,分区。基本问题:数据清理。有多种数据分区的标准:(1)时间 (2) 业务范围 (3) 地理位置 (4)组织单位2:在操作性环境中的档案数据的时间范围称为数据的操作性窗口,一般不长,一个星期到两年。3:从操作型环境提取数据到数据仓库环境需要集成数据的问题:(1)编码不一致 (2)单位不一致 (3)字段语义不一致4:元数据就是关于数据的数据。5:在数据仓库中,每一个主题域都是以一组相关的表来具体实现的。且每个主体域的数据可以存储在不同的介质上。每个表都有一个时间元素作为关键字,记录都是以某型形式的日期连接到
编写代码的好习惯
1:子程序长度:100-150行最合乎.2:子程序名称:9-15个字符.3:过程起名字:使用语气强烈的动词加宾语的形式。过程的名字反应该过程所做的事情。动词可以选用以下对仗词:add/remove increment/decrement open/closebegin/end insert/delete show/hidecreate/destroy lock/unlock soruce/targetfirst/last min/max start/stopget/put next/previous up/downget/set old/new 4:子程序参数:按照输入-修改-输出的顺序排列参数5:特别注意计算器和累加器 i,j,k,sum,total,在下一次使用这些变量之前忘记重置其值是一种错误。6:
理财攻略
理财专家告诉我们:理财的最佳方式并非追求高超的金融投资技巧,只要你掌握正确的理财观念,并且持之以恒,若干年之后——人人都能成为百万富翁。第一个理财概念:区分“投资”与“消费”区分“投资”行为与“消费”行为。一般人消费前,没有这种概念,学经济学的人消费前会考虑,这个消费是属于“投资”行为或是“消费”行为。先请看一个明显的例子:10年前甲和乙是本科的同学,在社会工作5年后,不约而同积蓄了30万元人民币。5年前,他们都花掉了这30万元。甲去通州购买了一套房。乙去买了一辆“奥迪”。5年后的今天:甲的房子,市值60万
记录shell脚本编程相关
1: >> 避免>的覆盖2 <<:读取信息直到到达指定的分隔符 3 ` `把命令保存到一个变量中4 export用于修改shell环境变量5 set 查看环境中已设置的shell变量6 ctrl+c 结束脚本的运行7 ${array[index]}调试shell脚本方法1 检查语法错误 sh -n scriptnamesh -v scriptname2 sh -x :把脚本中执行的每条命令的结果回显到屏幕上。3 “断点调试”: set -x语句set +x4 echo 打印变量echo "..............................."正则表达式特殊字符的含义1 . :代表一个字符2 *:代表0个或多个其他字符3 ?:代表0个或一个字符[a-z] [0
oracle内部培训心得
行链接:发生在一个block不能存放一行数据的情况下,此时oracle将链接一个或者多个block来存储这一行。多发生在有lob、long、raw字段类型的表上。行迁移:发生在更新数据使得行变大,此时Oracle会将整行数据迁移到一个新的block,同时会保留被迁移行的原始指针指向新行,ROWID不变。PCTFREE能尽量避免行迁移PCTUSED设置原则:db_block_size×(100-PCTFREE-PCTUSED)必须大于行的长度发生了行迁移行链接,对这行的数据操作性能会降低。rowid=object_id+file_id+block_id+num3.B_tree索引是二叉平衡树。Branch level=height-1.[@more@]
智能网第2批地市成功迁移割接上线
20110901零点,智能网第2批地市成功迁移割接上线![@more@]
智能网第一批割接总结
智能网割接期间由于前期未准备充分出现了以下问题,需引以为戒:1)代码问题,引起停机状态未全部正确同步.2)代码问题,未剔除拆机用户的余额数据3)在迁移结束后,出欠费余额统计报告的效率太低,花了太长时间[@more@]
智能网第1个三个地市资料割接完毕
智能网第1个三个地市资料割接完毕。[@more@]
20110611日融合计费R3割接上线
融合计费R3割接上线的日子![@more@]
aix的几个简单命令
pps:物理分区数.lv就是一个卷组中若干个pp的集合.几个物理卷(硬盘pv)组成卷组(vg),然后在卷组上创建逻辑卷(lv),lv由pp组成,这些组成lv的pp,可以连续,也可以不连续.然后在lv上挂载文件系统jfs,jfs2,或者挂载裸设备.换页空间就是一种特殊的lv.查lv方法: 1先查卷组 lsvg -l datavg2然后 lslv lvname查lv状态lsps -a查看已经挂载的文件系统: #mountps -ef:列出非内核进程ps -fu:列出用户拥有的进程,比如,ps -fu oracle,ps -fu mig查看参数文件,cat /home/oracle/.profile查看后台进程: ps -e , ps -f ps -laix查看sga内存信息: ipcs -ma文本
认识Linux与Unix区别
常见的Unix发行商,有IBM(AIX RS 6000),Sun(Sun Solaris),HP(HP-unix).Aix内核参数,大部分不需要修改,只需要调整最大用户进程数。而HP-unix则需要调整很多内核参数.Linux与Unix都包括kernal内核,shell层,文件系统.#echo $shell --查看当前shell类型命令最常用的Linux架设的服务器是网站服务器,邮件服务器,DNS服务器,而内层的服务器或是稳定性要求极高的主机,如数据库就使用Unix,而不采用Linux.因为Linux的稳定性不如Unix,而在外层的架构使用一台甚至多台的Linux服务器作为网页服务器,邮件的传递,应用程序服务器,防火墙等.[@mor
学会写高级查询
在不同的数据库应用部署可以用到:-导出建序列语句 SELECT 'CREATE SEQUENCE' || a.sequence_name ||' MINVALUE' || a.min_value || 'MAXVALUE' || a.max_value || 'START WITH' || a.last_number || 'INCREMENT BY' || a.increment_by || 'CACHE' || a.cache_size ||';' FROM user_sequences a;--导出建表语句 SELECT 'CREATE TABLE ' || A.TABLE_NAME || ' AS SELECT * FROM ' || A.TABLE_NAME || ';' FROM USER_TABLES A;...类推[@more@]
20110416融合计费系统R2割接
20110416,融合计费系统R2割接的日子,记住那天.[@more@]
Oracle10g心得
锁的来源:ACID规则。undo的来源:ACID规则。三个参数,undo_management,undo_tablespace,undo_retention.数据库高速缓冲区与数据库的交互利用的是LRU算法(最近最少).日志缓冲区的大小:log_buffer参数.PGA的使用:v$pgastat.实例:数据库=多:1叫 RAC实例: 数据库=1:多叫Steams, Steams机制能确保多个数据库的实时同步.实例: 数据库=多:多叫Data Guard.完全能够确保数据不丢失。日志切换的目的是生成归档日志文件.RMAN:做的是数据库一级备份,包括控制文件,数据文件,归档日志文件,动态参数文件.数据库的失败类型:(判断哪种类型之后,在做相应