问题标签 [data-storage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1707 浏览

c# - 数据库是我的 C# 应用程序数据存储的正确选择吗?

我正在开发一个 C# 应用程序,并希望确保选择适合这些规范的数据存储的最佳选择。

该程序可以有无限量的数据,但这些数据只能由使用该应用程序的单个用户使用。每次关闭应用程序时,我都需要保存数据,并且需要在应用程序启动时加载。

我看过数据库,但不确定哪个最适合我的需要。另外,我想知道根据上述规范我是否需要一个数据库,也许我应该只使用实现序列化和反序列化的二进制文件/XML 文件。

请指出我正确的方向!

谢谢, OC

编辑:我忘记包括的一个重要因素是必须允许一个用户保存他/她输入的所有条目并将其导出到可以在应用程序/用户之间轻松共享的外部文件。

0 投票
6 回答
4375 浏览

c# - .NET 数据存储 - 数据库与单个文件

我有一个 C# 应用程序,它允许一个用户输入有关客户和工作地点的信息。信息非常基础。

  • 客户:姓名、号码、地址、电子邮件、相关工作地点。
  • 工作地点:名称、地点。

这是我需要的这个程序的规格。

  • 输入的数据量没有限制。
  • 每个应用程序单个用户。没有并发活动或多个用户。
  • 允许将用户条目/数据导出到可以在应用程序/用户之间轻松共享的外部文件。
  • 允许用户查询根据客户信息/工作地点信息的不同组合显示客户。
  • 永远不会在应用程序之外查看或操作数据。
  • 该程序几乎总是运行,最小化到任务栏。
  • 启动时间不是很重要,但是我希望查询速度相当快。

这一切似乎都将我指向一个数据库,但它是一个非常轻量级的数据库。但是,我也需要它在数据存储方面没有限制。如果您同意我应该使用数据库,请告诉我什么最适合我的需要。如果您认为我不应该使用数据库,请就您认为最好的方法提出一些其他建议。

0 投票
2 回答
2348 浏览

database - 保存视频文件的位置 - 数据库或磁盘

将视频文件作为 BLOB 对象存储在数据库中还是将它们存储在物理磁盘上是个好主意。

这是一个类似于 youtube 的网站,用户可以在其中上传他们的视频并查看它们

数据库将是 Mysql

哪个选项更好,为什么

谢谢

0 投票
6 回答
970 浏览

xml - XML的弱点是什么?

阅读 StackOverflow 并收听 Joel Spolsky 和 ​​Jeff Atwood 的播客,我开始相信许多开发人员讨厌使用 XML,或者至少尽量避免使用 XML 来存储或交换数据

另一方面,我很喜欢使用 XML 有几个原因:

  • XML 序列化是用大多数现代语言实现的,并且非常易于使用
  • XML 序列化比二进制序列化要慢,当涉及到使用来自多种编程语言的相同数据或打算由人类阅读和理解(甚至用于调试)的情况下(例如,JSON 更难)时,XML 序列化非常有用了解),
  • XML 支持unicode,如果使用得当,不同的编码、字符等都没有问题。
  • 有很多工具可以轻松处理 XML 数据。XSLT就是一个示例,它可以轻松呈现和转换数据。XPath是另一种,使搜索数据变得容易,
  • XML可以存储在一些SQL服务器中,这使得在SQL表中难以存储的复杂数据必须保存和操作的场景成为可能;例如 JSON 或二进制数据,不能直接通过 SQL 操作(除非通过操作字符串,这在大多数情况下很疯狂),
  • XML 不需要安装任何应用程序。如果我希望我的应用程序使用数据库,我必须先安装数据库服务器。如果我希望我的应用程序使用 XML,我不需要安装任何东西
  • XML 比 Windows 注册表或 INI 文件更明确和可扩展
  • 在大多数情况下,不存在 CR-LF 问题,这要归功于 XML 提供的抽象级别。

那么,考虑到使用 XML 的所有好处,为什么这么多开发人员讨厌使用它呢?恕我直言,唯一的问题是:

  • XML 过于冗长,并且比大多数其他形式的数据需要更多的空间,尤其是在 Base64 编码方面。

当然,有很多场景根本不适合 XML。将 SO 的问题和答案存储在服务器端的 XML 文件中是绝对错误的。或者,在存储 AVI 视频或一堆 JPG 图像时,XML 是最糟糕的使用方式。

但是其他情况呢?XML的弱点是什么?


对于那些认为这个问题不是一个真正的问题的人:

与非封闭的自 1980 年以来的重要计算新发明之类的问题相反,我的问题一个非常明确的问题,并且清楚地邀请解释其他人在使用 XML 时遇到的弱点以及他们为什么不喜欢它。它不邀请讨论,例如,XML 是好是坏。它也不需要扩展讨论;因此,到目前为止收到的当前答案简短而准确,并提供了我想要的足够信息。

它是一个 wiki,因为这个问题不可能有一个独特的好答案。

