标记:数据库

进化数据库设计

在过去的十年中,我们开发和改进了许多技术,使数据库设计随着应用程序的发展而发展。这是敏捷方法非常重要的能力。这些技术依赖于对数据库开发应用持续集成和自动重构,以及dba和应用程序开发人员之间的密切合作。华体会app下载二维码这些技术既适用于预生产系统,也适用于发布系统,也适用于未开发项目和遗留系统。

六边形架构和轨道华体会体育网页版入口

我和同事Badri关于六边形体系结构及其在Rails应用程序中的作用的对话视频。华体会体育网页版入口在第一个视频中,我们讨论了六边形体系结构的含义,以及它如何导致持久框架的活动记录和数据映射器模式华体会体育网页版入口之间的选择。在第二部分中,我们将更广泛地讨论Rails在应用程序中应该扮演的架构角色——您应该将其视为一个平台,还是一套组件。

巴德里·贾纳基拉曼和马丁·福勒

2014年6月5日

更多…

视频

应用程序体系结构华体会体育网页版入口ruby数据库

不断发展的数据全景

我们在2012伦敦QCon上的主题演讲着眼于数据在我们生活中所扮演的角色(它所做的不仅仅是变得更大)。我们首先看看数据世界是如何变化的:它在增长,变得更加分布式和连接。然后我们转向行业的回应:NoSQL的兴起,向服务集成的转变,事件来源的出现,云的影响,以及对可视化发挥更大作用的新分析。我们将快速浏览一下目前数据是如何被使用的,丽贝卡将特别强调发展中国家的数据。最后,我们考虑这一切对我们作为软件专业人员的个人责任意味着什么。

丽贝卡·帕森斯和马丁·福勒

2012年4月18日

更多…

视频

演讲视频数据库noSQL数据分析

NoSQL简介

转到奥尔胡斯,我们有一个关于NoSQL的一些实际经验的轨道。我被要求做一个初步的演讲来解释NoSQL数据存储的基本原理。我将讨论NoSQL的起源、NoSQL数据模型的形式、许多NoSQL数据库考虑一致性问题的方式,以及多语言持久性的重要性。

马丁·福勒

2012年10月3日

更多…

视频

演讲视频数据库noSQL数据分析

无模式数据结构

近年来,关于无模式数据的优点的讨论越来越多。无模式是感兴趣的主要原因之一NoSQL数据库.但是在数据库和内存数据结构方面,无模式涉及到许多微妙之处。这些微妙之处既体现在无模式的含义上,也体现在使用无模式方法的优缺点上。

SE关于敏捷数据库开发的广播播客

Pramod Sadalge领导了敏捷数据库技术的开发,我们现在在Thoughtworks经常使用这种技术。SE Radio采访了我们如何使用这些技术来迭代地改进数据库设计以及使用数据库的应用程序。我们将讨论如何将数据库合并到Continuous Integration系统中,如何通过可重复的脚本迁移进行数据库更改,以及数据库重构如何工作。华体会app下载二维码

普拉蒙德·萨达奇和马丁·福勒

2012年6月1日

阅读更多…

音频

数据库播客

未来不是NoSQL而是多语言持久性

关于企业中数据存储的未来的信息平台,主要为参与应用程序开发管理的人员编写。解释了为什么关系数据库一直占据主导地位,为什么NoSQL正在挑战这一假设,并概述了Polyglot Persistence的未来,根据应用程序的不同需求,将使用多种数据存储技术。

作者:马丁·福勒和普拉蒙德·萨达拉奇

2012年2月7日

阅读更多…

数据库noSQLinfodecks

域逻辑和SQL

在过去的几十年里,我们看到面向数据库的软件开发人员和内存应用程序软件开发人员之间的差距越来越大。这导致了关于如何使用SQL和存储过程等数据库特性的许多争议。在本文中,我将根据一个简单但丰富的SQL查询示例,主要考虑性能和可维护性,讨论是将业务逻辑放在SQL查询中还是放在内存代码中。

马丁·福勒

2003年2月

阅读更多…

文章

数据库

面向聚合的数据库

这是我们工作时首先想到的话题之一Nosql蒸馏NoSQL数据库使用不同于关系模型的数据模型。我看过的大多数来源都至少提到了四组数据模型:键值、文档、列族和图。看一下这个列表,前三者之间有很大的相似之处——它们都有一个基本的存储单元,这是一个密切相关的数据的丰富结构:键值存储是值,文档存储是文档,列族存储是列族。在DDD术语中,这组数据是一个DDD_Aggregate

马丁·福勒

2012年1月19日

阅读更多…

bliki

数据库noSQL

应用程序数据库

我使用术语应用程序数据库(Application Database)来表示由单个应用程序控制和访问的数据库IntegrationDatabase).由于只有一个应用程序访问数据库,因此可以对数据库进行特定的定义,以使一个应用程序的需求易于满足。这导致了一个更具体的模式,它通常更容易理解,而且通常不那么复杂IntegrationDatabase

数据湖

