Just Do IT

但行好事,莫问前程!
私信 关注
NextAction
码龄4年

但行好事,莫问前程

  • 553,146
    被访问量
  • 306
    原创文章
  • 7,741
    作者排名
  • 94
    粉丝数量
  • 于 2016-11-09 加入CSDN
获得成就
  • 获得97次点赞
  • 内容获得24次评论
  • 获得252次收藏
荣誉勋章
兴趣领域
  • #数据库管理
    #数据库开发#数据库架构#DBA#数据仓库#etl工程师
TA的专栏
  • IDEA
    1篇
  • Oracle
    77篇
  • PL/SQL
    14篇
  • SQL
    29篇
  • PostgreSQL
    29篇
  • MySQL
    4篇
  • Python
    36篇
  • Shell
    5篇
  • Java
    2篇
  • Kettle
    9篇
  • Hadoop
    16篇
  • Hive
    20篇
  • HBase
    2篇
  • Flume
    2篇
  • Spark
    2篇
  • Kafka
    3篇
  • Sqoop
    2篇
  • Flink
  • Linux
    26篇
  • 数据仓库
    6篇
  • 数据分析
    5篇
  • Excel
    8篇
  • Maven
    1篇
  • C
    1篇
  • 汇编语言
    1篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

【Java】面向对象基本特性-封装

