前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >谈一谈|旅游信息资源交换系统设计规范解读(一)

谈一谈|旅游信息资源交换系统设计规范解读(一)

作者头像
算法与编程之美
发布2020-05-19 16:04:41
2690
发布2020-05-19 16:04:41
举报

1.前言

接下来的几周我会为大家解读该标准,该标准涉及到很多专业术语,所以我先为大家收集整理一下比较生僻的术语解释,以方便大家理解,为后续解读作铺垫。

2.专业术语解释

2.1ETL

2.1.1定义

ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库。

2.1.2理解

ETL所描述的过程,一般常见的作法包含ETL或是ELT(Extract-Load-Transform),并且混合使用。通常愈大量的数据、复杂的转换逻辑、目的端为较强运算能力的数据库,愈偏向使用ELT,以便运用目的端数据库的平行处理能力。

图解(ETL和ELT的区别):

ETL与ELT最大的区别就是转换环节是入库之前进行还是入库之后进行。

2.2LDAP

2.2.1定义

轻型目录访问协议(英文:Lightweight Directory Access Protocol,缩写:LDAP)是一个开放的,中立的,工业标准的应用协议,通过IP协议提供访问控制和维护分布式信息的目录信息。

2.2.2 理解

LDAP是一种通讯协议,是一种什么协议呢?是一个开放的,中立的,工业标准的应用协议,支持TCP/IP,也有人说,LDAP是一种数据库,那么LDAP与mysql数据库的不同体现在什么地方呢?

LADP与传统数据库的不同之处就体现在数据的组织方式上,它是一种有层次的、树形结构。我们怎么来理解这个层次、树形结构?

例子:在数据库中查找一个学生。

我们首先要知道是哪个院系(dc,Domain Component),然后再知道这个院系到这名学生所经过的所有组织单位(ou,Organization Unit),最后再查找这个学生的名字(uid,User Id)。

2.3ACID

原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。

怎么来理解,举一个简单的例子。小时候肯定都玩过电动,是不是先投币再启动游戏。投币动作为A,启动游戏为B。不可能出现A发生,B不发生。这两个操作必须同时完成。

一致性(Consistency)

事务前后数据的完整性必须保持一致。

也就是事务在开始之前和结束之后,数据库的完整性约束没有被破坏。举个例子,A向B转账,无论转账是否成功。A和B的账户总和是不会改变的。

隔离性(Isolation)

事务的隔离性是多个用户并发访问数据库时,数据库为每一个用户开启的事务,不能被其他事务的操作数据所干扰,多个并发事务之间要相互隔离。

持久性(Durability)

持久性是指一个事务一旦被提交,它对数据库中数据的改变就是永久性的,接下来即使数据库发生故障也不应该对其有任何影响。事务一旦对数据库进行改变,就不会无缘无故的回滚。

2.4 MOM

2.4.2 定义

MOM(Message Oriented Middleware)是面向消息的中间件,使用消息传送提供者来协调消息传送操作。MOM 需要提供 API 和管理工具。客户端使用api调用,把消息发送到由提供者管理的目的地。在发送消息之后,客户端会继续执行其他工作,并且在接收方收到这个消息确认之前,提供者一直保留该消息。

2.4.2 理解

MOM是消息中间件,即A和B通讯的中间人。MOM的作用就是帮助A和B解决消息传输的效率问题,不让AB直接发送消息。A将消息直接发送到消息中间件就算完成任务了,不需要像以前一样,必须等到B收到了A发送的消息后,才算结束。因此MOM供了基于存储和转发的应用程序之间的异步数据发送。AB直接不再需要直接通讯,大大地提高了效率。

2.4.3 图解

2.5 MQ

2.5.1 定义

MQ(Message Queue)消息队列,是基础数据结构中“先进先出”的一种数据结构。一般用来解决应用解耦,异步消息,流量削峰等问题,实现高性能,高可用,可伸缩和最终一致性架构。

2.5.1 理解

消息队列,是一种队列。队列即满足先进先出的原则。如图:

消息队列,即是将传输数据放在队列里面。为什么需要MQ呢?有了MQ,可以帮助我们解耦、削峰、异步等。

2.6 REST

2.6.1 理解

REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。

2.6.2 理解

如何理解简单地来理解REST,REST就是一组约束,它规定了接口怎么写。那么REST风格的接口到底是什么样子的呢?

利用url定位资源,用HTTP动词描述操作(GET、POST)。这样理解可能还是有一点模糊,那我再说通俗一点,就是接口名称是名词,不用动词。那怎么区分增删查改呢?当然是利用HTTP的动词啦!

url:sctu.edu.com/zhuogong/students 接口类型:POST

url:sctu.edu.com/zhuogong/students 接口类型:GET

url:sctu.edu.com/zhuogong/students 接口类型:DELETE

url:sctu.edu.com/zhuogong/students 接口类型:PUT

以上就是REST风格接口。接口名称都是名词(students),操作区别靠HTTP动词(GET)。

END

主 编 | 张祯悦

责 编 | 王 宇

where2go 团队

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法与编程之美 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
消息队列 CMQ 版
消息队列 CMQ 版(TDMQ for CMQ,简称 TDMQ CMQ 版)是一款分布式高可用的消息队列服务,它能够提供可靠的,基于消息的异步通信机制,能够将分布式部署的不同应用(或同一应用的不同组件)中的信息传递,存储在可靠有效的 CMQ 队列中,防止消息丢失。TDMQ CMQ 版支持多进程同时读写,收发互不干扰,无需各应用或组件始终处于运行状态。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档