精华内容
下载资源
问答
  • MapReduce关系代数运算——投影 关系沿用上一个选择运算关系R,StudentR类也是一致的,本博文中就不赘述了。 MapReduce程序设计 Projection import org.apache.hadoop.conf.Configuration; import org....

    MapReduce关系代数运算——投影

    关系沿用上一个选择运算的关系R,StudentR类也是一致的,本博文中就不赘述了。

    MapReduce程序设计

    • Projection
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.Path;
    import org.apache.hadoop.io.LongWritable;
    import org.apache.hadoop.io.NullWritable;
    import org.apache.hadoop.io.Text;
    import org.apache.hadoop.mapreduce.Job;
    import org.apache.hadoop.mapreduce.Mapper;
    import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
    import org.apache.hadoop.mapreduce.lib.input.TextInputFormat;
    import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
    import org.apache.hadoop.mapreduce.lib.output.TextOutputFormat;
    
    import java.io.IOException;
    
    public class Projection {
        public static class ProjectionMap extends Mapper<LongWritable, Text, Text, NullWritable> {
            private int col;
            @Override
            protected void setup(Context context) throws IOException, InterruptedException {
                col = context.getConfiguration().getInt("col", 0);
            }
    
            @Override
            protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
                StudentR record = new StudentR(value.toString());
                context.write(new Text(record.getCol(col)), NullWritable.get());
            }
        }
    
        public static void main(String[] args) throws IOException, ClassNotFoundException, InterruptedException {
            Configuration conf = new Configuration();
            conf.setInt("col", Integer.parseInt(args[2]));
            Job projectionJob = Job.getInstance(conf, "ProgectionJob");
    
            projectionJob.setJarByClass(Projection.class);
            projectionJob.setMapperClass(ProjectionMap.class);
            projectionJob.setMapOutputKeyClass(Text.class);
            projectionJob.setMapOutputValueClass(NullWritable.class);
            projectionJob.setNumReduceTasks(0);
    
            projectionJob.setInputFormatClass(TextInputFormat.class);
            projectionJob.setOutputFormatClass(TextOutputFormat.class);
    
            FileInputFormat.addInputPath(projectionJob, new Path(args[0]));
            FileOutputFormat.setOutputPath(projectionJob, new Path(args[1]));
    
            projectionJob.waitForCompletion(true);
            System.out.println("finished!");
    
        }
    }
    
    

    运行

    像之前的WordCount一样将代码打包出来,生成Projection.jar文件,但是在终端运行的时候,需要注意的是不只是输入两个路径,而应该输入选择的条件。如本例中,我们要输出学生成绩信息,则应该选定第四列grade
    字段:

    hadoop jar Projection.jar /input /output 4
    

    查看输出结果:
    输出结果
    欢迎查看我的博客:Welcome To Ryan’s Home

    展开全文
  • 2、投影运算,从一个关系R所有属性中选择某些指定属性;3、连接运算,是从两个关系的广义笛卡尔积中选取属性间满足一定条件的元组形成一个新关系。关系运算关系的基本运算有两类:一类是传统的集合运算(并、差、交等...

    90724ad2727e464a1e1625c82d65be91.png

    关系数据库中的关系运算包括哪些?

    1、选择运算,从一个关系R中选择出满足给定条件的所有元组;

    2、投影运算,从一个关系R所有属性中选择某些指定属性;

    3、连接运算,是从两个关系的广义笛卡尔积中选取属性间满足一定条件的元组形成一个新关系。

    关系运算

    关系的基本运算有两类:一类是传统的集合运算(并、差、交等),另一类是专门的关系运算(选择、投影、连接、除法、外连接等),有些查询需要几个基本运算的组合,要经过若干步骤才能完成。

    一、传统的集合运算

    1、并(UNION) 设有两个关系R和S,它们具有相同的结构。R和S的并是由属于R或属于S的元组组成的集合,运算符为∪。记为T=R∪S。

    2、差(DIFFERENCE) R和S的差是由属于R但不属

    于S的元组组成的集合,运算符为-。记为T=R-S。

    3、交(INTERSECTION) R和S的交是由既属于R又属于S的元组组成的集合,运算符为∩。记为T=R∩S。 R∩S=R-(R-S)。

    二、选择运算

    从关系中找出满足给定条件的那些元组称为选择。其中的条件是以逻辑表达式给出的,值为真的元组将被选取。这种运算是从水平方向抽取元组。 在FOXPRO中的短语FOR和WHILE均相当于选择运算。

    如:LIST FOR 出版单位='高等教育出版社' AND 单价<=20

    三、投影运算

    从关系模式中挑选若干属性组成新的关系称为投影。这是从列的角度进行的运算,相当于对关系进行垂直分解。在FOXPRO中短语FIELDS相当于投影运算。 如: LIST FIELDS 单位,姓名

    四、连接运算

    连接运算是从两个关系的笛卡尔积中选择属性间满足一定条件的元组。

    五、除法运算

    在关系代数中,除法运算可理解为笛卡尔积的逆运算。

    设被除关系R为m元关系,除关系S为n元关系,那么它们的商为m-n元关系,记为R÷S。商的构成原则是:将被除关系R中的m-n列,按其值分成若干组,检查每一组的n列值的集合是否包含除关系S,若包含则取m-n列的值作为商的一个元组,否则不取。

    推荐教程:《MySQL教程》

    展开全文
  • 选择 选择运算是从指定的关系中选出满足给定条件(用逻辑表达式表达)的元组而组成一个新的关系。 进行选择运算的对象是“一个关系当中某一个属性的值”, ...投影运算是从关系R当中选取若干属性,并用这些属性组

    选择

    选择运算是从指定的关系中选出满足给定条件(用逻辑表达式表达)的元组而组成一个新的关系。

    进行选择运算的对象是“一个关系当中某一个属性的值”,

    选择运算是将一张表当中的某一属性进行筛选(比如:将性别(sex)这列当中性别为女的元组筛选出来组成一张新表)

    实列:

    进行选择运算:将选择出studentNo当中值大于100的元组重新组合成一个新的关系

    结果如下:

    将选择出classNo当中值大于2的元组重新组成一张新的关系

    投影

    投影运算是从关系R当中选取若干属性,并用这些属性组成一个新的关系

    投影运算的对象是“一个关系中的若干属性”

    例如:

    在student表当中,选出Sname和Sdept这两个属性重新组成一个关系

           结果如下:

     

     

    展开全文
  • 关系运算的机理有什么用 我们学习关系运算的机理,对我们理解数据库查询操作非常重要 所以我们进行关系操作时很大程度上需要明白关系操作以及关系之间的...2.投影运算 投影就是对表在垂直方向上,对列进行筛选。 例:
  • 关系运算

    万次阅读 多人点赞 2019-03-21 14:34:02
    关系运算运算对象是关系运算结果亦是关系关系代数的运算符包括两类:传统的集合运算和专门的关系运算两类。 传统的集合运算是从关系的水平方向,即行的角度来进行 而专门的关系代数不仅涉及行,还涉及列。 ...
    关系代数是一种抽象的查询语言,它用对关系的运算来表达查询。
    

    关系运算的运算对象是关系,运算结果亦是关系,关系代数的运算符包括两类:传统的集合运算和专门的关系运算两类。
    传统的集合运算是从关系的水平方向,即行的角度来进行
    而专门的关系代数不仅涉及行,还涉及列。

    在这里插入图片描述

    传统的集合运算

    传统的集合运算是二目运算,包括并,差,交,笛卡尔积4种运算。

    并(Union,表示为U):两个表或集合的联合。

    在这里插入图片描述
    例:R1=(A,B),R2=(B,C,D)。
    则R1UR2=(A,B,C,D)。
    注:U集里不包含重复的属性。

    差(Difference,表示位-):两个表或集合的区别。

    例:R1=(A,B),R2=(B,C,D)。

    则R1-R2=(A)。
    在这里插入图片描述
    注:-集里的元素个数不能大于初始。

    交(Intersection,∩):两个及以上的集合或表中具有相同属性的集合。在这里插入图片描述
    笛卡儿积(Product,表示为X):两个表或集合的组合个数。

    在这里插入图片描述
    例1:R1=(A,B),R2=(B,C,D)。

    则R1xR2=(AB,AC,AD,BB,BC,BD)。

    注:R1xR2集的元素个数为R1的元素个数乘R2的元素个数;

    专门的关系运算

    投影(Project,表示为π):从表中抽取特定的列值。

    表达式:πM(R)={ t(M) |t∈R }.

    释义:R表示一个关系表;

    T表示R中的一条横向的记录;

    M表示T中的M列的交叉属性值;

    πM(R)={ t(M) |t∈R }表示在关系表R中T行M列的一个属性值;
    在这里插入图片描述

    选择(Select,表示为σ–Sigma):从表中选取与给定条件相符的行。在这里插入图片描述

    表达式:σA=a(R)={ t(A)=a |t∈R }.

    A表示R表中的一个字段或属性类型;

    t∈R表示R表中的一条记录;

    t(A)=a表示记录t中A属性的具体值等于a;

    σA=a(R)={ t(A)=a |t∈R }表示在R表中选择A=a的一条记录;

    联接(join,表示为▷◁):通过共同属性连接两个表。

    连接运算中有两种最为常见的连接。一种是等值连接还有一种为自然连接。等值连接为从R和S的笛卡尔积中选取那些R和S的公共属性值都相等的那些元组,进行等值连接。
    自然连接是一种特殊的等值连接,在等值连接的基础上去掉那些R和S都有的公共属性列,就是自然连接。
    自然连接
    表现在数据库中简单来说是通过字段值相同的条件下,将两个表中的记录连接在一起。

    除(Division,表水为÷):除运算需要满足两个条件:表R和表S的属性集合要有相同性;R÷S的商是R和S非相同属性集合的一个投影的子集,该子集和S的笛卡尔积必须包含在R中。在这里插入图片描述
    展开全文
  • 专门的关系运算: 选择 投影 连接 除运算 1.设关系模式为R(A1,A2,⋯&amp;amp;ThinSpace;,An)R(A_1,A_2,\cdots,A_n)R(A1​,A2​,⋯,An​), 一个关系设为R。t∈Rt\in Rt∈R 表示t是R的一个元祖。 t[Ai]t[A_i]...
  • 数据库关系运算:自然连接,投影,交,除,并

    万次阅读 多人点赞 2019-04-23 21:49:07
    1.自然连接 自然连接(natural join) 自然连接是一种特殊的等值连接,他要求两个关系表中进行...投影是选取关系中列的子集。设模式R上关系r,X是R上属性的子集(x就是列),r到 X上的投影r`表示为: 投影操作是...
  • 计算机二级 公基础——关系运算计算机二级公共基础——关系运算赏俺斗豫啊杠钱撒镶溪坎辫锡沿妈童党贡磐后惨淘未换忌惜器沂练敛谰欠计算机二级 公基础——关系运算计算机二级 公基础——关系运算关系代数的基本运算...
  • 数据库原理之关系数据库关系运算

    万次阅读 多人点赞 2018-12-06 10:10:31
    投影运算 投影操作主要是从列的角度进行运算,但投影之后不仅取消可原关系中的某些列,而且还可能取消某些元组(避免重复行) 连接运算 连接运算又有等值连接,自然连接,半连接,左外连接,右外连接,全外...
  • 正文如下: 各种运算符如下: ...数据库的传统集合运算包括:并、差、交、笛卡尔积运算。这四种运算都与数学上的同名运算概念相似。 并: 差: 交: 笛卡尔积: 广义笛卡尔积(Extended Cartes...
  • 一、选择选择又称为限制,它是在关系R中选择满足给定条件的诸元组,记作:σf(R)={t|t∈R∧F(t)=‘真’}其中F表示选择条件,它是一个逻辑表达式,取逻辑值‘真’或‘假’。逻辑表达式F的基本形式为:X1 θY1[φ X2 ...
  • 关系的基本运算只要分为两类,第一类是传统的集合操作:并、交、差、笛卡尔积(乘法)、笛卡尔积的逆运算(除法)。第二类是扩充的关系操作:投影(对关系的垂直分割)、选择(对关系的水平分割)、连接和自然连接...
  • 小插曲:小编在学习计算机二级的时候,苦于关系代数的关系运算理解,在网上百度很多的资源,大都是概念,而且是文本形式呈现的。个人喜好图文形式的理解,因此将做的比较好的ppt做成帖子供大家参考,如有错误,请...
  • 算术运算 算术运算:用于各类数值运算.包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(–)共七种. 算术运算简称运算。 指按照规定的法则和顺序对式题或算式进行运算,并求出结果的过程。包括...
  • 数据库 - 关系代数与关系运算

    万次阅读 2015-05-05 09:12:58
    专门的关系运算并(Union)R和S 具有相同的目n(即两个关系都有n个属性) 相应的属性取自同一个域R∪S 仍为n目关系,由属于R或属于S的元组组成 R∪S = { t|t  R∨t S } 差(Difference)R和S 具有相同的目n ...
  • 关系数据库关系运算

    2020-02-25 00:04:20
    选择 选择的逻辑表达式的基本形式为:XθY。其中θ代表比较运算符,它... 关系R上的投影是从关系R中选出若干属性列组成新的关系。它是从列的角度进行的运算。由于投影取消了某些列之后可能出现重复的行,应取消...
  • 投影运算

    千次阅读 2013-06-25 15:51:00
    姓名 年龄 职业A B 29 程序员B C 24 会计C D 30 董事长D E 32 ...1.投影是在关系中选取相应的属性列并删去重复行,组成一个新关系,它是对给定关系在垂直方向上进行的选取。如果新关系中包含重复元组,则要删除重...
  • 关系代数是一种抽象的查询语言,它用对关系运算来表达查询,其运算对象是关系运算结果亦为关系关系代数的运算符有两类:集合运算符和专门的关系运算符。传统的集合运算是从关系的“水平”方向即行的角度进行,...
  • 数据库关系运算

    2017-03-16 19:18:00
    前言 前面已经说了数据系统的概述了,关系模型是目前...学习和理解关系运算的机理,对于理解关系数据库中的数据查询机制有十分重要的意义。 我们可能知道多表查询的时候要消除重复多余的数据,那重复多余的数据...
  • 关系代数运算整理

    2013-04-16 15:18:02
    关于R S的例子,n目k元组:n个属性,k个行 关系代数运算的分类 传统的集合运算 并、差、交、广义笛卡尔积 专门的关系运算 选择、投影、连接、除
  • 专门关系运算:选择(σ)、投影(Π)、连接(∞)、除(÷); 传统的集合运算关系看成元组的集合,其运算是从关系的行角度来进行; 专门的关系运算不仅涉及行、还涉及列;(更高级的操作和查询) ...
  • 关系运算及元组演算

    千次阅读 2019-10-10 15:51:11
    关系代数的基本运算主要有并、交、差、笛卡尔积、选择、投影、连接和除法运算。 (1)并。计算两个关系在集合理论上的并集,即给出关系R和S(两者有相同元/列数),R∪S的元组包括R和S所有元组的集合,形式定义如下...
  • 关系代数 Relational Algebra中,一元运算符有选择select、投影project、重命名remane,其余的包括并运算union、集合差set diffetence、笛卡尔积cartesian product等为二元运算符。下面学习它们的基本使用。 一、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 36,669
精华内容 14,667
关键字:

关系运算投影运算