42099


サーバーとデータベースの通信の事は何と呼ぶのでしょうか？  
画像の様にサーバーとデータベースは通信していると思うのですが、  
これらの矢印は何と呼ぶのでしょうか？[![画像の説明をここに入力](https://i.stack.imgur.com/5rUuH.png)](https://i.stack.imgur.com/5rUuH.png)


CC BY-SA 3.0
2018-03-02T15:16:14.343
42098
2018-03-04T02:27:38.200
2018-03-02T16:36:52.020
3337
27418
question
database network プログラミング言語
サーバーとデータベースの通信の事は何と呼ぶのか？


図の例で言うと、「データベースへのクエリ（問い合わせ）」と「データベースからのレスポンス（応答）」でしょうか。一連の問い合わせと応答を一括りにして「トランザクション」という場合もあるでしょう。

ところで、この構成において、サーバーというのは誤解を招きます。恐らく、ウェブサーバーなどを想定されているのだと思いますが、データベースも「『データベース』という機能を提供するサーバー」ですし、それを利用する側は「クライアント」ということになります。誤解を避けるための図を書くとすると、

エンドユーザー ←→ ｛ウェブサーバー＆データベースのクライアント｝ ←→ データベース

の様になり、ご質問は、この右半分を指していることになります。


CC BY-SA 3.0
2018-03-02T16:32:20.617
42099
2018-03-02T16:32:20.617
3337
42098
answer


言葉の定義という点では、通信の部分はデータベースの定義外なので、文脈次第ということになります。

一般にデータベースに対する操作は「クエリ」「問い合わせ」と呼ばれることが多いですので、右向きの矢印についてはそう言っておけば大抵大外れではないと思います。が、注目しているレイヤがもっと低かったり高かったりすると、「リクエスト」などの一般的な用語だったりアプリケーションで定義される用語かもしれません。

左向きの矢印については微妙です。「クエリ」に対して帰ってくるのは何かというのが文脈によって全く異なるからです。データベースアプリケーションの実装一つとっても、(`SELECT`の場合だとして)その結果のデータが帰ってくるかもしれませんし、単に「成功/失敗」が帰ってくるだけでデータを取得するには別途やりとりが必要かもしれません。ところで、後者の場合、そのためにクライアントから行われる通信は「クエリ」だとは限らないので、右向きの矢印が「クエリ」だというのもやはり文脈次第ということになります。


CC BY-SA 3.0
2018-03-04T02:27:38.200
42110
2018-03-04T02:27:38.200
5793
42098
answer