実際にはどういう意味ですか?それらについて私が見つけたすべての記事は私にアイデアを与えません、または私の知識はそれを理解するには余りにも不十分です。
誰かが私にこれを一から学ぶことができるいくつかのリソースをくれますか?
実際にはどういう意味ですか?それらについて私が見つけたすべての記事は私にアイデアを与えません、または私の知識はそれを理解するには余りにも不十分です。
誰かが私にこれを一から学ぶことができるいくつかのリソースをくれますか?
回答:
ここでは、OLTPとOLAPより優れたソリューションを見つけます。
OLTP(オンライントランザクション処理)は、特定のシステムの操作に関与しています。OLTPの特徴は、多数の短いオンライントランザクション(INSERT、UPDATE、DELETE)です。OLTPシステムの主な重点は、非常に高速なクエリ処理、マルチアクセス環境でのデータ整合性、および1秒あたりのトランザクション数で測定される有効性を維持することです。OLTPデータベースには詳細な最新のデータがあり、トランザクションデータベースの格納に使用されるスキーマはエンティティモデル(通常は3NF)です。これには、企業データベースのメールの更新など、個々のレコードにアクセスするクエリが含まれます。
OLAP(オンライン分析処理)は、履歴データまたはアーカイブデータを扱います。OLAPの特徴は、トランザクションの量が比較的少ないことです。多くの場合、クエリは非常に複雑で、集計が含まれます。OLAPシステムの場合、応答時間は有効性の尺度です。OLAPアプリケーションは、データマイニング技術で広く使用されています。OLAPデータベースには、集約された履歴データがあり、多次元スキーマ(通常はスタースキーマ)に格納されます。クエリは、昨年の会社の利益のように、管理レコードの大量のデータにアクセスする必要がある場合があります。
非常に短い答え:
データベースによって用途は異なります。私はデータベースの専門家ではありません。経験則:
短い答え:
2つのシナリオ例を考えてみましょう。
シナリオ1:
オンラインストア/ウェブサイトを構築していて、次のことができるようにしたいと考えています。
特定のユーザーのデータを検索し、その名前を変更できるようにしたい...基本的にユーザーデータに対してINSERT、UPDATE、DELETE操作を実行します。製品等も同様
おそらくユーザーが製品を購入することを伴うトランザクションを実行できるようにしたい(それは関係です)。その場合、おそらくOLTPが適しています。
シナリオ2:
オンラインストア/ウェブサイトがあり、次のような計算をしたい
これは分析/ビジネスインテリジェンスドメインに該当するため、おそらくOLAPの方が適しています。
「どのように/何を/どのくらい知っているのがいいだろう」という観点で考えると、1つ以上の種類のすべての「オブジェクト」(たとえば、すべてのユーザーとほとんどの製品が合計費用)おそらくOLAPの方が適しています。
より長い答え:
もちろん、物事はそれほど単純ではありません。そのため、そもそものような短いタグを使用する必要がOLTP
ありOLAP
ます。最終的には、各データベースを個別に評価する必要があります。
では、OLAPとOLTPの根本的な違いは何でしょうか。
まあ、データベースはどこかにデータを保存する必要があります。データの保存方法が、そのデータの可能な使用法を大きく反映していることは驚くべきことではありません。データは通常、ハードドライブに保存されます。ハードドライブを、私たちが物事を読み書きできる本当に広い紙のシートと考えてみましょう。読み取りと書き込みを効率的かつ高速に行えるように整理するには、2つの方法があります。
1つの方法は、電話帳のような本を作ることです。本の各ページには、特定のユーザーに関する情報が格納されています。これで、特定のユーザーの情報を簡単に見つけることができます。ページにジャンプしてください!必要に応じて、最初に特別なページを用意して、ユーザーがどのページにいるかを通知することもできます。しかし、一方で、たとえば、すべてのユーザーが費やした金額を知りたい場合は、すべてのページ、つまり本全体を読む必要があります。これは、行ベースのブック/データベース(OLTP)です。冒頭のオプションページがインデックスになります。
大きな紙を使用するもう1つの方法は、会計帳簿を作成することです。私は会計士ではありませんが、「支出」、「購入」のページがあると想像してみてください。これで、「総収益を教えて」などのクエリをすばやく実行できるようになります(「購入"ページ)。また、「販売された製品のトップ10をくれ」などのより複雑なものを要求しても、許容できるパフォーマンスを維持できます。しかし、特定のユーザーの支出を見つけるのがどれほど大変かを考えてみましょう。全員の支出のリスト全体を調べ、その特定のユーザーの支出をフィルタリングしてから、それらを合計する必要があります。基本的に、これは「本全体をもう一度読む」ことになります。これは、列ベースのデータベース(OLAP)です。
それは次のとおりです:
OLTP
データベースは、多くの小さなトランザクションを実行するために使用されることを意図しており、通常は「単一の真の情報源」として機能します。
OLAP
一方、データベースは分析、データマイニング、クエリの数を減らすのに適していますが、通常は大きくなります(より多くのデータを操作します)。
それはもちろんそれよりも少し複雑であり、それはデータベースがどのように異なるかについての20 000フィートの概要ですが、それは私が頭字語の海で迷うことがないようにします。
頭字語といえば:
もう少し読むために、ここに私の答えに大きく影響を与えたいくつかの関連リンクがあります:
違いは非常に簡単です:
OLTP(オンライントランザクション処理)
OLTPは、トランザクション指向のアプリケーションを促進および管理する情報システムのクラスです。OLTPは、システムがユーザーの要求に即座に応答する処理を指す場合にも使用されています。オンライントランザクション処理アプリケーションは、スループットが高く、データベース管理において挿入または更新を多用します。OLTPシステムの例には、注文入力、小売販売、金融取引システムなどがあります。
OLAP(オンライン分析処理)
OLAPは、ビジネスインテリジェンスのより広範なカテゴリの一部であり、リレーショナルデータベース、レポート作成、データマイニングも含まれます。OLAPの一般的なアプリケーションには、販売、マーケティング、管理レポート、ビジネスプロセス管理(BPM)、予算編成と予測、財務レポートなどの分野のビジネスレポートが含まれます。
詳細を見るOLTPとOLAP
oltp-主にビジネストランザクションに使用されます。ビジネスデータの収集に使用されます。SQLでは、挿入、更新、削除コマンドを使用して、データの小さなソースを取得します。高度に正規化されているように... OLTPデータの整合性を維持するために主に使用されます。
olap-主にレポート、データマイニング、ビジネス分析の目的で使用します。大規模またはバルクのデータの場合、意図的に非正規化されます。履歴データを保存します。