数据湖是近十年来出现的一个术语,用来描述世界数据分析管道的一个重要组成部分大数据.这个想法是为组织中的任何人可能需要分析的所有原始数据建立一个单独的存储。通常人们使用Hadoop来处理湖中的数据,但这个概念比Hadoop更广泛。

马丁·福勒

2015年2月5日

阅读更多…

bliki

数据库数据分析

数据模型

我早期最喜欢的一本书是Tsichritzis和Lochovsky的关于数据模型的书。这本书讨论了思考数据的不同模型,特别是当时讨论最多的三个模型:RelationalDataModelHierarchicDataModel而且NetworkDataModel

马丁·福勒

二月十二日

阅读更多…

bliki

数据库

数据库类型

当我谈到数据库及其与应用程序的关系时,我发现区分两种类型的数据库很有用:ApplicationDatabase而且IntegrationDatabase.两者之间的区别在于数据库是否被控制和封装在单个数据库中ApplicationBoundary

马丁·福勒

五月二十四日

阅读更多…

bliki

应用程序集成数据库

数据库解冻

几年前,我听到编程语言的人在Java引起的语言中谈论“核冬天”。当时的感觉是,每个人都如此趋同于Java的计算模型(当时的c#被认为不过是一种剽窃),以至于编程语言的创造力已经消失了。这种感觉现在正在减弱,但也许一种更重要的解冻正在开始——对数据库的思考将变得更长久、更深入。

马丁·福勒

11月24日

阅读更多…

bliki

数据库noSQL

Datensparsamkeit

Datensparsamkeit是一个德语单词,很难正确地翻译成英语。这是我们捕获和存储数据的一种态度,即我们应该只处理我们真正需要的数据。

分层数据模型

层次数据模型以层次结构或树形结构的形式组织。早期的数据库和编程数据结构通常使用层次模型,但这些模型不再受欢迎。在数据库世界中RelationalDataModel成为主流,而对于大多数内存编程NetworkDataModel占主导地位。这是因为,虽然层次结构是一种简单的组织工具,但当您获得更复杂的数据时,它就会崩溃。

马丁·福勒

阅读更多…

bliki

数据库

内存测试数据库

内存数据库是完全在主存中运行的数据库,不涉及磁盘。它们通常作为嵌入式数据库运行:在进程启动时创建,嵌入该进程中运行,并在进程结束时销毁。

马丁·福勒

十一月二十二日

阅读更多…

bliki

测试数据库

增量迁移

就像任何职业一样,软件开发也有经常被遗忘的华体会登录网址活动,这些活动通常被忽视,但却有在错误的时刻反咬一口的习惯。其中之一就是数据迁移。

马丁·福勒

二零零八年七月七日

阅读更多…

bliki

持续交付数据库

集成数据库

集成数据库是充当多个应用程序的数据存储的数据库,因此可以跨这些应用程序集成数据ApplicationDatabase).

马丁·福勒

五月二十五日

阅读更多…

bliki

应用程序集成数据库

内存映像

当人们开始一个企业应用程序时,最早的问题之一是“我们如何与数据库通信”。如今,他们可能会问一个稍微不同的问题:“我们应该使用哪种数据库——关系型数据库还是NOSQL数据库?”但还有另一个问题需要考虑:“我们到底应该使用数据库吗?”

网络数据模型

网络数据模型将数据构造为记录类型,使用指针链接允许在一个记录和另一个记录之间导航。因此,要查询一个网络数据模型,您可以从一个记录开始,然后移动指针引用。

马丁·福勒

阅读更多…

bliki

数据库

没有DBA

在许多组织中,期望任何持久数据都存储在由中央数据库管理组管理的关系数据库中。这种集中控制有各种各样的原因,通常围绕使用IntegrationDatabases.中央数据组担心屏蔽畸形数据、可能降低重要共享资源速度的查询以及跨企业的一致数据模型。

这些目标可能是值得的,但它们的一个后果是关于存储数据的相当讲究的仪式。我经常听到对更改命令的抱怨,向数据库添加一列需要花费数周的时间。对于习惯于短周期进化设计的现代应用程序开发人员来说,这样的仪式太慢了,更不用说太烦人了。

所以应用程序开发小组告诉我使用NoSQL数据库绕过dba进行终端运行。他们在这里使用的是“单纯的数据存储”,而不是“适当的数据库”,这是有帮助的。通过这种方式,dba可以被排除在循环之外,通常不被告知或乐于不关心。

马丁·福勒

2013年2月25日

阅读更多…

bliki

数据库noSQL进化型设计

Nosql的定义

当我们开始工作的时候Nosql蒸馏我们面临着一个棘手的难题——我们要写什么?NoSQL数据库到底是什么?现在还没有明确的概念定义,没有商标,没有标准的团体,甚至没有一个宣言。

马丁·福勒

2012年1月9日

阅读更多…

bliki

数据库noSQL

Orm恨

