
数据库
曦紫沐
抟扶摇而上者九万里
展开
-
ODS (操作数据存储)
操作数据存储ODS(Operational Data Store)是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的、集成的、当前或接近当前的、不断变化的”数据。一般在带有ODS的系统体系结构中,ODS都设计为如下几个作用:1、在业务系统和数据仓库之间形成一个隔离层一般的数据仓库应用系统都具有非常复杂的数据来源,这些数据存放在不同...转载 2018-05-23 22:58:09 · 4144 阅读 · 2 评论 -
ODS与DW的区别
操作数据存储ODS(Operational Data Store)是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的、集成的、当前或接近当前的、不断变化的”数据。 数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支...原创 2018-05-23 23:08:21 · 3158 阅读 · 0 评论 -
Oracle中的translate函数用法
语法:translate(expr, from_strimg, to_string)1简介:translate返回expr,其中from_string中的每个字符的所有出现都被to_string中的相应字符替换。expr中不在from_string中的字符不会被替换。如果expr是一个字符串,那么你必须把它放在单引号中。 from_string的参数可以包含比to_string更多的字符。在这种情...转载 2018-05-24 10:49:28 · 1753 阅读 · 0 评论 -
Oracle中判断一个字符串是否为全数字
在一个字段上使用sum()聚合函数的时候报“ORA-01722:无效数字”错误,原因是该字段值有非数字其中一个解决方法是将只要包含非数字的都替换为0select sum(to_number(nvl2(translate(LA_J_B, '/1234567890.', '\'), '0', LA_J_B))) as LA_J_Bfrom BUS_BB_RLXHL12这里使用到了两个关键函数,一个是...转载 2018-05-24 10:51:54 · 1061 阅读 · 0 评论 -
拉链表简介
拉链表简介(转载,以mysql为例)在数据仓库中,经常会用历史数据和时间维度做数据分析。而保存历史数据最常见的方案是使用拉链表进行存储。首先创建测试表:create table deal_order( order_id varchar(20) comment '订单ID', order_updatetime date comment '订单更新时间', ...转载 2018-05-24 15:24:39 · 591 阅读 · 1 评论 -
odata
开放数据协议(Open Data Protocol,缩写OData)是一种描述如何创建和访问Restful服务的OASIS标准。该标准由微软发起,前三个版本1.0、2.0、3.0都是微软开放标准,遵循 [1] 。第四个版本4.0于2014年3月17日在OASIS投票通过成为开放工业标准 [2] 。程序数据库格式标准化的开源数据协议为了增强各种网页应用程序之间的数据兼容性,微软公司...转载 2018-05-29 20:04:50 · 897 阅读 · 0 评论 -
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var mysql 启动不了
ps -A | grep -i mysqlkill 列出来的进程service mysql start我的问题就解决了----------------------------------------------Fedora8启动mysql 报错:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ...转载 2018-05-31 19:18:58 · 9518 阅读 · 1 评论 -
SQL 通用数据类型
SQL 通用数据类型数据类型定义列中存放的值的种类。SQL 通用数据类型数据库表中的每个列都要求有名称和数据类型。Each column in a database table is required to have a name and a data type.SQL 开发人员必须在创建 SQL 表时决定表中的每个列将要存储的数据的类型。数据类型是一个标签,是便于 SQL 了解每个列期望存储什么...原创 2018-05-31 20:07:28 · 399 阅读 · 0 评论 -
如何用SQL语句模糊查询数据库中的表名
有时候,数据库中的表名太多,而你又不是清楚地记得表名,那么你可以用下面SQL语句,模糊地查询你想要的表名:select table_name,tablespace_name,status,temporary from user_tables where table_name like '%tab_name%';tab_name 为要查表名的其中一部分。如:你要查表名中有order的表...原创 2018-11-20 14:33:49 · 26292 阅读 · 2 评论 -
关于数据库优化1——关于count(1),count(*),和count(列名)的区别,和关于表中字段顺序的问题
1.关于count(1),count(*),和count(列名)的区别 相信大家总是在工作中,或者是学习中对于count()的到底怎么用更快。一直有很大的疑问,有的人说count(*)更快,也有的人说count(列名)更快,那到底是谁更快,我将会在本文中详细介绍一下到底是count(1),count(*)和count(列明)的区别,和更适合的使用场景。 往常在工作中有人会说cou...转载 2018-11-21 10:42:13 · 523 阅读 · 0 评论 -
SQL语句中exists和in的区别
查询中涉及到的两个表,一个user和一个order表,具体表的内容如下: user表: order表: in 一、确定给定的值是否与子查询或列表中的值相匹配。in在查询的时候,首先查询子查询的表,然后将内表和外表做一个笛卡尔积,然后按照条件进行筛选。所以相对内表比较小的时候,in的速度较快。 具体sql语句如下: 1 SELECT ...转载 2018-11-21 19:03:30 · 324 阅读 · 0 评论 -
主键和索引的区别
主键(PRIMARY KEY )来自MSDN的描述:表通常具有包含唯一标识表中每一行的值的一列或一组列。这样的一列或多列称为表的主键 (PK),用于强制表的实体完整性。在创建或修改表时,您可以通过定义 PRIMARY KEY 约束来创建主键。一个表只能有一个 PRIMARY KEY 约束,并且 PRIMARY KEY 约束中的列不能接受空值。由于 PRIMARY KEY 约束可保证数据...转载 2018-11-28 11:23:18 · 261 阅读 · 0 评论 -
MySQL修改密码的四种方法
方法1: 用SET PASSWORD命令 首先登录MySQL。 格式:mysql> set password for 用户名@localhost = password('新密码'); 例子:mysql> set password for root@localhost = password('123'); 方法2:用mysqladmin 格式:mysqladmin -...转载 2018-12-05 11:00:24 · 520 阅读 · 0 评论 -
数据库高可用架构(MySQL、Oracle、MongoDB、Redis)
一、MySQLMySQL小型高可用架构方案:MySQL双主、主从 + Keepalived主从自动切换服务器资源:两台PC Server优点:架构简单,节省资源缺点:无法线性扩展,主从失败之后需要手动恢复主从架构MySQL中型高可用架构方案:MMM + MySQL双主 + 多从高可用方案服务器资源:1、至少五台PC Server,2台MySQL主库,2台...转载 2019-01-29 16:34:31 · 542 阅读 · 0 评论 -
MySQL数据库和MongoDB数据库的区别
MySQL关系型数据库。在不同的引擎上有不同 的存储方式。查询语句是使用传统的sql语句,拥有较为成熟的体系,成熟度很高。开源数据库的份额在不断增加,mysql的份额页在持续增长。缺点就是在海量数据处理的时候效率会显著变慢。Mongodb非关系型数据库(nosql ),属于文档型数据库。先解释一下文档的数据库,即可以存放xml、json、bson类型系那个的数据...转载 2019-01-29 16:58:30 · 1635 阅读 · 0 评论 -
sqlyog注册码激活
姓 名(Name):ttrar序 列 号(Code):8d8120df-a5c3-4989-8f47-5afc79c56e7c或者(OR)姓 名(Name):ttrar序 列 号(Code):59adfdfe-bcb0-4762-8267-d7fccf16beda或者(OR)姓 名(Name):ttrar序 列 号(Code):ec38d297-0543-4679-b098...转载 2018-05-23 13:39:18 · 1719 阅读 · 0 评论 -
Hadoop Hive sql语法详解
Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL 去查询分析需要的内容,这套SQL 简称Hive SQL,使不熟悉mapreduce 的用户很方便的利用SQL ...转载 2018-05-16 20:01:31 · 244 阅读 · 0 评论 -
数据仓库之 ETL
ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、交互转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库。ETL是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。大多数据仓库的数据架构可以...转载 2018-05-16 11:31:17 · 938 阅读 · 0 评论 -
执行事务
事务机制:确保数据一致性事务具有4个属性:1.原子性:一个事务是一个不可分割的工作单位,事务中包括的各个操作要么都做,要么都不做。2.一致性:事务必须是使数据库从一个一致性状态变到另一个一致性状态。3.隔离性:一个事务的执行不能被其他事务干扰。4.持久性:一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。【注意】1.mysql中默认sql语句的结...原创 2018-04-08 16:36:12 · 216 阅读 · 0 评论 -
DML (数据操纵语言)和DDL(数据定义语言)
MySQL的rollback操作只适用于DML(data manipulation language)数据操纵语言:select,insert,update,delete.DDL(data definition language)数据定义语言,比DML要多:create,alter,drop等。DDL主要是用在定义或者改变表的结果,数据类型,表的约束等初始化工作上,他们大多在建立表的时候使用。...原创 2018-04-08 16:38:54 · 922 阅读 · 1 评论 -
什么是数据库的索引?索引的优缺点有哪些?(数据库中的索引)
1.索引就像是书的目录,是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度。索引中包含由表或视图中的一列或多列生成的键。这些键存储在一个结构(BTree)中,使SQL可以快速有效地查找与键值关联的行。2. 为什么要建立索引,即索引的优点:1) 建立索引的列可以保证行的唯一性,生成唯一的rowId;2) 建立索引可以有效缩短数据的检索时间;3) 建立索引可以加快表与表之间的连接;4) 为...原创 2018-04-08 17:14:20 · 3970 阅读 · 2 评论 -
什么样的表和列需要建立索引
数据量大的,经常进行查询操作的表要建立索引1)表与表连接用于多表联合查询的约束条件的字段应当建立索引;2)用于排序的字段可以添加索引,用于分组的字段应当视情况看是否需要添加索引。添加多列索引的时候,对应的多条件查询可以触发该索引的同时,索引最左侧的列的单条件查询也可以触发。3)如果有些表注定只会进行查询所有,也就没必要添加索引,因为查询全部只能进行全量搜索即扫描全表。...原创 2018-04-08 17:24:20 · 2349 阅读 · 0 评论 -
建立索引需要遵守什么原则
表中字段建立索引应该遵循几个原则:1)越小的数据类型通常更好:越小的数据类型通常在磁盘、内存中都需要更少的空间,处理起来更快。2)简单的数据类型更好:整型数据比起字符,处理开销更小,因为字符串的比较更复杂,处理起来也更耗时。3)尽量避免NULL:应该指定列为NOT NULL。含有空值的列很难进行查询优化,因为它们使得索引、索引的统计信息以及比较运算更加复杂。你应该用0、一个特殊的值或者一个空串代替...原创 2018-04-08 17:32:07 · 2270 阅读 · 0 评论 -
varchar与char的区别是什么?大小限制?utf8字符集下varchar最多能存多少个字符 。
答:char和varchar最大的不同就是一个是固定长度,一个是可变长度。由于是可变长度,因此存储的是实际字符串再加上一个记录字符串长度的字节。如果分配给char或varchar列的值超过 列的最大长度,则对值进行裁剪。1)varchar(M)和char(M),M都表示字符数.varchar的最大长度为65535个字节,不同的编码所对应的最大可存储的字符数不同。2)char最多可以存放255个字符...原创 2018-04-08 17:48:29 · 2798 阅读 · 0 评论 -
SQL联合查询(内联、左联、右联、全联)的语法
概述: 联合查询效率较高,举例子来说明联合查询:内联inner join 、左联left outer join 、右联right outer join 、全联full outer join 的好处及用法。 联合查询效率较高,以下例子来说明联合查询(内联、左联、右联、全联)的好处:T1表结构(...转载 2018-04-09 14:51:55 · 1111 阅读 · 1 评论 -
MySQL之——查询重复记录、删除重复记录方法大全
查找所有重复标题的记录:SELECT * FROM t_info a WHERE ((SELECT COUNT(*) FROM t_info WHERE Title = a.Title) > 1) ORDER BY Title DESC ; 一、查找重复记录1、查找全部重复记录 Select * From 表 Where 重复字段 In (Select 重复字段 From 表 Group B...转载 2018-04-09 21:23:28 · 137 阅读 · 0 评论 -
insert中overwrite作用
insert overwrite的用法: INSERT OVERWRITE TABLE tablename1 [PARTITION \(partcol1=val1, partcol2=val2 ...) [IF NOT EXISTS]] \ select_statement1 FROM from_statement; 如果查询出来的数据类型和插入表格对应的列数据类型不一致,将会进行转换...原创 2018-05-17 09:46:40 · 47606 阅读 · 1 评论 -
PL/SQL Developer远程连接数据库
一、 资源准备连接Oracle的client工具与oci库文件pl/sql Developer客户端工具二、 配置a. 安装SqlDeveloper12点击Next 点击Next 点击Install 点击桌面生成的PLSQL Developer 12 (64 bit)在登录的弹框中,点击取消,进行不登录操作。 b. 配置Oracle主目录与OCI链接库i. 解压连接Oracle的client工...转载 2018-05-18 19:56:53 · 815 阅读 · 0 评论 -
MySQL实用命令
MySQL实用命令取自"http://kb.discuz.net/index.php?title=MySQL%E5%AE%9E%E7%94%A8%E5%91%BD%E4%BB%A4"Wikipedia,自由的百科全书一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1、例1:连接到本机上的MYSQL 首先在打开DOS窗口,然后进入mysql安装目录下...转载 2018-05-06 23:44:13 · 153 阅读 · 0 评论 -
SQL 学习总结------SQL的分类
一、SQL语言的分类:SQL语言大体可分为DDL、DCL和DML三类。其中,DDL又包含CREATE,ALTER和DROP;DCL包含GRANT和REVOKE,而DML中最常见的有SELECT,INSERT,UPDATE,和DELETE。1、 DDL(数据定义语言)◎ CREATE语句 SQL> CREATE TABLE example_1 2 (col...转载 2018-05-06 23:53:32 · 134 阅读 · 0 评论 -
Postgresql查询表的大小
--数据库中单个表的大小(不包含索引)select pg_size_pretty(pg_relation_size('表名'));--查出所有表(包含索引)并排序SELECT table_schema || '.' || table_name AS table_full_name, pg_size_pretty(pg_total_relation_size('"' || table_sch...转载 2018-05-21 14:41:50 · 1289 阅读 · 0 评论 -
历史拉链表
1. 全量表:每天的所有的最新状态的数据。 2. 增量表:每天的新增数据,增量数据是上次导出之后的新数据。 3. 拉链表:维护历史状态,以及最新状态数据的一种表,拉链表根据拉链粒度的不同,实际上相当于快照,只不过做了优化,去除了一部分不变的记录而已,通过拉链表可以很方便的还原出拉链时点的客户记录。 4. 流水表: 对于表的每一个修改都会记录,可以用于反映实际记录的变更。 拉链表通常是...转载 2018-05-16 10:25:25 · 1083 阅读 · 0 评论 -
数据仓库数据模型之:极限存储–历史拉链表
在数据仓库的数据模型设计过程中,经常会遇到这样的需求: 1.数据量比较大; 2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等; 3.需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态,比如,查看某一个用户在过去某一段时间内,更新过几次等等; 4. 变化的比例和频率不是很大,比...转载 2018-05-16 10:35:17 · 866 阅读 · 0 评论