引言

随着计算机系统在处理能力、存储能力等方面,特别是计算机软件技术的不断提高,使得信息处理技术得到飞速发展。

数据处理主要分为两大类:联机事物处理OLTP、联机分析处理OLAP。OLTP也就是传统的关系型数据库应用,主要功能是基本的、日常的事务处理操作,对响应时间要求非常高,是一种面向应用的生产系统。OLAP是基于数据仓库的面向主题的信息分析处理过程。

什么是数据仓库

与传统关系型数据库不同的是,数据仓库储存的是历史数据,针对数据仓库系统的查询大都非常复杂,特别消耗系统资源,对系统的可扩展能力和并行处理能力要求很高。数据仓库主要面向业务人员和管理人员,用来帮助企业管理人员作出更符合业务发展规律的决策,所以也称数据仓库为决策支持系统。数据仓库的数据来自多个数据库,并且按照预先定义好的模型对抽取的数据进行转换过滤,再将结果存放到数据仓库中。

Teradata 数据库

为了解决传统数据库在大量数据的查询分析等方面的局限性,Teradata公司推出了Teradata关系数据库管理系统。Teradata采用标准的SQL查询语言,适用于处理复杂查询数据仓库应用。

架构

Teradata的主要组件是解析引擎、BYNET和访问模块处理器(AMP)

  • 解析引擎负责从客户端接收查询命令并制定执行计划。
  • BYNET相当于网络层,它从解析引擎接收执行计划并发送给相应的AMP,AMP的选择采用哈希算法实现。
  • 数据表中的记录均匀分布在个AMP之间,每个AMP与存储数据的一组磁盘相关联。从BYNET接收数据和执行计划后,进行类型转换、聚合、过滤和排序等操作并将数据存储到与其关联的磁盘中。

操作

使用Teradata提供的免费Teradata数据库开发人员版本可以进行开发测试,通过Teradata SQL Assistant或BTEQ等数据库管理工具可以对数据仓库进行操作,默认用户为DBC,SQL语法和其它数据库区别不大,但其独特的内部结构适合需要处理复杂数据查询的应用。

SQL 语法

Teradata使用了标准的SQL语法并在此基础上进行了扩展,以增强数据库管理系统的功能。所有的系统对象如Table、View、Macro等存储在数据字典中,数据字典的所有者为DBC用户,在客户端可以调用数据字典中的对象访问数据库。刚开始使用Teradata时可以使用其帮助系统提供的命令HELP、SHOW、EXPLAIN查看数据库中各种对象的结构以及SQL请求的执行过程,对理解Teradata工作原理以及各种SQL语句的使用有很大帮助。

体会

在如今快速发展的大数据革命时代,数据积累量越来越多,其中蕴含着大量重要的信息,通过对这些数据进行分析和综合处理,可以发掘出对企业发展、政府管理部门至关重要的业务信息,帮助管理人员作出合理的决策。

当然,传统的关系型数据库也是可以完成基本的事务处理和数据分析操作的,但是当数据量非常庞大时,数据库就显得无能为力了。比如,一个早期的电商平台,只需一个网站、几台服务器、一个MySQL就可以运营了,当客户增多、数据量增大时,只需采用多台服务器、多个数据库的方式就可以勉强应付,但是随着数据量的不断增长,数据之间的关系也越来越复杂,管理人员此时关心的不是“昨天营业额是多少”这类问题,而是“哪些用户是高价值用户”、“某商品的销售量与哪些因素有关”等,这时就需要建立数据仓库了,Teradata数据仓库是专门针对决策支持系统的特点而开发的关系数据库管理系统,相对于其它商业数据库,Teradata更适合需要处理大数据量及数据分析的应用,可以极大提高应用的性能。

数据库可以存储和处理数据,而数据仓库的职责则是发掘数据的价值,最大程度地利用数据。

本文为作者kMacro原创,转载请注明来源:http://www.jianshu.com/p/e800fd4c5c08