当我几个月前在伦敦参加QCon会议时,似乎每个演讲都包含一些关于对象/关系映射(ORM)工具的尖刻评论。我想我应该更仔细地阅读发给演讲者的会议电子邮件,毫无疑问,其中有一些内容告诉我们所有人至少每45分钟嘲笑一次orm。但正如你所知道的,我想要反击这种对ORM的厌恶——因为我认为其中很多是没有根据的。

通晓多种语言的持久性

2006年,我的同事尼尔·福特(Neal Ford)创造了这个术语通晓多种语言的编程,以表达应该用混合语言编写应用程序的想法,以利用不同的语言适合处理不同的问题这一事实。复杂的应用程序组合了不同类型的问题,因此为工作选择正确的语言可能比试图将所有方面都放到一种语言中更有成效。

在过去的几年里,人们对新语言的兴趣激增,特别是函数式语言,我经常想花些时间钻研Clojure、Scala、Erlang或类似的语言。但我的时间有限,我将优先考虑另一个更重要的转变,那就是DatabaseThaw.第一批资金已经从客户和其他联系人那里获得,前景非常诱人。我可以自信地说,如果您开始一个新的战略企业应用程序,您不应该再假设您的持久性应该是关系的。关系选项可能是正确的选项——但是您应该认真地考虑其他选项。

表示域数据分层

将一个信息丰富的程序模块化的最常见的方法之一是将它分为三个层次:表示层(UI)、领域逻辑(又名业务逻辑)和数据访问。因此,你经常会看到web应用程序被分成知道如何处理HTTP请求和呈现HTML的web层,包含验证和计算的业务逻辑层,以及处理如何管理数据库或远程服务中的持久数据的数据访问层。

关系数据模型

大多数人通过关系数据库和SQL语言最了解关系数据模型。通俗地说,我们认为数据库是一组表,每一行都包含数据。我们可以以各种方式操作这些表来执行查询,每个查询的结果都是另一个表。相比之下NetworkDataModel,表之间没有显式的指针,链接是由连接表在公共值上建立的(尽管使用代理键意味着在实践中有指针)。

马丁·福勒

阅读更多…

bliki

数据库

报告数据库

大多数EnterpriseApplications用数据库存储持久数据。该数据库支持应用程序状态的操作更新,以及用于决策支持和分析的各种报告。然而,操作需求和报告需求通常是截然不同的——不同的需求来自于不同的模式和不同的数据访问模式。当这种情况发生时,将报告需求分离到报告数据库中通常是一个明智的主意,该数据库获取基本操作数据的副本,但用不同的模式表示它。

资源池

许多程序需要利用创建和维护成本高昂的资源。例如数据库连接和线程。资源池提供了一种管理这些资源的好方法。

Transactionless

几年前,我和几个在eBay工作的朋友聊天。听到人们在高容量网站上使用的技术总是很有趣,但也许最有趣的花边新闻之一是eBay几乎从不使用数据库事务。

用户自定义字段

软件系统的一个常见特性是允许用户在数据结构中定义自己的字段。考虑一个地址簿——你可能想要添加很多东西。随着每天都有新的社交网络出现,用户可能想要为他们的联系人添加一个新的Bunglr id字段。

2011年去奥胡斯

转到(以前称为jaao)一直是我最喜欢的会议。多年来,他们在保持高水准的内容和高效友好的组织方面做得很好。因此,虽然我对会议的过度消费通常导致了会议恐惧症,但在前往奥胡斯(Aarhus)进行有点复杂的旅行时,我仍然会有一种愉快的期待感。

马丁·福勒

2011年10月26

阅读更多…

bliki

会议数据库语言功能


所有标签

API设计·敏捷·采用敏捷·分析模式·应用程序体系结构华体会体育网页版入口·应用程序集成·不好的事情·棋盘游戏·构建脚本·认证·协作·计算机历史·小组会议·会议·持续交付·新型冠状病毒肺炎·数据分析·数据库·设计·字典·分布式计算杂志·娱乐·多样性·文档·领域驱动设计·领域特定语言·国内·封装·企业架构华体会体育网页版入口·估计·事件的架构华体会体育网页版入口·进化型设计·经验报告·旁白的架构华体会体育网页版入口·极限编程·前端·小工具·ieeeSoftware·infodecks·网络文化·面试·语言功能·语言工作台·精益·传统康复·法律·指标·microservices·移动·noSQL·对象协作设计·解析器生成器·摄影·平台·播客·受欢迎的·演讲技巧·隐私·过程理论·生产力·编程环境·编程风格·项目计划·招聘·华体会app下载二维码·华体会app下载二维码重构的边界·需求分析·ruby·安全·演讲视频·团队环境中·团队组织·技术债务·技术领导·测试类别·测试·thoughtworks·工具·旅行·uml·版本控制·web开发·web服务·网站·写作

2022·2021·2020·2019·2018·2017·2016·2015·2014·2013·2012·2011·2010·2009·2008·2007·2006·2005·2004·2003·2002·2001·2000·1999·1998·1997·1996

所有的内容

Baidu
map