`
SSailYang
  • 浏览: 314428 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于数据库已死这个话题,谈谈我的看法

    博客分类:
  • Java
阅读更多
原文:数据库已死

这是 Jdon 作者写的一篇文章,十一无事,读了这篇文章。下面谈谈我的看法。

此文章最基本的一个思想就是说数据库现在已经成为网络应用和企业应用发展的一个瓶颈,MySpace便是一个例子。要改变这个现状,就要改变以数据库作为应用中心的结构,转而使用 Java EE 中间件作为应用的核心,而数据库至多是将数据持久化的地方。和操作系统一样,数据库将来的角色只是应用运行的基础平台。

这个观点我是同意的。对于过去以数据库为核心的,很多逻辑用视图、存储过程实现的老系统我接触的不多,当然也不清楚这样的系统如何扩展。文章提到了中型机,我对那东西更是不了解,但应该是很大很贵的东西。所以,如果一个系统能用二十台 PC 达到原来需要中型机才能达到的效果,这样的架构的可扩展性自然是很好的。

说到 Java EE 应用的可扩展性,我又想起了 Terracotta。它是一个 JVM-Level 的集群解决方案。JVM-Level 即意味着你不需要在你的代码中使用 Terracotta 的 API。Terracotta 对于你的应用来说几乎是完全透明的(因为你还是需要做一些配置)。Terracotta 可以使你的应用仿佛运行在一个巨大的 Heap 上(通过无缝整合每台服务器上的 Heap)。同时,诸如分布式同步等复杂问题,Terracotta 都会帮你解决好。总之,Terracotta 可能就是解决很多应用的扩展性问题的良药。当然,Terracotta 不会是完美的,但至少它带给了我们以希望。

像 Terracotta 这样的技术的兴起(从出现到流行,应该还有很长的路要走),都在告诉我们在系统架构设计的时候,都要弱化数据库的地位,将来数据库的作用将只是应用运行的基础环境(Terracotta 也有数据持久化到磁盘的功能,在某些方面可以取代数据库)。新系统的架构的设计要尽可能地从 OO 角度出发。

总之,随着技术的发展,数据库将逐渐失去它在企业应用中的重要地位,虽然它不会完全淡出。
2
6
分享到:
评论
4 楼 rmn190 2009-03-05  
很是同意楼主的意见, 前些天的一个帖子中由项目中的一个事想到了与数据库相关的不少问题.
3 楼 dearshor 2008-11-19  
Readonly 写道

Jdon这个网站竟然还活着...
板桥竟然还在YY,坚持一个人演独角戏也不容易...

当然,不但活着,而且活的很好。谁说banq一直是在演独角戏?
2 楼 Jonney 2008-10-09  
做一个千万级别数据量的应用之后再看这篇文章。
1 楼 Readonly 2008-10-05  
Jdon这个网站竟然还活着...
板桥竟然还在YY,坚持一个人演独角戏也不容易...

相关推荐

    java多个数据库实现数据同步

    在IT行业中,数据库同步是一个关键话题,特别是在分布式系统和企业级应用中,多个数据库的同步是确保数据一致性、完整性和高可用性的重要手段。本文将深入探讨如何使用Java来实现多个数据库之间的数据同步。 首先,...

    中国高校数据库 中国高校数据库

    这个数据库的主要目的是为了提供一个全面、准确的高校信息源,以便用户在社区环境中进行交流、分享和查询。数据库的构成主要由三个核心文件组成:`schools.sql`、`univs.sql`和`provinces.sql`。 `schools.sql` ...

    数据库比较工具(比较两个数据库的差异,含:表、字段字段长度等)

    可用这个工具,先在程序员电脑上运行本工具,填 上数据库 属性,按'读源数据',然后把这个工具程序及同目录 下的sour ce.mdb一起拿到客户的电脑上,运行,填上数据库属 性,按'比 对',然后按'执行',一切都OK了!

    学生-课程-选课(学习数据库经典的例子,3个表SQL Server数据库)

    通过理解这个模型,我们可以深入理解如何在SQL Server数据库中建立和操作这些实体之间的关系。 首先,我们来详细解释这三个实体: 1. **学生实体(Students)**: 这个实体包含了有关学生的数据,如学号...

    Android开发连接服务器调用数据库

    这个过程涉及到多个技术领域,包括 Android 开发、服务器端开发、数据库操作等。 知识点一:Android 客户端连接服务器 在 Android 应用程序中,客户端连接服务器端可以通过 HTTP 或 HTTPS 协议来实现。其中,HTTP ...

    成语数据库(总共31851个成语,含拼音,解释,出处,例子)

    当前我们拥有的这个成语数据库,收录了多达31851个成语,可谓集大成之作品。每个成语条目不仅包含了标准的拼音注音,让使用者能够准确掌握成语的正确读音,还有详细的解释,使得成语的意义一目了然。除此之外,为了...

    Visual C++数据库开发经典实例精解.pdf

    不过,我将根据标题、描述以及文件名中提及的“Visual C++数据库开发经典实例精解”这一主题,为您提供与该主题相关联的知识点。 Visual C++数据库开发是面向数据库编程的一个领域,主要侧重于使用Visual C++这一...

    QQ数据库

    【QQ数据库】是一个与SQL相关的主题,这通常指的是与腾讯公司旗下的即时通讯软件QQ相关的数据库设计、管理和查询。在IT领域,尤其是服务器管理和数据库管理中,掌握SQL(Structured Query Language)是至关重要的。...

    JAVA将一个数据中数据定时自动复制(抽取)到另一个数据库

    在IT行业中,数据库同步是一个常见的需求,特别是在分布式系统或者数据备份场景下。本文将深入探讨如何使用Java编程语言实现从一个数据库中定时自动抽取数据并复制到另一个数据库,以达到数据库间的实时或近实时同步...

    数据库学习入门数据库基础入门

    本文将深入浅出地介绍数据库学习入门及基础概念,旨在帮助初学者快速掌握这一关键技术。 首先,理解数据库的基本概念至关重要。数据库可以被视为一个有序的数据集合,这些数据按照特定的方式组织,以便高效地检索、...

    全国中小学数据库大全mysql

    此数据库包含三个表: nobook_city :城市表 nobook_school:学校表 nobook_schooltype: 学校类型表 具体使用方式: 导入数据库后,通过省份城市及学校类型进行筛选,并且学校数据表已经设置首字母,所以可以根据首...

    Web版的数据库管理工具

    【描述】这个Web版本的数据库连接工具是用Java和Angular技术栈构建的,这是一种现代化的开发组合,确保了高性能和良好的用户体验。Java作为后端服务器语言,提供强大的数据处理能力以及丰富的开源库,支持与多种...

    跨多个数据库操作,同时连接两个一上的数据库,用事物关联起来

    这种情况下,数据一致性变得至关重要,这就引入了"跨多个数据库操作"的概念。为了保证数据的一致性,我们需要一种机制来协调这些数据库间的操作,这就是"用事物关联起来"的关键。 事务(Transaction)是数据库操作...

    c语言实现简单数据库

    这个数据库系统具有基本的SQL操作功能,如SELECT、INSERT、CREATE以及DELETE,是哈工大软件设计课程中的一项实践任务,旨在帮助学生理解和掌握C++编程语言以及数据库管理系统的基础原理。 一、C语言基础 C语言是一...

    北风贸易数据库 北风贸易数据库

    北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风贸易数据库北风...

    全国省市县籍贯数据库

    数据库的核心组成部分是表,这个"全国省市县籍贯数据库"很可能包含了一个或多个表,每个表代表一类信息,如“省份”、“城市”和“县区”。这些表可能通过字段关联起来,比如每个县区会关联到其所属的城市和省份,...

    Delphi使用SQLite3内存数据库

    在本文中,我们将深入探讨如何在Delphi编程环境中利用SQLite3数据库系统,特别是关于本地数据库与内存数据库的使用。SQLite3是一种轻量级、自包含的数据库引擎,它不需要独立的服务器进程,使得在Delphi应用程序中...

    数据库需求分析模板数据库需求分析模板

    它从软件的功能、性能、接口、数据、安全性等方面详细阐述需求,并提供了一个关于数据库设计和实现的完整视图。这份模板的使用,能够确保软件开发的每个阶段都有明确的指导和依据,极大地提高了软件开发的规范性和...

    数据库课程设计(SqlServer数据库 JAVA编写)

    在这个课程设计中,你将学习到如何使用SQL Server来构建和管理数据库,包括数据库的创建、数据表的设计、索引的建立以及安全性设置。 JAVA是一种广泛使用的面向对象的编程语言,以其“一次编写,到处运行”的特性...

    qt 实现数据库操作和显示

    Qt是一个功能强大的C++工具包,广泛应用于图形用户界面(GUI)开发,同时也提供了丰富的数据库接口。通过Qt的模型视图组件,我们可以方便地与各种数据库进行交互,并将数据展示在用户友好的界面中。 首先,让我们...

Global site tag (gtag.js) - Google Analytics