大数据 - Teradata学习体会的更多相关文章

  1. 大数据Hadoop学习之搭建hadoop平台(2.2)

    关于大数据,一看就懂,一懂就懵. 一.概述 本文介绍如何搭建hadoop分布式集群环境,前面文章已经介绍了如何搭建hadoop单机环境和伪分布式环境,如需要,请参看:大数据Hadoop学习之搭建had ...

  2. 大数据学习---大数据的学习【all】

    大数据介绍 什么是大数据以及有什么特点 大数据:是指无法在一定时间内用常规软件工具对其内容进行抓取.管理和处理的数据集合. 大数据是一种方法论:“一切都被记录,一切都被数字化,从数据中寻找需求,寻找知 ...

  3. Spark大数据的学习历程

    Spark主要的编程语言是Scala,选择Scala是因为它的简洁性(Scala可以很方便在交互式下使用)和性能(JVM上的静态强类型语言).Spark支持Java编程,但对于使用Java就没有了Sp ...

  4. 大数据Python学习大纲

    最近公司在写一个课程<大数据运维实训课>,分为4个部分,linux实训课.Python开发.hadoop基础知识和项目实战.这门课程主要针对刚从学校毕业的学生去应聘时不会像一个小白菜一样被 ...

  5. 大数据Hadoop学习之搭建Hadoop平台(2.1)

     关于大数据,一看就懂,一懂就懵. 一.简介 Hadoop的平台搭建,设置为三种搭建方式,第一种是"单节点安装",这种安装方式最为简单,但是并没有展示出Hadoop的技术优势,适合 ...

  6. 大数据Hadoop学习之了解Hadoop(1)

    关于大数据,一看就懂,一懂就懵. 大数据的发展也有些年头了,如今正走在风口浪尖上,作为小白,我也来凑一份热闹. 大数据经过多年的发展,有着不同的实现方案和分支,不过,要说大数据实现方案中的翘楚,那就是 ...

  7. Java开发者想尝试转行大数据,学习方向建议?

      ​前言 相信很多Java开发者都对大数据有一定的了解,随着大数据时代的到来,也有很多Java程序员想要转行大数据.大数据技术中大多数平台使用的都是Java语言,因此,对于大数据技术的学习来说,Ja ...

  8. 布客·ApacheCN 编程/后端/大数据/人工智能学习资源 2021.7

    公告 ApacheCN 翻译预计将于半年内恢复. 我们的开源项目必须有中文的 README,如果是文档类项目,必须全部中文,否则将会被清理.请大家贡献项目时一定要留意. 我们目标是[财务自由+情感自由 ...

  9. 布客·ApacheCN 编程/后端/大数据/人工智能学习资源 2020.11

    公告 我们始终与所有创作者站在一起,为创作自由而战.我们还会提供一切必要的技术支持. 我们全力支持科研开源(DOCX)计划.希望大家了解这个倡议,把这个倡议与自己的兴趣点结合,做点力所能及的事情. 我 ...

随机推荐

  1. Oracle日期查询:季度、月份、星期等时间信息

    --oracle有关时间信息 Select to_char(sysdate,'Q') from dual;--指定日期的季度 Select to_char(sysdate,'MM') from dua ...

  2. super函数没有那么简单-super原理剖析

    开始之前,先出一道题: #super函数探讨 class A(object): def __init__(self): print 'A.__init__' class B(A): def __ini ...

  3. 使用Coding.net+Hexo+node.js+git来搭建个人博客

    使用Coding.net来搭建基于Hexo的博客 一.准备工作 什么是Coding.net Coding可以说,就是国产的Github,但是,有一个功能使它似乎超越了GitHub-那就是 Web ID ...

  4. 高级java高并发,高性能,分布式,高可用,负载均衡,系统架构实战

    java架构师.集群.高可用.高可扩 展.高性能.高并发.性能优化.Spring boot.Redis.ActiveMQ.Nginx.Mycat.Netty.Jvm大型分布 式项目实战 视频课程包含: ...

  5. 深入浅出数据结构C语言版(14)——散列表

    我们知道,由于二叉树的特性(完美情况下每次比较可以排除一半数据),对其进行查找算是比较快的了,时间复杂度为O(logN).但是,是否存在支持时间复杂度为常数级别的查找的数据结构呢?答案是存在,那就是散 ...

  6. python的white循环

    # _*_coding:utf-8 _*_import datetimename = 'gyf'passd = 123count =0now = datetime.datetime.now()whil ...

  7. django模板(过滤器)

    -------------------django内建的过滤器-------------------1.add 使用形式为:{{ value | add: "2"}} 意义:将va ...

  8. ios和android的发展前景比较

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt164 一直都有很多人在讨论未来的IOS和android市场哪个前景更好,现在 ...

  9. 团队作业4--第一次项目冲刺(Alpha版本) 5

    一.Daily Scrum Meeting照片 二.燃尽图 三.项目进展 对前两天完成的功能进行整合 测试完成功能(测试算法是否有bug,界面设计是否人性化,适合用户使用.) 四.困难与问题 在对前两 ...

  10. 201521123020《Java程序设计》第8周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 2. 书面作业 本次作业题集集合 1.List中指定元素的删除(题目4-1) 1.1 实验总结 运用到了equ ...