- 浏览: 661885 次
- 性别:
- 来自: 深圳
博客专栏
-
Hadoop学习
浏览量:251950
最新评论
-
leibnitz:
请问,你知道在FSEdigLog#loadFSEdits()时 ...
Hadoop学习二十三:Hadoop-Hdfs FSDirectory 源码 -
jiaqing_blog:
七.等待队列(本是Object里的方法,但影响了线程)noti ...
多线程总结二:线程的状态转换 -
haaarySun:
虽然是三年前的帖子,但还是想回复博主,logger是继承了ca ...
Java日志学习三:Apache Log4j源码浅析 -
annmi_cai:
好好学习,天天向上!
Hadoop学习四:Hadoop-Hdfs NameNode -
emotionText:
楼主你好!我运行报错SLF4J: Class path con ...
Hadoop学习三十:Win7 Eclipse调试Centos Hadoop2.2-Mapreduce
文章列表
一.什么时候使用视图
某一张表(以下把原始表称为基表)里面存放简单数据,需要向外界提供一个简单的入口来获取这些简单数据的复制运算结果。考虑视图。
某几张基表具有一些共同特性,需要向外界提供一个简单的入口来获取这几张表所有的数据。强烈建议视图。
二.创建视图
CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
VIEW view_name [(column_list)]
AS select_statement
[WITH [CASCADED | LOCAL] CH ...
数据库学习二:数据库设计三范式
- 博客分类:
- 数据库
一.第一范式(确保字段的原子性)
定义:表里面的所有字段都是原子的,不可拆分的。
这里面有两个意思。一是可以拆封时,一定要拆分;二是不要乱拆分。
student_id 地址
这样的设计不符合原子性,我们在存放"地址"的时候,会插入一个很长的字符串。往往我们将"地址"划分为更小的不可拆分的单位。修改某个地址时,只需修改一个或者多个字段。
学生id 省份 市 街道
student_id course_id1 score1 course_id1 score2...
1 5 60 ...
一.前言
上文Hibernate学习二:Hibernate对象状态及转换中描述了hibernate中对象的三种状态。自然的,对session中的许多方法,save(),update(),saveOrUpdate(),merge(),delete()方法,我都有了自己的想法:传什么状态的对象做为这些方法的参数,方法返回给我什么状态的对象。为了验证自己的想法,也为了方便别人,遂做此文。
二.你需要知道以下知识
如果你不愿意参考上面一篇文章,没关系,记住下面三句话:
临时状态对象未和任何一个session相关联,在数据库里没有对应记录,对象没有数据库标识的 ...
一.Session的参与
普通对象就两种状态:new出一个对象,还有生命的状态;不被任何变量引用,被GC回收,死亡状态。
本文讨论的三种状态:在hibernate session的干预下,在这个对象和数据库的某条记录相关联的条件下,“new出一 ...
一.内外连接
内连接:inner join。只显示各表之间与关联条件(on)相匹配的列。
外连接:
left join。以左表为基础。显示左表所有 记录,不管是否与关联条件(on)相匹配;而右表只显示与关联条件相匹配的记录,不匹配的以null字符 ...
一.概念
现有一场景:一个管理员可以管理多个网吧,一个网吧可以被多个管理员管理。从中抽象出一个多对多的例子user-bar。
主控方user:多对多里面里面会有第三张表user_bar,由主控方维护这里面的外键记录,也就是创建一个user的时候必须指定其管理的bar。
被控方bar:没有权利更新外键记录。单独创建一个bar,不需要也不能指定其属于哪个user。
二.
CascadeType
CascadeType.MERGE:级联更新。创建一个user的时候,指定其管理哪些bar,如果某一个bar不存在,会在创建user的时候一起创建。
CascadeTyp ...
数据结构与算法学习七:归并排序
- 博客分类:
- 数据结构与算法
一. 排序方法
归并排序(Merge Sort)是利用"归并"技术来进行排序。归并是指将若干个已排序的子文件合并成一个有序的文件。
给定数组data[0...n],若data[0...m]和data[m+1...n]两个子数组均已经有序。
可以先将两个子数组合并 ...
数据结构与算法学习六:堆排序
- 博客分类:
- 数据结构与算法
一. 定义
任何关键字data[0...n]都可以组成一个完全二叉树。
堆就是一种特殊的二叉树:树中任一非叶结点的关键字均大于等于(或小于等于)其左右孩子(若存在)结点的关键字。
大于等于称为大根堆;小于等于称为小根堆。
二. 排序方法(以大根堆为例)
先将初始文件data[1..n]建成一个大根堆,此堆为初始的无序区。
将关键字最大的记录data[0](即堆顶)和无序区的最后一个记录data[n]交换,由此得到新的无序区data[0..n-1]和有序区data[n],且满足data[1..n-1]≤data[n]。
由于交换后新的根data[0]可能违反堆 ...
数据结构与算法学习五:快速排序
- 博客分类:
- 数据结构与算法
一.
排序方法
快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。
分治法的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题。 ...
数据结构与算法学习四:希尔排序
- 博客分类:
- 数据结构与算法
一.排序方法
先取一个小于n的整数increment作为第一个增量,把文件的全部记录分成increment个组。所有距离为increment的倍数的记录放在同一个组中。先在各组内进行直接插人排序。
取第二个增量increment(小于1中的increment)重复上 ...
数据结构与算法学习三:直接插入排序
- 博客分类:
- 数据结构与算法
一.排序方法
基本思想:被排列的数组data[0...n]。初始时,data[0]自成1个有序区,无序区为data[1..n];从i=1起直至i=n为止,依次将data[i]插入当前的有序区data[0..i-1]中,生成含n个记录的有序区。
将待插入元素data[i]从右向左依次与有序区中记录data[j](j=i-1,i-2,…,0)进行比较。
若data[j]大于data[i],则将data[j]后移一个位置。
若data[j]小于或等于data[i],则查找过程结束,j+1即为data[i]的插入位置。
二.动画演示
http://stu ...
数据结构与算法学习二:直接选择排序
- 博客分类:
- 数据结构与算法
一.排序方法
被排列的数组data[0...n],选定当前位置i=0作为最小值下标position;在data[i+1...n]区间每个元素与data[position]比较,记录新position,最后交换data[i]和data[position]。这样最小的元素就到了当前位置了。
当前位置i+1,重复1...
二.动画演示
http://student.zjzk.cn/course_ware/data_structure/web/flashhtml/zhijiexuanze.htm
三.Java代码
public static i ...
数据结构与算法学习一:冒泡排序
- 博客分类:
- 数据结构与算法
一.排序方法
将被排列的数组data[0...n]垂直排列,每个元素data[i]看作是一个气泡,气泡的重量就是data[i]的值。
从最下面一个气泡data[n]开始扫描,比较其与上一个气泡data[n-1]的重量,data[n] < data[n-1]则交换;然后比较data[n-1]与data[n-1-1]...一轮下来,最轻的气泡跑到了最上面data[0]的位置。
重复2过程,让第二轻的气泡跑到data[1]的位置;再次重复...
二.动画演示
http://student.zjzk.cn/course_ware/data_structure/we ...