规则 - 适当使用数据库

内容:当需要ACID属性来保存数据之间的关系和一致性时,可以使用关系型数据库。其他数据的存储需要考虑更适合的工具,如NoSQL DBMS。

场景:当在系统结架构中引入新数据或数据结构时。

用法:考虑数据量、存储量、响应时间长短、关系和其他因素来选择适当的存储工具。也要考虑数据结构及产品需要对数据进行的管理和操作。

原因:关系型数据库提供了高度的事务完整性,但是成本很高,难以扩展,而且与其他许多可选的存储系统相比可用性较低。

要点:使用合适的数据存储工具。不要因素易访问而用关系型数据库存储所有数据。

 

 

关系型数据库的特点:

1.通过ACID属性来保证事务的完整性

2.表内部和表之间存在关系结构

3.扩展比非关系型数据库存在更大的挑战性,例如分库分表艰难

关系型数据库适用范围可以根据其特点来确定,例如必须保证事务完整性的任务

 

文件系统是非常早就可以接触到的系统,这个系统非常适合“写一次,读多次”,特别是短时期内不会更新以及更新的时候不会发生写冲突的场景。

 

NoSQL存储系统包括:键值存储、可扩展记录存储、文档存储。分类边界模糊,只是一种大体上的区分,可能分属两者。No SQL对实体或对象之间关系的数量有所限制

键值存储大体上是对数据做单一的键值索引,将这些索引存储在内存中。例如:Redis、Simple DB、Memcached、Amazon DynamoDB。当然也有一部分面临关系型数据库同样的限制。

可扩展记录存储,优势被称作宽列存储或表格式的数据库系统,采用AKF扩展立方体里面的x规则和y规则进行扩展。

文档存储,文档又被称作多索引对象模型,不支持ACID属性,使用异步复制来提供最终一致性。例如:MongoDB,CouchDB等。

 

选取存储工具时,要考虑元素之间所需的关联度、方案成长速度、数据读写的比率,最后是数据的效益成本问题。关联度决定了成本和系统的复杂性。三种存储结构的成本顺序和灵活性顺序由低到高是:文件系统、No SQL, 关系型数据库。扩展性由低到高是:关系型数据库 、No SQL 、文件系统。

可扩张性问题解决方案的成本随着时间的推移而显著下降,产品的整体可用性也会显著上升。

 

现在技术的发展是我们有了更多的选择,这些选择是要根据实际实际需要确定的。

### 如何使用 T-SQL 在 SQL Server 中创建数据库 在 SQL Server 中,可以通过 `CREATE DATABASE` 语句使用 T-SQL 创建数据库。以下是具体的语法和示例: #### 语法 ```sql CREATE DATABASE database_name ON PRIMARY ( NAME = logical_file_name, FILENAME = 'os_file_name', SIZE = size_in_mb MB, MAXSIZE = max_size_in_mb MB, FILEGROWTH = growth_increment MB ) LOG ON ( NAME = logical_log_file_name, FILENAME = 'os_log_file_name', SIZE = log_size_in_mb MB, MAXSIZE = log_max_size_in_mb MB, FILEGROWTH = log_growth_increment MB ); ``` - `database_name`: 指定要创建的数据库名称[^3]。 - `NAME`: 数据文件或日志文件的逻辑名称。 - `FILENAME`: 数据文件或日志文件的物理路径和文件名。 - `SIZE`: 初始大小(以 MB 为单位)。 - `MAXSIZE`: 文件的最大大小(以 MB 为单位),或者可以设置为 `UNLIMITED` 表示限制大小。 - `FILEGROWTH`: 当文件增长时每次增加的大小(以 MB 为单位),或者可以设置为百分比(如 `10%`)。 #### 示例 以下是一个简单的示例,展示如何使用 T-SQL 创建一个名为 `MyDatabase` 的数据库: ```sql CREATE DATABASE MyDatabase ON PRIMARY ( NAME = MyDatabase_Data, FILENAME = 'C:\SQLData\MyDatabase.mdf', SIZE = 5MB, MAXSIZE = 10MB, FILEGROWTH = 1MB ) LOG ON ( NAME = MyDatabase_Log, FILENAME = 'C:\SQLLogs\MyDatabase.ldf', SIZE = 2MB, MAXSIZE = 5MB, FILEGROWTH = 1MB ); ``` 此示例中: - 数据库文件存储在 `C:\SQLData\MyDatabase.mdf` 路径下。 - 日志文件存储在 `C:\SQLLogs\MyDatabase.ldf` 路径下。 - 数据文件初始大小为 5MB,最大大小为 10MB,每次增长 1MB。 - 日志文件初始大小为 2MB,最大大小为 5MB,每次增长 1MB。 #### 注意事项 - 确保指定的文件路径具有适当的权限,以便 SQL Server 可以访问和写入文件。 - 如果未指定文件路径,则 SQL Server 将使用默认路径创建数据库文件。 - 数据库名称必须唯一,并遵循标识符规则[^3]。 ```sql -- 使用默认路径创建数据库 CREATE DATABASE MyTestDB; ``` 此命令将使用默认设置创建一个名为 `MyTestDB` 的数据库---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值