ホームページ  >  記事  >  データ フローはいくつかのカテゴリに分類されます

データ フローはいくつかのカテゴリに分類されます

hzc
hzcオリジナル
2020-06-29 16:17:488969ブラウズ

データ ストリームは 2 つのカテゴリに分類されます。 1. 入力ストリーム [InputStream]。入力ストリームは読み取りのみ可能で書き込みはできません。一方、出力ストリームは書き込みのみ可能で読み取りはできません。 2. 出力ストリーム [OutputStream]。通常、入力ストリームはプログラム内でデータを読み取るために使用され、出力ストリームはプログラムに出入りするデータと同様に、データを書き込むために使用されます。

データ フローはいくつかのカテゴリに分類されます

#データ ストリームは、開始点と終了点を持つ順序付けられたバイトのシーケンスです。入力ストリームと出力ストリームを含みます。

データ ストリームはもともと通信分野で使用される概念であり、情報の送信に使用されるデジタル的にエンコードされた信号のシーケンスを表します。この概念は、1998 年に Henzinger によって Document 87 で初めて提案されました。彼は、データ ストリームを「所定の順序で 1 回だけ読み取ることができるデータのシーケンス」と定義しました。

データ フロー アプリケーションの開発は、次の 2 つの要素の結果です。

詳細データ

大量の詳細データを継続的かつ自動的に生成できます。この種のデータは、伝統的な銀行取引や株式取引の分野で最初に登場し、その後、地質調査、気象学、天文観測などでも登場しました。特に、インターネット (ネットワーク トラフィック監視、クリックストリーム) と無線通信ネットワーク (通話記録) の出現により、大量のデータ ストリーム タイプのデータが生成されました。この種のデータのほとんどが地理情報に関連していることに気づきましたが、これは主に地理情報の次元が大きく、大量の詳細なデータを生成するのが容易であるためです。

複雑な分析

更新ストリームの複雑な分析をほぼリアルタイムで行う必要があります。上記の分野におけるデータの複雑な分析 (傾向分析、予測など) は、オフライン (データ ウェアハウス内) で実行されることがよくありましたが、一部の新しいアプリケーション (特にネットワーク セキュリティと国家安全保障の分野) は時間に非常に敏感です。極端なイベント、詐欺、侵入、インターネット上の異常の検出、複雑な群衆の監視、傾向の追跡、探索的分析、高調波分析などはすべてオンライン分析を必要とします。

その後、学界は基本的にこの定義を認識し、これに基づいて定義を若干修正した論文もありました。たとえば、S. Guha et al. [88] は、データ ストリームは「1 回または数回しか読み取ることができない順序付けられたポイントのシーケンス」であると考えており、前述の定義の「1 パス」制限が緩和されます。

データ ストリームの処理におけるデータ読み取り数の制限を強調するのはなぜですか? S. Muthukrishnan [89] は、データ フローとは「非常に高速で到着する入力データ」を指すため、データ フロー データの送信、計算、保存が困難になると指摘しました。この場合、データを処理する機会は最初に到着したときの 1 回だけであり、それ以外のときにデータにアクセスすることは困難です (データを保存する方法がないため)。

分類:

データの性質や形式が異なり、対流の処理方法も異なるため、Javaの入力では/output クラス ライブラリ。さまざまな性質の入力/出力ストリームに対応するさまざまなストリーム クラスがあります。ジャワでは。 io パッケージでは、基本的な入出力ストリーム クラスは、読み書きするデータの種類に応じて、バイト ストリームと文字ストリームの 2 種類に分類できます。

入力ストリームと出力ストリーム

データ ストリームは、入力ストリーム (InputStream) と出力ストリーム (OutputStream) の 2 つのカテゴリに分類されます。入力ストリームは読み取りのみ可能ですが書き込みはできません。一方、出力ストリームは書き込みのみ可能ですが読み取りはできません。通常、プログラムは、データがプログラムに出入りするのと同じように、入力ストリームを使用してデータを読み取り、出力ストリームを使用してデータを書き込みます。データ フローは、プログラムの入出力操作を関連デバイスから独立させるために使用されます。

入力ストリームはキーボードまたはファイルからデータを取得でき、出力ストリームはデータをモニター、プリンター、またはファイルに送信できます。

バッファードストリーム

データ伝送効率を向上させるために、通常、バッファードストリーム(Buffered Stream)が使用されます。つまり、ストリームにはバッファ(buffer)とバッファが装備されています。データを転送するメモリブロック専用です。バッファリングされたストリームにデータを書き込む場合、システムは外部デバイスに直接送信せず、代わりにデータをバッファに送信します。バッファは自動的にデータを記録し、バッファがいっぱいになると、システムはすべてのデータを対応するデバイスに送信します。

バッファされたストリームからデータを読み取るとき、システムは実際にバッファからデータを読み取ります。バッファが空の場合、システムは関連するデバイスからデータを自動的に読み取り、バッファを満たすためにできるだけ多くのデータを読み取ります。

以上がデータ フローはいくつかのカテゴリに分類されますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。