博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【阅读】《千万不要让关系数据库跟这十样事物掺合到一起》要点
阅读量:7223 次
发布时间:2019-06-29

本文共 2114 字,大约阅读时间需要 7 分钟。

      刚刚看了《千万不要让关系数据库跟这十样事物掺合到一起》这篇文章,作为数据库方面的菜鸟,将其中的要点进行摘要整理,同时将一些概念单独拿出进行说明,方便日后回顾。

原文:

译文:

====================================

文章中说到的不应该与关系型数据库参合在一起的事物列举如下:

  1. 搜索 - 关键词:大多数 RDBMS 产品没能实现真正的搜索扩展
  2. 推荐 - 关键词:跨越式关系会让 RDBMS 非常被动
  3. 频繁交易 - 关键词:关系数据库在设计上并不适合这类任务
  4. 产品目录 - 关键词:产品数据映射采用字符映射方案是噩梦;采用图形类数据库,映射工作会变得简单易行
  5. 用户/群组与ACL - 关键词:“用户”与“角色”等表格在任何企业环境下都毫无必要的
  6. 日志分析 - 关键词:关系数据库的最大卖点及首要诉求时低延迟,而非日志分析及汇总工作
  7. 媒体资源库 - 关键词:RDBMS 中的 BLOB 仍然不足以有效处理图像及其它二进制文件
  8. 电子邮件 - 关键词:关系数据库并不擅长存储具有非结构化特性的元数据
  9. 分类广告 - 关键词:关系数据库不如文件类数据库 MongoDB 处理这类问题的能力
  10. 时间排序/预报 - 关键词:关系数据库在时间排序问题方面的表现一直饱受争议

====================================

【RAC】

RAC ,全称 real application clusters ,译为“实时应用集群”,是 Oracle 新版数据库中采用的一项新技术,是高可用性的一种,也是 Oracle 数据库支持网格计算环境的核心技术。

【PL/SQL】

PL/SQL 也是一种程序语言,叫做过程化 SQL 语言(Procedural Language/SQL)。PL/SQL 是 Oracle 数据库对 SQL 语句的扩展。在普通 SQL 语句的使用上增加了编程语言的特点,所以 PL/SQL 就是把数据操作和查询语句组织在 PL/SQL 代码的过程性单元中,通过逻辑判断、循环等操作实现复杂的功能或者计算的程序语言。

【ATG】

ATG, Art Technology Group (ATG), a leading provider of eCommerce software and related on demand commerce optimization applications.

【BLOB】

BLOB ,binary large object ,二进制大对象,是一个可以存储二进制文件的容器。在计算机中,BLOB 常常是数据库中用来存储二进制文件的字段类型。BLOB 是一个大文件,典型的 BLOB 是一张图片或一个声音文件,由于它们的尺寸,必须使用特殊的方式来处理(例如:上传、下载或者存放到一个数据库)。根据 Eric Raymond 的说法,处理 BLOB 的主要思想就是让文件处理器(如数据库管理器)不去理会文件是什么,而是关心如何去处理它。但也有专家强调,这种处理大数据对象的方法是把双刃剑,它有可能引发一些问题,如存储的二进制文件过大,会使数据库的性能下降。在数据库中存放体积较大的多媒体对象就是应用程序处理 BLOB 的典型例子。

【CMS】

CMS ,即 Content Management System ,网站内容管理系统。

CMS 的功能并不只限于文本处理,它也可以处理图片、Flash 动画、声像流、图像甚至电子邮件档案。
CMS 其实是一个很广泛的称呼,从一般的博客程序,新闻发布程序,到综合性的网站管理程序都可以被称为内容管理系统。

====================================

【只言片语】

CouchBase 2.0 或者 MongoDB 属于文件数据库。

LDAP 专门为用户、群组及 ACL 所设计,能够恰到好处地满足此类需求。

像日志信息这样多少带有些非结构化特性的数据,正是 MapReduce 公司的 Hadoop 以及像 PIG 这样的语言所擅长的领域。

目前各类主流监控工具仍然在以 RDBMS 为主要对象。

电子邮件实际是一种具备适度非结构化特性的元数据。

文件类数据库 MongoDB 擅长搜索、打理元数据,非常适合处理广告的固有特性,对信息一致性有足够的保障。几乎等于是为广告量身打造的文件类数据库。

如果把时间类任务作为主要处理对象,那么像 Cassandra 这样能够与 MapReduce 列簇产品家族良好对接的方案无疑更为理想。

Redis 是一个单机的存储方案;Redis 不适合作为海量数据存储方案。Redis 适合在数据规模较小,性能要求较高的条件下应用。Redis 是一个非常快速和强大的 Key-Value 存储(持久化)系统,相对于一般的 NoSQL 存储系统,它最大的特点是支持丰富的数据结构。特别是其 zset(sorted set) 数据结构,堪称表达能力最强的结构之一( 其它强大的数据结构如 sorted hashmap ),可以直接地表达业务逻辑。

转载地址:http://nieym.baihongyu.com/

你可能感兴趣的文章
SQL SERVER数据库 三种 恢复模式
查看>>
android.os.NetworkOnMainThreadException的解决方案
查看>>
16、SpringBoot-CRUD错误处理机制(3)
查看>>
git 覆盖本地变化
查看>>
Java中的内存分配机制
查看>>
找回Gnome菜单下的关机键
查看>>
CQOI2019(十二省联考)游记
查看>>
【总结整理】需求分析所需掌握技能(转)
查看>>
Linux常用命令
查看>>
PHP基础知识(二)
查看>>
android之VideoView和视频播放View的扩展
查看>>
stdout stdin stderr
查看>>
FreeMarker 一二事 - 静态模板结合spring展示
查看>>
07:企业级镜像仓库Harbor
查看>>
bzoj4427【Nwerc2015】Cleaning Pipes清理管道
查看>>
事务隔离级别
查看>>
Python 函数
查看>>
Linux64位程序中的漏洞利用
查看>>
gdb教程
查看>>
动态的加载类型
查看>>