自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(174)
  • 资源 (3)
  • 收藏
  • 关注

翻译 Spark Streaming Receiver学习

Receiver工作机制以org.apache.spark.streaming.dstream.SocketReceiver为例。一个数据流有一个receiver,在executor上启动。Receiver监听端口,拉取数据,调用ReceiverSupervisor和BlockGenerator将数据加入BlockGenerator的缓存。在加入缓存前,调用限流器(RateLimite...

2018-08-15 15:03:59 334

原创 记一次Spark Kerberos的故障解决

有同事反馈,Livy Server启动的所有Spark AM失败。Livy启动的Spark AM默认会enableHiveSupport,且使用$LIVY_HOME/conf/livy.conf的如下配置作为spark.yarn.keytab和spark.yarn.kerberos。livy.server.launch.kerberos.keytablivy.server.launch.k...

2018-08-13 14:23:51 7835

原创 Hive Storage Handler入门和实战

为什么要有Storage Handler引入Storage Handler,Hive用户使用SQL可读写外部数据源。ElasticSearch, Kafka,HBase等数据源的查询对非专业开发是有一定门槛的,借助Storage Handler,他们有了一种方便快捷的手段查询数据。另外,Hive作为数仓的核心组件,借助Storage Handler,数据导入导出可以统一以SQL实现,减少了大数...

2018-08-12 17:34:37 4389

翻译 Spark 常见参数学习

Spark on Yarnspark.yarn.maxAttempts研究 等价于yarn.resourcemanager.am.max-attempts,表示AM最多运行次数。设置为1,表示该AM失败后,Yarn不自动重启。spark.yarn.max.executor.failures 一个Spark Application的executor累积失败次数达到该值,则该Spark App...

2018-08-04 18:10:46 359

原创 SparkSQL学习- InsertIntoHiveTable类

InsertIntoHiveTable可以理解为SparkSQL物理执行计划的一个操作符,将数据价值到Hive表。它包含有Configuration对象 Hive表路径 HiveSessionState对象主要逻辑在sideEffectResult方法,包括校验和设置参数,调用sc.runJob,清理临时文件,刷新Hive表元数据。具体如下构造FileSinkDec对象,写入文件压缩...

2018-07-28 21:33:56 3472

翻译 SparkSQL学习- SparkSQL编译和执行过程

 Unresolved Logical PlanSpark使用Antlr将SQL/DataFrame 编译为一颗Unresolved Logical Plan(抽象语法树AST),树上的节点不带有数据类型等信息。SparkSqlAstBuilder类与此相关。Resolved Logical PlanSpark从Catalog获取表结构信息,并填充AST得到Resolved L...

2018-07-28 20:48:24 939

原创 一次ORA-03113错误解决

启动数据库时报ORA-03113错误,遂查看alert log。

2014-04-04 22:20:15 1216

原创 DBA基础

查询NLS设置:select * from NLS_DATABASE_PARAMETERS;  Flash_recovery_area:/home/oracle/app/oracle/flash_recovery_area/Alert log:/alert_.log。比如:/u01/app/oracle/diag/rdbms/orcl/orcl/trace/aler

2014-04-04 22:13:07 742

原创 sys登陆Oracle时Insufficient Privilege

原因1:$ORACLE_HOME/dbms/orapw_$ORACLE_SID文件缺失。

2014-04-04 20:48:33 5620

原创 执行计划相关SQL

alter session set statistics_level=all;select /*+ my7  */ * emp;select t.* from v$sql s, table(dbms_xplan.display_cursor(s.sql_id, s.child_number, 'ALLSTATS LAST')) t where sql_text like '%my7%';

2014-04-03 21:29:47 691

原创 Oracle Rman相关命令

系统认证方式登陆:类似与sqlplus "/as sysdba"rmanconnect target /Rman中也可以执行shutdown immediatestartup 自动备份Control File 和Server Parameter FileConfigure controlfile autobackup on;备份整个数据库backup

2014-03-24 21:55:51 742

原创 Oracle Recyclebin

从10G开始,Oracle引入了类似Windows回收站的recyclebin.There are two recyclebin views: USER_RECYCLEBIN and DBA_RECYCLEBIN. For convenience, the synonym RECYCLEBIN points to your USER_RECYCLEBIN. The recyclebin

2014-03-24 21:30:58 726

原创 nls_comp和nls_sort

Oracle官方文档Globalization Support的Linguistic Sorting and String Searching一章有详细解释nls_sort: 决定了Oracle 排序的方法,影响了ORDER BY, GROUP BY, comparison =, =, IN, BETWEEN, LIKE, MIN/MAX, GREATEST/LEAST, INSTR等函数

2014-03-11 23:05:19 1455

原创 PL/SQL Conditional Compilation

该特性与C语言的类似。从Oracle 9.2.0.6开始被引入,9.2.0.6默认关闭该特性,可以通过一个参数打开。10gR1默认是打开,可以关闭。10gR2或以上默认打开,不可以关闭。常用于以下场景:代码使用Oracle某新特性实现某个需求;为了兼容老版本Oracle,需要用另一个方法实现。在编译时,可以针对Oracle版本,选择性的编译。在开发时,打开Tracing, 生产服务器上关闭

2014-03-11 17:15:51 997

原创 Oracle q' 简化单引号转义

从10g开始引入该特性。q'后面的字符可以是:    !    [ ]    { }    ( )    前提是这些字符不会出现在后续的SQL中。请看例子,这两种写法都正确,后者显然可读性更强。select 'it''s a example' from dual;select q'[it's a example]' from dual;

2014-03-10 22:42:51 8552 1

原创 PL/SQL 表函数, Cursor Variable, pipelined table function

表函数: 返回varray 或nested table。使用方式: select * from table(func());Pipelined table function returns a row to its invoker immediately after processing that row and continues to process rows.sys_refcur

2014-03-06 13:48:52 978

翻译 动态列转行

来自于:http://www.oracle.com/technetwork/issue-archive/2012/12-jul/o42asktom-1653097.htmlSQL在解析时必须要知道字段的个数和类型,用pivot和decode都已经不能满足这个需求,这时必须上动态SQL了。这里将Tom的例子改写了下:create or replace procedure sal_sum_

2014-03-05 23:37:58 1608

原创 Oracle Index 和null 研究

Indexing null values安装关系数据库理论, null表示未知,Oracle b-tree index是不包含null的。考虑如下表:create table tt (t_id number, t_name varchar2(10));create index tt_idx on tt(t_name);select * from tt where t_name i

2014-03-05 21:33:53 880

原创 Oracle数据库字符集介绍

本文内容部分来源于http://stackoverflow.com/questions/6509751/inserting-national-characters-into-an-oracle-nchar-or-nvarchar-column-does-not-wOracle服务器: select * from NLS_database_PARAMETERS where parame...

2014-02-14 16:49:15 1097

转载 Linux下Oracle自启动

suvi /etc/orataborcl:/u01/app/oracle/product/11.2.0/dbhome_1:YY:允许自启动这里用了个土办法调用lsnrctl 和dbstart脚本。vi ~/.bash_profile$ORACLE_HOME/bin/lsnrctl start$ORACLE_HOME/bin/dbstart网上也有其他方法。

2014-02-12 11:00:37 609

原创 ADF介绍

 架构图ADF是个端到端的开发框架MVC架构丰富的展示层技术,有传统的Swing,Office,也有web的展示层技术。Controller: 主要做画面跳转Model: JSR-227规范,做数据绑定,将展示层与Business Service(Components)层绑定。Business Services: 也成为Business Components。与存储交互...

2014-02-10 15:25:43 2020

转载 JPA入门

JPA作为EJB 3.0标准一部分引入,使用Annotation, persistence.xml来描述数据库字段映射,主键,外键等。JPA作为一个标准(Specification),有许许多多的实现。本文使用Apache的openJPA。下面给出例子:meta-inf/persistence.xml<persistence xmlns="http://java.sun.com/x

2014-02-10 14:08:41 711

原创 PL/SQL Nocopy

函数或存储过程的out 或in out参数默认是传值,加nocopy申明使得PL/SQL编译器可以决定是否使用传引用。这可以减少函数调用的开销。当函数的返回值是大对象时,这点尤为重要。In 参数使用传引用。PROCEDURE do_nothing2 (tab IN OUT NOCOPY EmpTabTyp) ISBEGIN NULL;END;

2014-02-07 16:08:26 691

原创 Oracle Linux下每天10:00扫描"/",空间占用超过80%时发邮件提醒用户

这个任务涉及到Crontab, mailx,下面逐个介绍。CrontabLinux运行后,默认会启动守护进程crond,crond进程会定期执行crontab配置的命令sudo service crond status/etc/cron.allow: 白名单。只有在该文件中的用户可以使用crontab。/etc/cron.deny: 黑名单。在该名单中的用户不能使用cronta

2014-01-23 11:20:39 771

原创 Bash编程基础

先上一段简单代码:#!/bin/shline="23"line=`expr $line + 1`if [[ $line -gt "30" ]]then echo "Greater than."elif [[ $line -ne "0"  ]]then echo "Not equals 0"else echo "Less than."fiecho $lineif

2014-01-23 10:54:16 708

原创 Oracle Application Context

Application Context是内存中的一组name-value对,application context从属于某个命名空间(namespace)。用户只能通过一个自定义procedure调用dbms_session.set_context来设置application context的值。用户使用sys_context(,)来获取某个application context的值。Ap

2014-01-20 16:32:55 1554

原创 Oracle VPD

VPD = Virtual Private Database。同义词有RLS : Row Level Security, FGAC: Fine Grained Access Control。用于行级访问控制。假设有需求,只有用户'SCOTT'能访问emp表所有记录,其他人只能访问manager以下员工的记录。CREATE FUNCTION emp_policy(schema_in IN

2014-01-20 13:17:15 5742

翻译 Oracle Segment Advisor

本篇大部分内容来源于官方文档Adminstrator's Guide.Automatic Segment Advisor 成为ASA,Segment Advisor 成为SA。Segment Advisor可以发现:高水位(high water mark)下有大量未使用空间的表。可以使用OLTP压缩的表(仅限于ASA)。有大量chained rows的表同时,SA也可以给出意见

2014-01-19 00:00:42 3586

原创 Oracle IOT

Index Organized table by itself is a B-tree index. Index key is the primary key and the rest of columns are index values. The rows are stored in the primary key order. IOT provides fast access to

2014-01-18 20:07:19 1340

原创 Oracle ASSM

ASSM是Automatic Segment Space Management的缩写。与ASSM相对是Manul Segment Space Management。只有在Locally Managed Tablespace中可以使用ASSM,system tablespace不可以使用ASSM。Locally managed tablespace和ASSm是11gR2的默认配置。In a lo

2014-01-18 18:56:57 3768

原创 Linux diff

由于linux文件系统中目录也是文件。diff命令可以用于比较两个目录是否含有相同文件。请看例子:[oracle@odilab tt]$ ls -ltrh t1total 8.0Kdrwxr-xr-x 2 oracle oinstall 4.0K Jan 17 10:32 t11-rw-r--r-- 1 oracle oinstall 6 Jan 17 10:35 t1.txt

2014-01-17 23:55:47 2075

原创 Linux signals

Kill相关SIGINT:  相当于ctrl-c。程序捕获该“信号”,执行诸如释放资源的操作,退出。SIGTERM: 通过另一个程序发出。效果与SIGINT类似。这两个信号的效果都取决于“被杀死”进程的程序是如何处理这两个信号的。因为他们是可以被捕获的。SIGKILL: 粗暴的强制杀死进程,进程没有机会做释放资源的操作。请看GNU C Library对三个信号的解释:

2014-01-17 16:44:00 704

原创 Linux umask

umask决定了文件创建(包括目录)时默认访问权限。对于文件,执行权限不可以在创建时赋予。必须在创建后使用chmod命令。umask值是777减去默认权限。如umask为022,则文件默认访问权限为644,目录为755。查看用户当前umask[oracle@odilab ~]$ umask0022[oracle@odilab ~]$ umask 066[oracle@od

2014-01-15 21:16:01 772

原创 Linux pgrep

这个命令是ps 和grep的集合体。-v: 反向匹配。与grep一样。-u user: 匹配该用户的进程。-l: 显示PID和process name[oracle@odilab /]$ pgrep -l -u oracle "ora"2689 oracle2691 oracle2695 oracle2697 oracle2699 oracle2701 oracle2

2014-01-15 17:06:49 1095

原创 Linux du

du命令可以获取各文件空间消耗-h, -k 参数含义与其他命令一样-s: Only display a grand total-c: produce a grand total-a: include files, not just directories[oracle@odilab tt]$ du -a210264 ./3.txt4 ./1.txt4

2014-01-14 11:12:20 660

原创 Shell常识

. DOT and Subshell. (dot) runs a shell script in the current environment and then returns. Normally, the shell runs a command file in a subshell so that changes to the environment by such commands a

2014-01-13 23:03:55 517

原创 Linux iNode

Linux/UNIX的文件系统中,iNode保存了文件的元数据,包括:文件的字节数文件拥有者的User ID文件的Group ID文件的读、写、执行权限文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件上一次打开的时间。链接数,即有多少文件名指向这个inode文件内容的block的地址与Oracle数据类似,blo

2014-01-13 22:12:06 1257

原创 Linux stdin stdout stderr

stdin: 0stdout: 1stderr: 2常见于:ls -l 1 > /dev/null 2>&1将stdout重定向到“虚空”, stderr追加给stdout

2014-01-13 14:18:05 926

翻译 Linux下巨大文件各种处理

文件大到用vi操作不现实。比如GB级别。主要考虑哪种方法性能最优。例子文件如下:44MB行,大小206MB。该文件只有一列。 [oracle@odilab ~]$ wc -l 3.txt44000043 3.txt[oracle@odilab ~]$ ls -ltrh 3.txt-rw-r--r-- 1 oracle oinstall 206M Jan 9 10:54 3.txt...

2014-01-10 00:08:37 968

原创 Linux time命令

格式:time   time将执行该命令,并给出消耗的时间。请看:[oracle@odilab ~]$ time sed '1d' 3.txt > 31.txtreal 0m12.893suser 0m10.021ssys 0m0.453sreal: 流逝的时间。 Elapsed Timeuser: 命令在用户态执行的CPU时间sys: 命令在系统态执

2014-01-09 23:56:42 540

Linux Unix Shell 编程指南

Linux Unix Shell 编程指南

2013-01-13

Datastage 8.1 Parallel Job developer guide

DataStage 8.1 parallel job developer guide

2012-09-30

空空如也

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

TA关注的人

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