数据库采购指南之除了功能还是功能!
【51CTO独家译文】我们在***个部分《数据库采购指南之细说数据库的类型和功能》中首先介绍了主要的数据库类型,以及选购数据库管理系统时要考虑的一些重要功能。这些功能包括存储机制、数据完整性和支持的语言,范围涵盖SQL版本以及PL/TCL、PL/Perl和PL/python等编程语言。
本文将介绍数据库管理系统其他额外的重要功能,你在作出决策之前***考虑到这些功能。
支持的数据类型
在过去的几年,支持大对象的功能变得越来越受欢迎。常见的大对象包括:用户定义的数据类型、名为地理信息系统(GIS)的地理特征、图像和极大的或不受限制的文本字段。除了能够存储这类庞大而复杂的数据类型外,数据库还要提供查找和检索它们的办法。一种办法称为基于内容的图像检索(CBIR),这一类技术用于使用一个或多个实例图像,从庞大图像库检索信息。另一种技术使用索引关键字搜索。
性能监控和调优功能
你的数据模式越庞大、越复杂,性能监控和调优功能就变得越重要。要获得***的查询性能,就必须支持单列、多列和独特的主键索引。为了从数据库获得***性能,分析工具就必不可少。我最近写了几篇文章来介绍MySQL分析工具:《用MySQL的分析工具来找出慢速查询》(http://www.databasejournal.com/features/mysql/article.php/3921876/Identify-Slow-Queries-using-MySQLs-Analysis-Tools.htm),以及《用MySQL的分析工具来改进查询性能》(http://www.databasejournal.com/features/mysql/article.php/3925251/Using-MySQLs-Analysis-Tools-to-Improve-Query-Performance.htm)。
数据库安全功能
媒体大肆报道的一连串数据库泄密事件使得安全成为数据库领域关注的首要问题。下列功能将帮助你确保数据库系统很安全,从而远离未授权访问:加密、支持复制、定义用户角色和用户组的功能以及细粒度的权限授予等。你还得考虑数据库实际上放在哪里。要是有人随便进来,就能拿走你的数据,花巨资购买安全软件又有啥用?! 如果牵涉大笔的钱,内贼作案这种威胁比你想象的要常见得多!
不是所有数据库都可以在每个平台上运行。甲骨文和DB2等一些比较大牌的厂商,甚至MySQL等一些比较小的厂商都销售支持多种操作系统的数据库。其他厂商只能支持某种特定的操作系统(如Windows或Linux)。评估跨平台产品时,要密切注意你在多个数据库管理系统之间切换时,每个软件版本在运行时怎么样,包括工作流、导航操作和外观感觉等方面的变化,因为这会影响每个新员工的适应时间,还会影响现有的团队成员学用每种新数据库管理系统的难易程度。
协作
如今在应用程序的整个生命周期中,数据库开发员和管理员的角色存在诸多重叠并不罕见。比如在我公司,程序员常常用Java动态创建SQL语句,直接从应用程序中针对数据库来执行。这仅仅是表明协作功能大有助益的一个例子。 数据库工具还有助于管理团队、质量保证团队和合作伙伴之间的协作和沟通,从而有助于营造联系更紧密的环境。一些常见的用途包括:能够找出问题并传达下去,让管理、开发和质量保证等团队尽快了解情况。报告生成功能也非常有助于与管理团队及其他团队的成员进行沟通。能够在开发人员与生产人员之间分发日常的数据模式变化是协作工具的另一个用途。
一些数据库管理系统甚至允许你只要点击几下鼠标,就可以把项目放在中心版本控制系统之下。我发现,你的团队越庞大,平台环境越复杂,版本控制就变得越重要。我的部门有两个数据敏感程度不一的并行网络,每个有各自的开发、质量保证和生产支持环境,使得版本控制必不可少。***但并非最不重要的是,评估数据库工具时,考虑每个工具会如何帮助你与公司内外的有关方进行协作和沟通很重要。
数据可视化
说到协作,数据可视化功能有助于主开发员/管理员和可能需要信息的其他人。人们喜欢怎样分析信息可能完全因人而宜。一些人青睐图形化方式,一些人需要原始数据流,而还有一些人得益于这两种方法。弄清楚你自己团队成员的偏好,然后选择相应的工具。仅举一例,过去几年出现了新兴的SQL调优技术,包括可视化SQL调优(VST)。VST这种方法以图形化方式呈现SQL语言,以便快速了解查询的主要部分、查询流程及***执行路径。这种类型的数据图形化呈现方法可以改进你的SQL调优,并充分利用团队员分析数据的不同方法。
性能和可用性
数据库管理员和开发员都不断受到压力,需要提高数据库和应用程序的性能。这不无道理;因为用户越快找到所需的数据,就能处理越多的事务,因而工作效率就越高。你应该考虑使用能够防止、查找和解决性能问题的工具,以便这些问题出现。负责应对生产环境问题的数据库管理员和开发员依赖24x7的监控和警报机制,那样他们就能及早发现问题,并迅速解决问题,以免系统停运。大家很清楚,一旦出现危机,能够迅速找出并解决问题的重要性再怎么强调都不过分!想一想:在这个紧要关头,只需看一眼性能仪表板与不得不翻阅几十个屏幕,这之间的差别有多大?!
说到备份,开源数据库也许无法完全满足你的要求。有些数据库对于数据库数据和模式只能提供简单的文本转储。其他解决方案还提供了进行数据库热备份的方法,这种备份是指不用关闭数据库,就能进行备份。Vertias NetBackup或Tivoli TSM等许多商用备份工具还有代理软件,提供了商用数据库的在线备份功能。备份功能还包括数据库崩溃和电源突然出现故障后,简单的数据库恢复。PostgreSQL等一些数据库管理系统使用一种名为预写式日志(Write Ahead Logging)的方法,提供数据库一致性检查功能;MySQL只针对InnoDB表类型提供数据库一致性检查功能。
数据迁移
许多数据库管理系统解决方案含有数据库迁移实用工具,有助于在其他流行的商用数据库之间来回迁移数据。市面上还有第三方的实用工具,它们有的是开源工具,有的是商用工具。显然,你的数据模式越复杂,转换起来难度就越大;其中一些工具可能无法理想地全面迁移各种数据,需要长时间的手动操作。
结论
我知道我在这里已介绍了许多功能。我记得有好多回,别人请我修复一开始没有正确评估数据需求造成的破坏。21世纪的Web 2.0世界最普遍性的问题之一就是沟通。因而,要特别关注让你可以跨平台和数据库管理系统共享数据的选择。这方面的有用功能包括能够用不同的格式来导入和导出数据,比如XML、JSON及其他与网络/平台无关的标准。
【编辑推荐】
相关文章
- 从本体论开始说起——运营商关系图谱的构建及应用
- 如何成为一名数据科学家?
- 从未见过的堂兄杀了人,你的DNA是关键证据
- 20个安全可靠的免费数据源,各领域数据任你挑
- 20个安全可靠的免费数据源,各领域数据任你挑
- 阿里云李飞飞:All in Cloud时代,云原生数据库优势明显
- 基于Hadoop生态系统的一高性能数据存储格式CarbonData(性能篇)
- 大数据告诉你:10年漫威,到底有多少角色
- TigerGraph:实时图数据库助力金融风控升级
- Splunk利用Splunk Connected Experiences和Splunk Business Flow 扩大数据访问
- 大数据开发常见的9种数据分析手段
- 以免在景区看人,我爬了5W条全国景点门票数据...
- 【实战解析】基于HBase的大数据存储在京东的应用场景
- 数据科学家告诉你哪些计算机科学书籍是你应该看的
- Kafka作为大数据的核心技术,你了解多少?
- Spring Boot 整合 Redis 实现缓存操作
- 大数据学习必须掌握的五大核心技术有哪些?
- 基于Antlr在Apache Flink中实现监控规则DSL化的探索实践
- 甲骨文再次被Gartner评为分析型数据管理解决方案魔力象限领导者
- 爬取吴亦凡微博102118条转发数据,扒一扒流量的真假