“阶段 /分期”的确切定义是什么?在计算机科学 /工程学?

发布于 2025-02-06 20:11:13 字数 581 浏览 1 评论 0原文

我从数据科学开始,我来自数学/统计/经济学。我非常习惯于精确的定义,即使这意味着要对理论进行更深入的解释,以解释像函数一样简单的事物。

我试图在使用时寻找阶段/分期的精确定义:

  • 分期区域
  • 登台环境
  • 分期登台模型
  • 登台文件
  • 中登台步骤
  • 在git等

,例如: https://githowto.com/staging_and_committing 当然,在这里,我可以理解上下文,但是我想一个抽象的计算机工程学解释您正在学习自己建立“阶段”的理论。

但是,没有任何解释能够精确地定义它是什么以及它来自何处。例如,如果您是电子,计算机工程师或计算机科学家,您将如何定义它,您会介意指出研究论文或您学到的著名教科书吗?

我在“数据”的背景下,但我认为它独立于该领域,因为据我所知,它毕竟是一个计算机单元。但是我可能错了。

谢谢你!

I am starting in Data Science and I come from math/stats/economics. I am very used to precise definitions even if it means going a bit deeper into the theory to explain something as simple as a function.

I tried to look for precise definitions of Stage / Staging when used as:

  • Staging area
  • Staging environment
  • Staging models
  • Staging file
  • a staging step in git
  • etc

For example: https://githowto.com/staging_and_committing
Here, I can understand the context, of course, but I'd like an abstract computer engineering explanation of what it is as if you were learning the theory to build a "stage" on your own.

However, none of the explanations were able to precisely define what it is and where it comes from. For example, if you are an electronic or computer engineer or computer scientist, how would you define it, and would you mind pointing out research papers or a famous textbook where you learned it?

I am in the context of "data" but I would argue that it is independent of the field, because it is a computer unit after all, as I understand.. but I may be wrong.

Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

等往事风中吹 2025-02-13 20:11:13

这是一个类比。

我想到的是像演员在剧院舞台上的文字一样的登台数据。一旦演员(ETL作业)进入舞台,他们就需要使用文本(数据)。将数据放在舞台上就像给演员一本新的教科书。他知道如何阅读,解释和播放,但他还不知道文字。因此,提供文本(“分期”数据)实际上是在播放之前(过程/作业)开始的,但也可以在场景之间进行。图片可能有些奇怪,但我认为您明白了。

  • 提取数据 - >将其放在舞台
  • 转换数据 - >让演员播放并创建一些新的
  • 负载数据 - >提供体验

实际上,我怀疑是否有一个精确的定义,但是从技术上讲,登台区域也称为着陆区,是提取和加载之间的存储区域ETL过程中的数据。

通常,该数据定义为非持久性;它被ETL工作之前或之后被覆盖或删除。但是,在某些情况下,根据ETL体系结构,分期数据成为元数据,参数或比较数据。我更喜欢在可能的情况下保持非持久性。

在git中,登台将是“上台并准备好”(想想封闭的窗帘后面的剧院舞台),并且(再次)向观众致意。

It's an analogy.

I think of staging data like an actors text on a theater stage. As soon as the actor (the ETL job) enters the stage, they need text (data) to play with. Putting data on stage is like giving an actor a new textbook. He knows how to read, interpret and play, but he doesn't know the text, yet. So providing the text ("staging" the data) is quite before the play (the process/job) actually begins, but can also be between the scenes. The picture might be a little odd, but I think you get the point.

  • EXTRACT data -> put it onto stage
  • TRANSFORM data -> let the actors play and create something new
  • LOAD data -> deliver the experience

Actually, I doubt there's something like a precise definition for it, but technically, the staging area, also called landing zone, is the storage area between extracting and loading the data in an ETL process.

Generally this data is defined non-persistent; it's overwritten by or deleted before or after an ETL job. However, there are also cases in which staging data becomes metadata, parameters or comparison data for the next job run, depending on the ETL architecture. I prefer to keeping it non-persistent wherever it's possible.

In git, staging would be the "get on stage and be ready" (think of the theatre stage behind the closed curtain) and committing would be (again) the "delivery" to the audience.

谁人与我共长歌 2025-02-13 20:11:13

“分期”通常是您放东西的中间地方。我相信该派生来自“登台场”和“登台区”等军事短语。

它没有精确的技术意义。

“分阶段更改”是源代码更改添加到GIT回购中,但尚未承诺。

“分期数据”是从源系统中提取并降落在数据库表中的数据,然后再转换并加载到目标表中。

“分期环境”是在生产部署之前部署完整申请进行最终测试的环境。

"Staging" generally is an intermediate place where you put something. I believe the derivation is from military phrases like "staging ground" and "staging area".

It doesn't have a precise technical meaning.

"Staged changes" are source code changes added to a git repo but not yet committed.

"Staging data" is data that was extracted from a source system and landed in a database table before being transformed and loaded into a target table.

"Staging environment" is environment where a complete application is deployed for final testing ahead of a production deployment.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文