根据 SO 的说法,“不是一个真正的问题”是一个“很难说出这里要问什么的问题。这个问题是模棱两可的、含糊的、不完整的或修辞的,无法以目前的形式得到合理的回答。”

  • 这里要问什么:我认为问题本身很清楚,上面的几段文字使它更加清晰,
  • 这个问题是模棱两可的,模糊的,不完整的:再一次,没有什么模棱两可的,既不模糊也不不完整,
  • 或修辞:不是:我的问题的答案并不明显,
  • 并且无法合理回答:已经有几个人对这个问题给出了很好的回答,表明这个问题可以得到合理的回答。

如何评价答案并确定接受的答案似乎也很明显。如果答案给出了 XML 问题的充分理由,那么这个答案就有可能被投赞成票,然后被接受。

0 投票
1 回答
50 浏览

data-storage - 我在哪里可以找到有关电子邮件服务器/电子邮件存储的论文/优化概念?

我想了解电子邮件服务器/存储中的优化技术。我从哪里得到这些信息?我知道 gmail 和 Outlook 不是开源的。但是他们在服务器端存储电子邮件的方式是研究人员或程序员已经可以解决的问题。有没有在某个地方发表过这样的事情?我不关心电子邮件是如何发送/接收/MTA 等的。只关心它的存储方式。Wikipedia 只讨论传输协议,而没有涉及存储。请指点我一些文章。

谢谢,金星

0 投票
1 回答
113 浏览

python - SQLAlchemy:发送响应后写入数据库

我有一个简单的服务,它大约执行以下操作:

  1. HTTP 客户端连接到服务器
  2. 服务端将客户端的sessionID和时间戳写入数据库,大多数情况下只是返回一个空响应

(它做实际工作并返回实际数据的情况与这个问题无关)

为了尽快返回此响应,我想将信息写入请求处理程序主体中的 memcache(因为 memcache 很快),并生成一个单独的线程,使用 SQLAlchemy 的另一个函数将其写入持久化贮存。这样,我将能够在写入 memcache 并产生一个线程后立即返回,并且请求处理程序不必等到 SQLAlchemy 将信息保存到数据库中。

这有意义吗?如果是,我应该如何实施?

0 投票
1 回答
56 浏览

c++ - I need a C++ interface to S4s server

Does anyone have a C++ Object interface for the S4 server?

0 投票
2 回答
619 浏览

sql-server - 8060 B 数据页(SQL Server)中有 8078 个字节?

SQL Server 中的数据以 8K (8192 B) 页的形式写入,每页有 8060 个字节用于数据,其余部分是开销(系统信息)。

不过,据我所知,最近的文章 [1] 给出了代码示例,说明 8078 字节的数据适合一个页面。

在理解每页 8,060 B 时我错过了什么?

我在 x86 SQL Server 2008 R2 上验证了代码...


更新:

我是否看到有关 [1] 后续行动的答案?我很遗憾我没有将其标记为(对我)有帮助并立即发表评论......我只是想在回复之前自己进行更多调查......


更新2:

我发布了子问题 [2]

[1]
表设计如何影响您的 SQL Server 性能?
http://sqlserver-training.com/how-table-design-can-impact-your-sql-server-performance/-

[2]
如何达到每行 8060 个字节和每行 8000 个(varchar、nvarchar)的限制?
您如何达到每行 8060 个字节和每个(varchar、nvarchar)值 8000 个字节的限制?

0 投票
2 回答
1781 浏览

sql-server - SQL Server 如何保留存储空间?以及如何推翻它?

我试图了解 SQL Server 如何分配和保留空间。

运行文章“表设计如何影响 SQL Server 性能?”中的示例。[1],我收到的结果 [My 1.1] 与文章 [1.1] 中的结果不同。
为什么?

为什么在一种情况下保留/分配了过多的空间([1] 中的所有情况),但在另一种情况下没有 [My 1.1]?
(请注意,在 [1] 中,在两种情况下都保留了过多的空间,尽管在我的计算机上仅在其中一种情况下)

SQL Server 如何分配、保留空间?
我该如何控制/管理它?

[1] ======
表设计如何影响您的 SQL Server 性能?
http://sqlserver-training.com/how-table-design-can-impact-your-sql-server-performance

[我的 1.1]
我的结果从下面的 [1] 转移

[1.1] 结果 [1] 从我上面转移


[1.2]
[1] 的结果与我的一致

0 投票
2 回答
4597 浏览

sql-server - 您如何达到每行 8060 个字节和每个(varchar、nvarchar)值 8000 个字节的限制?

来自我的问题“ 8060 B 数据页(SQL Server)中的 8078 字节? ”向我解释了如何在 MS SQL Server 中导出每页 8078 字节的数据。

如果我计算每页用于数据存储的字节数(没有开销),其中只有一行和一列非索引固定大小类型记录(根据 MSDN 文章Estimating the Size of a Heap),那么我来了到 8087 字节(每页)。

如何在不购买和学习 1000 多页书籍的情况下达到每行 8060 字节(在我的其他问题的答案中提到)和每行 8000 字节(varchar、nvarchar)的限制?

我肯定在存储分配中遗漏了一些东西:要管理的块越少,开销就越大......