封装概述面向对象编程是对客观世界的抽象,封装是对这个抽象的保护,避免外界直接操作抽象内部的隐藏对象。适当的封装让代码更易懂,也更安全。封装的步骤使用private关键字来修饰成员变量对需要访问的成员变量,提供对应的一对get和set方法。封装标准模板JavaBeanJavaBean是java语言编写类的一种标准规范。符合JavaBean的类,要求类必须是具体的和公共的,并且具有无参数的构造方法,提供用来操作成员变量的get和set方法。public class className { /
原创
55阅读
0评论
0点赞
发布博客于 3 月前

【Spark】ip地址查询案例(城市热点图)

上图是一张很常见的城市热力图,像这样的图是如何绘制的呢?其实,每个地区都有自己的经纬度和上网ip区段,可以通过解析上网日志中的ip,定位某个地区的客流量。本篇文章主要介绍,如果通过解析上网日志,查找热门地区经纬度,并把统计数据插入Mysql表中。数据准备这里需要两份数据:日志数据:20090121000132.394251.http.format链接:https://pan.baidu.com/s/1luckcRUOpCDVmivLJ03XOQ提取码:kroh2. 城市ip段数据.
原创
159阅读
0评论
0点赞
发布博客于 7 月前

【IDEA】Command line is too long. Shorten command ... or also for Application default configuration

在工程的 .idea目录下打开 workspace.xml文件在 <component name="PropertiesComponent">标签下,添加:<property name="dynamic.classpath" value="true" />
原创
166阅读
0评论
0点赞
发布博客于 7 月前

【Hive】性能调优 - map-side JOIN

Hive版本: hive-1.1.0-cdh5.14.2概述如果表关联时,有一张表很小,那么可以在大表通过mapper时将小表完全加载到内存中,Hive可以在map端完成关联过程,这就是所谓的map-side JOIN。使用map-side JOIN可以省掉常规的reduce过程,从而提升Hive的效率。Hive中有三个和map-side JOIN相关的参数:参数默认值hive.auto.convert.jointrue (Hive 0.11.0+)hive.aut.
原创
159阅读
0评论
0点赞
发布博客于 8 月前

【Hive】性能调优 - EXPLAIN

Hive版本: hive-1.1.0-cdh5.14.2用户提交HiveQL查询后,Hive会把查询语句转换为MapReduce作业。Hive会自动完成整个执行过程,一般情况下,我们并不用知道内部是如何运行的。但当查询遇到性能瓶颈时,就需要对HiveQL进行调优。EXPLAIN是调优时查看执行计划的工具,执行计划可以清晰的告诉我们查询的stage、map、reduce等阶段的信息。EXPLAIN的使用非常简单,只需要在正常HiveQL前面加上就可以了。此时的HiveQL不会真正执行作业,只是基于.
原创
256阅读
0评论
0点赞
发布博客于 8 月前

【Hive】压缩格式

常见压缩格式压缩方式压缩比压缩速度解压缩速度是否可分割gzip13.4%21 MB/s118 MB/s否bzip213.2%2.4MB/s9.5MB/s是lzo20.5%135 MB/s410 MB/s是snappy22.2%172 MB/s409 MB/s否压缩格式对应的编/解码器压缩格式对应的编/解码器DEFLATEorg.apache.hadoop.io.compress.DefaultCode
原创
4531阅读
0评论
0点赞
发布博客于 8 月前

【Hive】hive表的文件存储格式

在Hive中,文件的存储格式主要有:TEXTFILE、SEQUENCEFILE、ORC、PARQUET。其中,TEXTFILE、SEQUENCEFILE是基于行存储,ORC、PARQUET基于列存储。实际生产环境,使用ORC和PARQUET的情况比较多。1. 行存储和列存储上图中左边为逻辑表,右上为行存储,右下为列存储。当查询结果为一整行的时候,行存储效率会高一些;当查询表中某几列时,列存储的效率会更高。在对数据的压缩方面,列存储比行存储更有优势,所以列存储占用空间相对小一些。2. TEXT
原创
581阅读
0评论
1点赞
发布博客于 8 月前

【Hive】表生成(Table-Generating)函数

Hive版本: hive-1.1.0-cdh5.14.21. 列转行函数:explode(1) 输入类型为array语法:explode(ARRAY a)返回值:T描述:展开array,其中每个元素占一行0: jdbc:hive2://node03:10000> select explode(array('A', 'B', 'C'));+------+--+| col |+------+--+| A || B || C |+------+--+(2).
原创
120阅读
0评论
1点赞
发布博客于 8 月前

【Hive】字符串函数

Hive版本: hive-1.1.0-cdh5.14.21. 首字符转ascii码函数:ascii语法:ascii(string str)返回值:int描述:返回字符串str首字符的ascii编码0: jdbc:hive2://node03:10000> select ascii('hello') as col1, ascii('hehe') as col2, ascii('Hi') as col3;+-------+-------+-------+--+| col1 | col2.
原创
169阅读
0评论
0点赞
发布博客于 8 月前

【Hive】条件函数

Hive版本: hive-1.1.0-cdh5.14.21. if函数语法:if(boolean testCondition, T valueTrue, T valueFalseOrNull)返回值: T描述:如果testCondition为true,返回valueTrue,否则返回valueFalseOrNull0: jdbc:hive2://node03:10000> select if(1=2, 'TrueValue', 'FalseOrNull');+-------------.
原创
104阅读
0评论
0点赞
发布博客于 8 月前

【Hive】日期函数

1. Unix时间戳转日期函数名称:from_unixtime(bigint unixtime[, string format])返回值:string描述: Unix时间戳转换为日期格式0: jdbc:hive2://node03:10000> select from_unixtime(1237573801, 'yyyy-MM-dd HH:mm:ss') as time_string;+----------------------+--+| time_string |+
原创
186阅读
0评论
0点赞
发布博客于 8 月前

【Hive】集合函数

函数名称返回值类型描述size(Map<K,V>)int返回map类型数据的长度size(Array)int返回array类型数据的长度map_keys(Map<K,V>)array返回map类型数据的键map_values(Map<K,V>)array返回map类型数据的值array_contains(Array, value)boolean判断value是否存在于array中sort_array(...
原创
89阅读
0评论
0点赞
发布博客于 8 月前

【Hive】动态分区插入

动态分区是指在插入数据时,无需指定分区键值,系统根据插入的数据,自动分配分区。动态分区需注意以下几点:需有一个同构的普通表做为源表;分区键值和源表字段之间是根据位置来判断的,而不是根据命名来匹配的;动态分区默认是关闭的,使用前要设置相关参数;下面是一个动态分区的例子:# 创建分区表和普通表# 上传数据文件到HDFS# 普通表导入数据# 使用动态分区插入数据到分区表中...
原创
246阅读
0评论
0点赞
发布博客于 8 月前

【Hive】Hive分区表

分区作为一种提高数据操作灵活性的手段,被广泛应用于关系型数据库中。在Hive中我们同样可以采用分区的方式来提高数据操作效率,和关系型数据库(如Oracle)所不同,Hive的分区表既可以是内部表,也可以是外部表。本篇文章主要介绍如何在Hive中创建分区表,外部表上的DDL操作,以及使用外部表的注意事项。1. 创建分区表1.1 创建内部分区表create table myhive.test_internal(id int) partitioned by (date string) row format
原创
170阅读
0评论
0点赞
发布博客于 8 月前

【Hive】Hive内部表/外部表

1. 建表语句Hive官网有详细的建表语句。CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name -- (Note: TEMPORARY available in Hive 0.14.0 and later) [(col_name data_type [column_constraint_specification] [COMMENT col_comment], ... [constraint_spec
原创
117阅读
0评论
0点赞
发布博客于 8 月前

【Hive】Hive的数据类型

Hive中数据类型可以分为基本数据类型和复合数据类型。这些数据类型都是用Java实现的。1. 基本数据类型类型名称描述举例booleantrue/falsetruetinyint1byte有符号整数30smallint2byte有符号整数30int4byte有符号整数30bigint8byte有符号整数30float4byte单精度浮点数1.0double8byte单精度浮点数1.0string字符串(无长度限
原创
126阅读
0评论
0点赞
发布博客于 8 月前

【Maven】win10系统安装Maven

本文主要介绍如何在win10系统上安装Maven操作环境:Windows10Maven版本: apache-maven-3.6.31. 下载Maven安装包打开Maven官网下载页面,下载如图安装包:2. 解压到安装目录请按实际情况选择安装目录,如安装到D盘:3. 复制Maven的bin目录4. 配置环境变量4.1 右键点击 “此电脑”,选择 “属性”4.2 点击...
原创
145阅读
0评论
0点赞
发布博客于 10 月前

【Kafka】测试Kafka整合Flume

本文将会简单介绍Kafka如何整合Flume,从而实现"日志 -> Flume -> Kafka"操作环境:Kafka版本:1.0.1Flume版本:1.6.0测试前需满足以下条件:已安装Kafka和FlumeKafka已启动1. 配置Flume的conf文件vi /home/hadoop/flume-kafka.conf#2. 创建Flume的监控目录...
原创
77阅读
0评论
0点赞
发布博客于 10 月前

【Kafka】命令行管理topic

1. 创建topic[hadoop@node03 bin]$ kafka-topics.sh --create --partitions 3 --replication-factor 2 --topic test --zookeeper node01:2181,node02:2181,node03:2181Created topic "test".参数说明:partitions: 指定...
原创
223阅读
3评论
0点赞
发布博客于 10 月前

【Flume】Flume简单介绍

1. 概述Flume是一个分布式、可靠和高可用的海量日志采集、聚合和传输系统。Flume可以采集多种数据,如:文件、socket数据包、文件夹、Kafka等,还可以将采集到的数据输出到HDFS、HBase、Hive等多种存储系统。[Flume官方网站](http://flume.apache.org/)有更详细的介绍。2. 运行机制Flume中最核心部分是agent,每个agent都是一...
原创
81阅读
0评论
0点赞
发布博客于 10 月前

【Hive】Hive的三种交互方式

1. Hive shell[hadoop@node03 ~]$ cd /kkb/install/hive-1.1.0-cdh5.14.2/[hadoop@node03 hive-1.1.0-cdh5.14.2]$ bin/hive2. JDBC2.1 后台先启动hive服务[hadoop@node03 ~]$ nohup hive --service hiveserver2 &...
原创
224阅读
0评论
0点赞
发布博客于 10 月前

【SQL】利用HAVING取众数和中位数

本篇文章介绍如何使用HAVING取数据集合的众数和中位数参考《SQL进阶教程》1. 创建测试表及测试数据CREATE TABLE graduates ( name varchar(255), income number(10) );INSERT INTO graduates VALUES ('桑普森', '400000');INSERT INTO graduates VA...
原创
3781阅读
5评论
6点赞
发布博客于 11 月前
【Hive】分桶表
发布Blink于 11 月前

【Hive】分桶表

1. 什么是分桶表分桶表是按照某列属性值,把数据打散存储在不同文件的Hive表.2. 分桶的原理Hive官网解释:How does Hive distribute the rows across the buckets? In general, the bucket number is determined by the expression hash_function(bucketing...
原创
130阅读
0评论
0点赞
发布博客于 11 月前
Oracle WebLogic Server Active GridLink for Oracle Real Application Clusters (RAC) - 1
发布Blink于 1 年前

【Kafka】Kafka安装部署

前期环境准备准备好相应的服务器本文中服务器共三台: node01,node02,node03服务器已安装zookeeper集群Kafka安装步骤下载安装包下载地址: http://kafka.apache.org/downloads上传安装包到node01的指定目录请选择合适的工具上传,过程略.解压到指定目录tar -zxvf kafka_2....
原创
198阅读
0评论
1点赞
发布博客于 1 年前

【Spark】sparksql中使用自定义函数

代码中分别用面向对象和面向函数两种写法自定义了两个函数:low2Up: 小写转大写up2Low: 大写转小写import org.apache.spark.sql.types.StringTypeimport org.apache.spark.sql.{DataFrame, SparkSession}object SparkSQLFunction { def main(args...
原创
301阅读
0评论
0点赞
发布博客于 1 年前

【Flume】举例分析如何配置Flume

Flume非常灵活,日常工作中可以根据实际需求配置。如果大家不知道Flume支持哪些配置,那么可以关注Flume官网。在Configuration标签下有Flume Source,Flume Sinks,Flume Channels,分别对source、sink、channel组件的配置做了详细介绍。我们在配置的时候参考官网,稍加改动即可。下面就对常见配置方式举例分析:1.网络采集ag...
原创
146阅读
0评论
0点赞
发布博客于 1 年前

【Sqoop】sqoop导入导出

本文简单介绍Sqoop如下操作:Import:​ rdbms导入HDFS;​ rdbms导入Hive;​ rdbms导入Hbase;Export:​ Hive导出到rdbms;​ Hbase导出到rdbms;其中,rdbms以mysql数据库为例。环境准备mysql中建库、建表并插入测试数据:create database userdb;use userdb;creat...
原创
134阅读
0评论
0点赞
发布博客于 1 年前

【Sqoop】Sqoop job实现增量导入的原理

我们在使用Sqoop的增量导入时,需要配置三个参数:假设有这样的场景:使用Sqoop每天定时导出一张表(emp)的增量数据,其中emp的id列为自增列。那么此时有两种方式实现:(1) 每天收工配置last-value,手工调度;(2) 使用job,给定初始last-value,每天定时自动跑;相信大多数人会选择(2)种方式。为什么job可以给定一次last-value就可以自动抽取...
原创
886阅读
0评论
2点赞
发布博客于 1 年前

【HBase】Java API - 向表中插入数据

import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.TableName;import org.apache.hadoop.hbase.client.Connection;import org.a...
原创
520阅读
0评论
0点赞
发布博客于 1 年前

【HBase】创建表-Java API操作

import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor;impor...
原创
673阅读
0评论
0点赞
发布博客于 1 年前

【汇编语言】进制转换

十进制转二进制1.整数除二取余,倒着写如:十进制9转换二进制9 ÷ 2 = 4…14 ÷ 2 = 2…02 ÷ 2 = 1…01 ÷ 2 = 0…1倒写余数,所以十进制9转换为二进制为:10012.小数乘二取整,顺序写如:十进制0.5转换二进制首先要明白,十进制小数转二进制仍然为小数,所以二进制左边 为0.xx0.5 × 2 = 1.0 取整数部分“1”此时小数...
原创
607阅读
1评论
0点赞
发布博客于 1 年前

【Hive】多字符分隔

在创建Hive表时,一般我们会指定字段间的分隔符,如空格,\t,逗号等,这些是都单字符。那么,如果我们想要按照多个字符分隔,如##,|+|等,这时候就要用到如下两种方式:MultiDelimitSerDe解决多字符分隔创建表0: jdbc:hive2://node03:10000> create table test1 (id string, name string). . . ...
原创
255阅读
1评论
0点赞
发布博客于 1 年前

【MapReduce】MapReduce工作机制

一个mapreduce作业,一般分为两阶段执行:map阶段和reduce阶段,下面分别对这两阶段进行介绍。Map阶段Map阶段又分为五部分:读取文件阶段,MapTask阶段,collect阶段,溢写阶段,combine阶段。首先客户端把待处理文件分片信息、jar包信息、参数信息等提交到HDFS。然后Yarn集群接受任务,启动AppMaster把任务分配NodeManager,并由NodeM...
原创
182阅读
0评论
0点赞
发布博客于 1 年前

【MapReduce】编程指导思想

MapReduce编程思想共分为8步:map阶段:2步shuffle阶段:4步reduce阶段:2步Map阶段第一步: 设置inputFormat类,将数据切分为k-v对,输入到第二步;第二步:自定义map逻辑,处理第一步中生成的k-v对,然后转换成新的的k-v进行输出;Shuffle阶段第三步:对输出的k-v进行分区,相同k的数据发往同一个reduce,相同k合并,v形成一个集合...
原创
139阅读
0评论
0点赞
发布博客于 1 年前

【Yarn】工作机制及任务提交流程

本文以mr程序为例,解释yarn的工作机制及任务提交流程:0. mr程序提交任务到客户端所在节点;1.节点上的YarnRunner向ResourceManager申请一个Application;2. ResourceManager会把Application资源路径及application_id返回YarnRunner;3. 该程序将job运行所需资源提交到HDFS;4. 资源提交完毕后,...
原创
524阅读
0评论
0点赞
发布博客于 1 年前

【Hive】数据导出

Hive版本:Hive 1.1.0-cdh5.14.2INSERT导出到目录官方链接Standard syntax:INSERT OVERWRITE [LOCAL] DIRECTORY directory1[ROW FORMAT row_format] [STORED AS file_format] (Note: Only available starting with Hive 0....
原创
148阅读
0评论
0点赞
发布博客于 1 年前

【Hive】数据导入方法

Hive版本:Hive 1.1.0-cdh5.14.21. INSERT插入1.1 单条插入INSERT INTO TABLE tablename [PARTITION (partcol1[=val1], partcol2[=val2] ...)] VALUES values_row [, values_row ...]举例如下:0: jdbc:hive2://node03:10000...
原创
116阅读
0评论
0点赞
发布博客于 1 年前

【Hadoop2.6】Yarn中任务调度器

概述Yarn中有三种任务调度器:FIFO调度器(FIFO Scheduler)、容量调度器(Capacity Scheduler)、公平调度器(Fair Scheduler)。任务调度器介绍1.FIFO调度器FIFO调度器将应用放在一个队列里,按照“先进先出”的原则为应用分配资源。优点:简单易用,不需要任何配置;缺点:不适合共享集群。大应用占用集群所有资源,所以每个应用只能...
原创
144阅读
0评论
0点赞
发布博客于 1 年前

【HDFS】hdfs与fsck结合使用

1.获取全部参数[hadoop@node01 ~]$ hdfs fsckUsage: DFSck <path> [-list-corruptfileblocks | [-move | -delete | -openforwrite] [-files [-blocks [-locations | -racks]]]] [-maintenance] <path...
原创
136阅读
0评论
0点赞
发布博客于 1 年前

【HDFS】HDFS与dfsadmin结合使用

1.获取所有参数[hadoop@node01 ~]$ hdfs dfsadminUsage: hdfs dfsadminNote: Administrative commands can only be run as the HDFS superuser. [-report [-live] [-dead] [-decommissioning]] [-saf...
原创
140阅读
0评论
0点赞
发布博客于 1 年前

【HDFS】HDFS与getconf结合使用,获取配置信息

1.获取所有参数[hadoop@node01 ~]$ hdfs getconfhdfs getconf is utility for getting configuration information from the config file.hadoop getconf [-namenodes] gets list of nam...
原创
328阅读
0评论
0点赞
发布博客于 1 年前

【HDFS】HDFS操作命令

1.上传文件#用法:hdfsdfs-put/本地路径/hdfs路径hdfsdfs-put/linux本地磁盘文件/hdfs路径文件hdfsdfs-copyFromLocal/linux本地磁盘文件/hdfs路径文件#跟put作用一样hdfsdfs-moveFromLocal/linux本地磁盘文件/hdfs路径文件#跟put作用一样,只不过,源文...
原创
98阅读
0评论
0点赞
发布博客于 1 年前

【Linux】Centos7重启网卡失败

报错如下:解决办法:systemctl stop NetworkManagersystemctl disable NetworkManager然后重启网卡:service network restart
原创
533阅读
0评论
1点赞
发布博客于 1 年前

【Python】Python中的日志级别

Python按照重要程度把日志分为5个级别,如下:Python中的日志级别 级别 日志函数 描述 DEBUG logging.debug() 最低级别,追踪问题时使用 INFO logging.info() 记录程序中一般事件的信息,或确认一切工作正常 WARNING logging.warning() 记录信息,用于警告 ER...
原创
1045阅读
0评论
1点赞
发布博客于 2 年前
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
发布Blink于 2 年前

【Python3】复制、移动、删除文件及文件夹

对于文件和文件夹,我们最常做的操作分为三种:复制、移动、删除。这三种操作可以通过shutil和os模块中的函数实现,下面通过对hello.txt的操作为例进行说明:*复制:shutil.copy(source, destination) #复制文件 shutil.copytree(source, destination) #复制文件夹*移动:shut...
原创
2175阅读
0评论
0点赞
发布博客于 2 年前

【Oracle】分区表中索引状态为N/A

我遇到的问题:1. 表为range分区加list子分区2. 表上建本地分区索引3. dba_ind_partitions中查询索引状态为N/A4. 即使删除重建索引,状态依旧为N/A问题解决说明:分区索引在dba_ind_partitions中状态为N/A,说明索引有子分区,去dba_ind_subpartitions表中查询索引状态。...
原创
4005阅读
0评论
0点赞
发布博客于 2 年前

【Oracle】ORA-06510: PL/SQL: 用户定义的异常错误未得到处理

异常除了定义,还需要有代码块去处理异常。详见参考文章:https://www.techonthenet.com/oracle/errors/ora06510.php
原创
2029阅读
0评论
0点赞
发布博客于 2 年前

【PHP】安装wampserver3.1.19后apache无法启动问题

启动wampserver后图标是橙色的,检查后显示apache无法启动。cmd中输入如下命令检查是否有80端口占用:netstat -ano|findstr 80发现确实有被占用情况,根据百度修改了httpd.conf中80为81,并且把C:\wamp64\bin\apache\apache2.4.39\conf目录下的httpd.conf也做了同样修改,其中C:\wamp64是我的...
原创
355阅读
0评论
0点赞
发布博客于 2 年前

【Oracle】ORA-14758: Last partition … cannot be dropped

[oracle@master ~]$ oerr ora 1475814758, 00000, "Last partition in the range section cannot be dropped"// *Cause: An attempt was made to drop the last range partition of an interval// parti...
原创
322阅读
0评论
0点赞
发布博客于 2 年前

【Oracle】ORA-27369: job of type EXECUTABLE failed with exit code: Key has expired

问题描述:在使用DBMS_SCHEDULER调用shell时报错ORA-27369: job of type EXECUTABLE failed with exit code: Key has expired解决办法:shell脚本中要使用绝对路径,不能有相对路径。参考文章:https://community.oracle.com/thread/2252702...
原创
853阅读
0评论
1点赞
发布博客于 2 年前

【SQLServer】

转载:https://www.cnblogs.com/Gin-23333/p/4096311.html今天玩BCP导入数据的时候,有文件格式,有中文字符串问题……以下是历程,和大家分享一下,希望不要走我的弯路主要那个表是一个翻译表,一个文件里面内涵几十种语言,所以很容易发现问题。0、使用最常用的语句导数据  bcp DB.TBOwner.TB in File -S -U -P -r...
转载
129阅读
0评论
0点赞
发布博客于 2 年前

【Oracle】ORA-30659: too many locations specified for external table

虽然这是一个“特别特别特别”难遇到的报错,但还是写出来吧,没准有同样和我一样,好奇外部表可以加载多少文件的童鞋呢。oracle官方文档是这样解释的:ORA-30659: too many locations specified for external tableCause: An attempt was made to create an External Organized table...
原创
91阅读
0评论
0点赞
发布博客于 2 年前

【Oracle】官方文档:spool

SPOOLSyntaxSPO[OL] [file_name[.ext] [CRE[ATE] | REP[LACE] | APP[END]] | OFF | OUT]Stores query results in a file, or optionally sends the file to a printer.Termsfile_name[.ext]Represents t...
原创
976阅读
0评论
1点赞
发布博客于 2 年前

【Shell】获取文件名和扩展名

不多说了,看代码体会吧。[oracle@master test]$ cat test.sh#!/bin/bashfile=test.shecho "文件名:${file%.*}"echo "扩展名:${file#*.}"[oracle@master test]$ sh test.sh文件名:test扩展名:sh[oracle@master test]$ cat test...
原创
2152阅读
0评论
1点赞
发布博客于 2 年前

【Linux】awk处理变量

我们在使用awk的大部分场景,是对文件的处理,但有时也会用它对变量进行处理。awk有两种方式可以实现对变量的处理:(1)[oracle@master test]$ cat test.sh#!/bin/basha='abc,123'a1=`echo "$a" | awk -F "," '{print $1}'`a2=`echo "$a" | awk -F "," '{print $...
原创
1479阅读
0评论
1点赞
发布博客于 2 年前

【Linux】tee命令

有的时候我们需要把程序结果既在前台显示,同时又写入文件中,tee可以实现这种功能。tee命令的可用参数并不多,可以通过help命令查看:[oracle@master ~]$ tee --helpUsage: tee [OPTION]... [FILE]...Copy standard input to each FILE, and also to standard output....
原创
291阅读
0评论
1点赞
发布博客于 2 年前

【Oracle】11g外部表指定oracle_datapump引擎,不能使用preprocessor预处理子句。

oracle 11g官方文档解释如下:意思是:如果想用预处理特性,必须把preprocessor子句放在access parameters里面,并且指定oracle_loader引擎。
原创
198阅读
0评论
0点赞
发布博客于 2 年前

【Oracle】表级别分区操作对索引(本地分区索引,全局分区索引,非分区索引)的影响

--参考自《Oracle索引技术》先贴上结论吧:下面对以上几种操作分别测试:创建测试表及索引--创建测试分区表CREATE TABLE employees_parttest( employee_id NUMBER(6) not null, first_name VARCHAR2(20), last_name VARCHAR2(25),...
原创
252阅读
0评论
0点赞
发布博客于 2 年前

【Oracle】删除不存在表时避免报错

在drop table时,Oracle中没有类似MySQL和PostgreSQL中的"IF EXISTS"选项,但可以通过存过实现:CREATE OR REPLACE PROCEDURE prc_dropifexists(p_owner varchar2, p_table varchar2)AS v_count varchar2(5);BEGIN SELECT COUNT(*)...
原创
1756阅读
0评论
1点赞
发布博客于 2 年前

ORA-24247

Oracle存储过程中执行utl_inaddr.get_host_address,报错ORA-24247按如下步骤解决:1.创建 ACLbegin dbms_network_acl_admin.create_acl ( acl => 'UTL_INADDR.xml', description => 'utl_inaddr', principal => 'S...
原创
670阅读
0评论
0点赞
发布博客于 2 年前

【Linux】centos7安装bcp报错

安装bcp报错如下:Error: Protected multilib versions: unixODBC-devel-2.3.7-1.rh.x86_64 != unixODBC-devel-2.3.1-11.el7.i686这是由于系统有两个版本的unixODBC导致的,卸载一个就可以了。我选择卸载的第二个:sudo yum remove unixODBC-2.3.1-11.e...
原创
348阅读
0评论
0点赞
发布博客于 2 年前

【Shell】检查字符串大小

-n和-z可以检查变量中是否含有数据,其中:-n 非空则返回True-z 如果为空则返回True例子:[oracle@master test]$ cat testfile #!/bin/bash# Testing string lengthval1=testingval2=''if [ -n $val1 ]then echo "The string '$v...
原创
201阅读
0评论
1点赞
发布博客于 2 年前

【Shell】数值比较参数

Shell中的数值比较参数分为下面6种:Shell中的数值比较参数 参数 含义 -eq 等于 -gt 大于 -ge 大于等于 -lt 小于 -le 小于等于 -ne 不等于 例:[oracle@master test]$ cat testfile #!/bin/bas...
原创
1645阅读
0评论
0点赞
发布博客于 2 年前

【Linux】/etc/shadow文件字段解释

只有root用户才能查看/etc/shadow文件,通过此文件,管理员可以对其他用户进行管理。[root@master ~]# grep oracle /etc/shadoworacle:$6$eB289qZv$XDhy/fnUrNfqsoAdhjrslZmQJVmSdf1EsOLglc1325xcqOEsYB/y5vZH7W67XJuuKHj/9MFPxS6aIEF.BiYQX.:179...
原创
3483阅读
1评论
1点赞
发布博客于 2 年前

【Linux】/etc/passwd文件中字段解释

[oracle@master test]$ head /etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/s...
原创
7484阅读
0评论
0点赞
发布博客于 2 年前

【Shell】压缩相关命令

gzip:压缩文件zcat:查看压缩文件内容gunzip:解压文件[oracle@master test]$ lstestfile[oracle@master test]$ gzip testfile [oracle@master test]$ lstestfile.gz[oracle@master test]$ zcat testfile.gz This is Next...
原创
276阅读
0评论
0点赞
发布博客于 2 年前

【EXCEPTION_INIT】自定义错误名称并关联错误号

EXCEPTION_INIT可以把自定的错误名称和Oracle内部错误号关联起来,这样就可以在程序异常处理部分按错误名称抛出异常。需要注意,EXCEPTION_INIT命令必须在声明部分定义。下面是一个例子:dept_bak表的deptno字段时number类型,长度为2,如果向的deptno中插入一个过长字段,比如9999,就会报错:ORA-01438:value larger th...
原创
153阅读
0评论
0点赞
发布博客于 2 年前

【Shell】按关键字查找某个字符

[oracle@master ~]$ cat test.txt 0rowsoutput file/oooo/oooo/oclosed/x.txt closed at 12345 rows,size 0 MBtest.txt文件内容如上,现在想取其中的‘12345’,可以这样写:cat test.txt | awk -F " " '/closed at/{print $5}'以‘...
原创
1476阅读
0评论
0点赞
发布博客于 2 年前

【Linux】Centos防火墙命令

查看防火墙状态:systemctl status firewalld.service临时关闭防火墙:systemctl stop firewalld.service永久关闭防火墙:systemctl disable firewalld.service 
原创
128阅读
0评论
0点赞
发布博客于 2 年前

【Postgresql】pg掉电后无法重启

机房断电后重启pg数据库,报如下错误:&lt; 2019-01-01 22:42:59.240 EST &gt;LOG: database system was interrupted while in recovery at 2019-01-01 22:00:58 EST&lt; 2019-01-01 22:42:59.240 EST &gt;HINT: This probably ...
原创
1148阅读
0评论
0点赞
发布博客于 2 年前

【Python】AxisError: axis 0 is out of bounds for array of dimension 0

报错代码:print(np.sort(zip(etr.feature_importances_, boston.feature_names), axis=0))原意是想把zip后的列表,使用sort按列(axis=0)排序。报错原因:zip 方法在 Python 2 和 Python 3 中的不同:在 Python 3.x 中为了减少内存,zip() 返回的是一个对象。如需展示列...
原创
3181阅读
0评论
0点赞
发布博客于 3 年前

【Python】AttributeError: 'Series' object has no attribute 'order'

新版本的pandas中的Series不再支持order(),用sort_values()替代。sort_values()文档查看这里
原创
800阅读
0评论
0点赞
发布博客于 3 年前

【Python】检测字符串的方法

1. isalnum()语法: str.isalnum()返回值:如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 Falsestr1 = 'this2018'str2 = 'hello world!'print(str1.isalnum())print(str2.isalnum())实例输出结果为:TrueFalse...
原创
1030阅读
0评论
0点赞
发布博客于 3 年前

【Python】ix,loc,iloc的区别

ix:通过行标签或行号索引行数据;loc:通过行标签索引;iloc:通过行号索引;注意:pandas0.20.0版本开始,python不建议使用ix,而推荐使用更为精确的 iloc或者 loc。from pandas import Seriesimport numpy as npdata = Series(np.random.randn(10), ...
原创
303阅读
0评论
0点赞
发布博客于 3 年前

【Python】ModuleNotFoundError: No module named 'pandas.io.data'

pandas.io.data已经用不成了,得替换为pandas_datareader,pip3 install pandas_datareader 安装就可以了。
原创
2924阅读
0评论
0点赞
发布博客于 3 年前

【Python】安装IPython和IPthon Notebook

1. 安装相关包pip install IPythonpip install urllib3 (安装IPython Notebook的依赖)pip install jupyter (安装IPython Notebook)pip install numpypip install matplotlibpip install pandaspip install scipypip in...
原创
1343阅读
0评论
0点赞
发布博客于 3 年前

【SQL】SQL的执行顺序

FROM &lt;left_table&gt;ON &lt;join_condition&gt;&lt;join_type&gt; JOIN &lt;right_table&gt;WHERE &lt;where_condition&gt;GROUP BY &lt;group_by_list&gt;HAVING &lt;having_condition&gt;SELECTDISTIN
原创
155阅读
0评论
0点赞
发布博客于 3 年前

【Python】pymysql.err.InternalError: (1236, 'Misconfigured master - server_id was not set')

使用python连接mysql报错:pymysql.err.InternalError: (1236, 'Misconfigured master - server_id was not set')报错原因:my.cnf文件中没有设置server_id查找文件命令:whereis my.cnf...
原创
1649阅读
0评论
0点赞
发布博客于 3 年前

【C】输出乘法口诀表

#include &lt;stdio.h&gt;int main(){ int i = 0; int j = 0; for (i=1;i&lt;=9;i++){ for (j=1;j&lt;=i;j++){ printf("%dx%d=%d\t",i,j,i*j); } printf("
"...
原创
196阅读
0评论
0点赞
发布博客于 3 年前

【SQL】substr截取结果和想象中有差异?

今天在处理员工信息,其中身份证号需要截取后四位,于是,我使用了substr函数:substr(card_no,-1,4)心中默念:“从最后一位截取,负号代表从右向左,截取四位,对,没毛病!!”但结果,擦,却是只截取了最后一位!!!之前都是正序截取,没想到逆序截取还出这情况,网上搜了下,下面小哥写的很好:点击打开链接...
原创
711阅读
0评论
0点赞
发布博客于 3 年前

【Python】BeautifulSoup导入lxml报错

报错的程序:content = bs4.BeautifulSoup(response.content.decode("utf-8"), "lxml")报错如下:bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser...
原创
1950阅读
3评论
0点赞
发布博客于 3 年前

【Python】Pycharm中plot绘图不能显示

《利用Python进行数据分析》书中例子都是用IPython作为开发环境,问我一直在用Pycharm,这导致了plot还不能显示绘图。出错的代码如下:import jsonimport pandas as pdfrom pandas import DataFrame,Seriespath = r'C:\Users\long\Desktop\python\pydata-book-2nd-ed...
原创
10216阅读
3评论
2点赞
发布博客于 3 年前

【SQL练习题】排序

原表如下:建表脚本:CREATE TABLE districtproducts ( district varchar(255), name varchar(255), price int(255));INSERT INTO districtproducts VALUES ('东北', '橘子', 100);INSERT INTO districtproducts VALUES ...
原创
229阅读
0评论
0点赞
发布博客于 3 年前

【Kettle】如何解决Excel输出卡死或太慢

当Excel输出大量数据时(10w+),此步骤可能会卡死导致真个转换报错。只需勾选如下即可解决:
原创
3950阅读
2评论
0点赞
发布博客于 3 年前

【SQL练习题】case when实现按要求排序

表中key列,数据如下:如何实现如下输出效果:建表语句:CREATE TABLE order1 ( key varchar(255)); INSERT INTO order1 VALUES ('A'); INSERT INTO order1 VALUES ('B'); INSERT INTO order1 VALUES ('C'); INSERT INTO orde...
原创
1462阅读
0评论
0点赞
发布博客于 3 年前

【SQL练习题】1. 多列数据求最大值

一列多行,很容易得出最大值,但多列多行如何取最大值呢?从下表中取得每行的最大值:最终实现如下效果:建表语句:CREATE TABLE greatests ( key varchar(255), x int(5), y int(5), z int(5));INSERT INTO greatests VALUES ('A', 1, 2, 3);INSERT INTO great...
原创
2867阅读
0评论
1点赞
发布博客于 3 年前

【Kettle】血统分析

在转换中,血统就是说你要知道一个数据是从哪里来的,在哪个步骤中,增加了或修改了这个数据,最后输出到哪个数据库表中。本篇通过job,先把资源库导出成xml文件,然后通过分析xml文件,把想要的信息输入到数据库表中进行保存。当要查询表来源时,只需要查询存储资源库的表即可。job:job中的转换:1. 导出资源库到XML文件2. Get data from XML(解析导出的资源库XML文件)输出的字段...
原创
2638阅读
0评论
0点赞
发布博客于 3 年前

【Kettle】如何输出固定格式报表

我的工作是为公司分析部门提供数据,其中一部分是固定时间点提取的报表,这些报表的格式固定,每次机械化的修改参数→提取数据→复制粘贴,实在是繁琐。下面介绍一个我工作中使用kettle输出固定格式报表的例子,希望能帮到有需要的小伙伴们。背景:固定格式报表如表1,其中还有excel公式嵌套在里面,分析部门提供的原始模板如表2(其中为0和#DIV/0!的单元格中嵌套了公式):                ...
原创
3311阅读
0评论
1点赞
发布博客于 3 年前

【Python】Python中文编码

如果Python程序中有中文字符,运行会报错:print "你好,世界!";SyntaxError: Non-ASCII character '\xe4' in file D:/tools/pycharm/untitled/hello.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263....
原创
434阅读
0评论
0点赞
发布博客于 3 年前

【SQL】正则表达式-校验数字,字符,特殊需求等

一、校验数字的表达式1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$ 8 正...
原创
9828阅读
0评论
3点赞
发布博客于 3 年前

【Java】Exception in thread "main" java.lang.Error: Unresolved compilation problem

使用eclipse编译Java程序出现错误:Exception in thread "main" java.lang.Error: Unresolved compilation problem,是因为没有在程序开始位置指定包名称(指定包例子:package test; )。...
原创
2623阅读
0评论
0点赞
发布博客于 3 年前

【SQL】update中使用case when

1.创建测试表及数据CREATE TABLE graduates ( name varchar(255) , income int4(255) ); INSERT INTO graduates VALUES ('桑普森', '400000'); INSERT INTO graduates VALUES ('迈克', '30000'); INSERT INTO...
原创
32088阅读
2评论
11点赞
发布博客于 3 年前

SOWC 2014 Stat Tables_Table 9.xlsx

《Python 数据处理》第四章Excel实验文件,用于测试童工和童婚数量分析。
xlsx
发布资源于 3 年前

【Python 2.7】xlrd读取Excel文件

这篇博文参考于《Python 数据处理》读取Excel文件需要用到xlrd模块,模块下载地址:xlrd下载地址本博文中Excel文件下载地址:SOWC 2014 Stat Tables_Table 9.xlsx下面我们使用xlrd模块提取Excel文件中的童工和童婚比例:"""这是用来分析童工和童婚数据的脚本。 本脚本中用到的Excel文件可以在以下链接中获取:https://github....
原创
2505阅读
3评论
0点赞
发布博客于 3 年前

【Kettle】创建资源库用户

在生产中,我们一般都会先连接资源库,然后再去编辑作业或者转换。连接之前会有用户名和密码的输入:这里的用户名和密码可以在kettle里面新建,(lll¬ω¬),之前我是不知道的,一直都在用admin用户操作。添加用户操作如下:使用admin用户(资源库创建后的默认用户admin和guest)登陆,密码默认是admin,登陆以后依次点击“工具”→“资源库”→“探索资源库”→“安全”然后点“+”添加用户...
原创
2007阅读
0评论
0点赞
发布博客于 3 年前

【Kettle】job中设置自动发送邮件

背景:业务每周六需要固定格式的数据,手工跑脚本太麻烦,为了偷懒,设计了job,定时启动job,并把数据自动发送到对方邮箱。一   kettle服务器定时任务如下:每周六上午九点执行脚本调度job0 9 * * 6 source /etc/profile;/opt/program_etl/weekly_jss_jingsuanshi_taibaorenewal_trace.pyweekly_jss_...
原创
2104阅读
0评论
0点赞
发布博客于 3 年前

【Kettle】date类型不能被excel输出

背景:kettle7.0,连接PG9.6数据库,我想把查询出来的结果excel输出到本地。结果其他字段都可正常导出,唯独日期类型导出为空。最终解决办法:查询结果在输出之前要转换成文本或字符串类型。如果使用SQL写的表输入步骤,可以在SQL里做字段类型转换。如我的修改为:...
原创
2121阅读
0评论
0点赞
发布博客于 3 年前