Oracle リレーショナル分散インメモリ データベース

Oracle リレーショナル分散インメモリ データベース

インメモリコンピューティング

今のところ、メモリは私たちが使用できる最も高速なストレージ デバイスです。できるだけ多くのデータをメモリに格納することが、さまざまなアプリケーションのデータ アクセス パフォーマンスを向上させる最も効果的な方法になっています。多くの重要なビジネス システムにとって、メモリはサイズが非常に限られた「揮発性」ストレージ デバイスです。パフォーマンスを確保しながらデータを永続化する方法と、最も処理されるデータに限られたメモリをどのように割り当てるかは、プログラム設計における主要な課題です。

Oracle の TimesTen インメモリ データベースは、高い同時実行性、低レイテンシ、高可用性が求められる重要なビジネス システムにほぼ完璧なソリューションを提供します。データをメモリに格納し、SQL を使用して開発を簡素化することで、アプリケーション開発者は基盤となるメモリ割り当てを気にすることなく、ビジネスの実装に集中できます。 TimesTen は、高度な同時実行環境において、Oracle データベースに匹敵するデータの整合性、一貫性、回復性も提供できます。メモリの「揮発性」も克服され、メンテナンス作業が大幅に簡素化されます。そのため、Oracle TimesTen は 20 年以上にわたって通信や金融などの業界で広く使用されてきました。

[[232005]]

メモリベースのコンピューティングに関するもう 1 つの問題は、常に業界関係者を悩ませてきました。それは、メモリが限られていることと、比較的密度の高いデータです。つまり、1 台のサーバーのメモリでは、処理する必要のあるデータを保存するには到底足りず、頻繁なメモリ スワップによってリソースが大量に消費されてしまいます。ユーザーは、処理のためにデータを複数のサーバーに分散するために手動のデータベース パーティショニングを使用する必要がありますが、その結果、管理と開発が複雑になり、スケーラビリティが低下するなど、多くの問題が発生します。

技術の発展に伴い、Redis、Oracle Coherence などの分散メモリ グリッド テクノロジもデータ アクセスの高速化に使用され始めました。分散メモリ グリッド テクノロジは、キー値メモリ データ ストレージを使用して、ディスク データベース データをクラスタ システムの各ノードのキャッシュに簡単に分散し、単純なデータ クエリとトランザクションに高いパフォーマンスを提供します。しかし、このタイプのテクノロジーには、強力なデータ一貫性、データの永続性、複雑なレポートと統計、大規模な同時トランザクション処理などの問題があります。

分散リレーショナルインメモリデータベース - 理想的なインメモリデータベース

高い同時実行性とリアルタイム応答要件を備えた重要なビジネス システムの場合、分散リレーショナル データベースが理想的な選択肢です。分散リレーショナル データベースは、リレーショナル データの ACID 特性を備え、高い同時実行性のユーザー要求を処理でき、ビジネス データ アクセス要求にリアルタイムで応答でき、完全なバックアップ、リカバリ、および災害復旧メカニズムを備えています。同時に、NoSQL のメモリ グリッド テクノロジと同様に、処理対象のデータをクラスター内のすべてのノードに分散し、必要に応じてクラスター内のデータ処理ノードを拡張することができます。今年5月初旬、インメモリコンピューティング、分散処理、リレーショナルデータベースを統合した理想的な分散インメモリデータベースであるOracleの分散インメモリデータベースが、ついに正式に市場に投入されました。

TimesTen 18.1 スケールアウトの機能

Oracle の分散型インメモリ データベースは、20 年以上の歴史を持つ TimesTen カーネルを使用して構築されています。公式リリースは TimesTen 18.1 Scaleout と呼ばれ、バージョン番号は 2018 年の最初のメジャー リリースを意味します。

まず、TimesTen 18.1 Scaleout は厳密にリレーショナル データベースです。トランザクションの原子性と永続性、トランザクションのコミットとロールバック、バージョンベースの同時実行制御、非ブロッキングの読み取りおよび書き込み操作など、Oracle データベースと同じ ACID 機能を備えています。

第二に、分散型インメモリ データベースとして、論理的には単一で物理的に分散された分散型インメモリ データベースです。 TimesTen 18.1 Scaleout のデータは、データベース クラスターの各ノードに分散され、保存されます。アプリケーションは、データベースへの任意のアクセス ポイントからすべてのデータにアクセスでき、データがどこに保存されているかを知る必要はありません。これも、市場にあるシャード データベースとは異なります。この設計により、アプリケーション開発とデータベース管理の難しさが大幅に軽減されます。

TimesTen Scaleoutの基本概念

Oracle TimesTen Scaleout を実行する内部的に相互接続されたサーバーのグループは、グリッドと呼ばれます。実行中の TimesTen Scaleout コードはインスタンスと呼ばれます。 TimesTen Scaleout インスタンスは、データ インスタンスと管理インスタンスに分かれています。データ インスタンスの概念は、データ キャッシュとバックグラウンド プロセスを含む Oracle データベース インスタンスの概念と非常に似ています。

各 TimesTen Scaleout データ インスタンスには、要素と呼ばれるデータ永続性の最小単位が含まれています。要素には、データベース全体のデータの一部と、このデータベース内の完全なユーザー情報およびスキーマ情報が含まれます。各要素には、独自の永続的なチェックポイント ファイルとトランザクション ログ ファイルがあります。エレメントはレプリカを使用して高可用性と災害復旧を実現できます。

クラスターでは、通常、クラスター全体の動作状態を追跡および監視するために 1 つまたは 2 つの管理インスタンスが構成されます。

データの配布方法

では、すべてのデータを各要素にどのように分配するのでしょうか?一般的には、次のような方法があります。

  • 配布する

一貫性のあるハッシュ アルゴリズムに基づく分散は、通常、大規模なデータベース テーブルに使用されます。たとえば、Cust_ID のハッシュ値に基づいて、次のステートメントを使用して CUSTOMER テーブルの各行をすべての要素に分散できます。

  1. 作成可能な顧客(
  2. ID番号なし  NULL  主要な 
  3. 名前VARCHAR2(100)、
  4. ) ハッシュ配布します

  • 参照

親テーブルに関連付けられた行は同じ要素内に共存します。最適化されたローカル トランザクションは、ORDERS テーブル内の CUSTOMER に関連付けられた行を同じ要素に格納します。

  • 重複

小さなクエリ指向のテーブルは、各要素に完全なデータを格納し、ローカル トランザクションを最適化します。たとえば、PRODUCT テーブルのすべての要素の完全なデータのコピーを保存する場合、これは頻繁に変更されない比較的小さなテーブルに適しています。

高可用性の実装

前述したように、TimesTen 18.1 Scaleout は、Element の複数のコピーを通じて高可用性を実現します。このメカニズムは、次の図に示すように、K-Safety (K>1) と呼ばれます。

完全なデータ セットはデータ スペースと呼ばれ、データベースのすべての要素が含まれます。上図のデータスペース グループ 1 には、完全なデータベースを構成する要素 1 と要素 3 が含まれています。同じ要素を持つセットはレプリカ セットと呼ばれます。それらはお互いのコピーです。たとえば、上の図のレプリカ セット 1 には、高いデータ可用性を実現するために異なるマシンに配置された要素 1 と要素 2 が含まれています。

互いにコピーする要素はアクティブ/アクティブです。つまり、アプリケーションは互いに影響を与えることなく、任意の要素に対して読み取りおよび書き込みトランザクションを開始できます。データベース システムは、2 つの要素間のデータ同期を担当します。

このアーキテクチャでは、複数の要素に障害が発生しても、利用可能なレプリカの完全なセットがある限り、アプリケーションは影響を受けません。レプリカ セット全体で例外が発生した場合、アプリケーションは残りのデータのみを返す結果セットを受け入れることを選択できます。

集中インストールと管理

TimesTen 18.1 スケールアウト管理操作は、ホストのグラフィカル インターフェイスまたはコマンド ラインを介して単一のアクセス ポイントから実行でき、次のようなクラスタのすべての操作を完了できます。

  • ソフトウェアのインストール
  • パッチ適用
  • 構成管理
  • データベースの作成と管理
  • データベース監視
  • バックアップと復元
  • ログ収集

Oracle のメモリ キャッシュ テクノロジーの比較

TimesTen 18.1 Scaleout のリリースにより、Oracle はリアルタイムのインメモリ データ処理の難題をさらに改善しました。従来の OLTP 指向の TimesTen も 18.1 にアップグレードされ、TimesTen 18.1 Classic と呼ばれています。使用シナリオの違いを見てみましょう。

1. TimesTen18.1 クラシック

使用シナリオ: リアルタイムおよび準リアルタイムの OLTP システム高速化に使用されます。 TimesTen18.1 Classic のマシン メモリが処理するデータを格納するのに十分である場合、TimesTen 18.1 Classic はより高いリアルタイム データ処理パフォーマンスを提供できます。

デプロイメント: CacheGroup またはその他の方法を使用して Oracle データベースとデータを同期し、独立して実行することも、Oracle データベースのバッファとして実行することもできます。

2. TimesTen 18.1 スケールアウト

使用シナリオ: 高い同時実行性と低レイテンシを備えた重要なビジネス システム (主に OLTP) 向けの、分散型でフォールト トレラント、柔軟にスケーラブルなリレーショナル インメモリ データベース。リアルタイムで処理する必要があるすべてのデータを単一のマシンのメモリに保存できず、手動でデータベースをパーティション分割する必要があるシナリオ。

展開: サーバー クラスター展開を使用します。

3.Oracle データベース インメモリ オプション

使用シナリオ: Oracle12.1.02 データベースで導入されたデータ列メモリ テクノロジは、主にデータ分析とレポート作成を高速化するために使用されます。

展開: ユーザーは、データベース内で分析およびレポートする必要があるデータベース テーブルに、列指向メモリ ストレージのオプションを追加できます。データベースが起動されるか、またはテーブルが初めてクエリされるときに、データは列形式または列圧縮形式で Oracle データベースの SGA 領域のメモリ内領域にキャッシュされます。オプティマイザは、列メモリ データにアクセスする必要がある SQL がメモリ内領域からデータを取得できるように、SQL アクセス パスを自動的に最適化します。

4. オラクルコヒーレンス

使用シナリオ: Oracle Coherence は分散メモリ グリッド テクノロジであり、通常は中間層のデータ アクセスを高速化するために使用されます。

デプロイメント: データはキー値の形式でメモリに保存され、REST API を使用してアクセスされます。

要約する

ビッグデータとクラウドの時代では、リアルタイムデータを処理する方法は数多くあります。 Oracle は、データ アクセスと処理を高速化するためのさまざまなメモリ テクノロジ製品とテクノロジを提供しています。 TimesTen 18.1 Scaleout のリリースにより、Oracle メモリ コンピューティング製品ファミリがさらに強化されます。実績のある TimesTen インメモリ データベースのカーネルを継承し、No SQL データベースの設計概念をいくつか取り入れています。リアルタイムのデータ処理に対する要件が高い多くの主要なビジネス システムで確実に使用されるでしょう。

<<:  WOT 董明新: スノーボールにおけるコンテナ技術の実践

>>:  NFV+SDNクラウドネットワーク連携によりVNFの完全自動展開を実現

推薦する

WeChat公式アカウントのプロモーション、WeChat公式アカウントのフォロワーを増やすスキル!

多くの場合、学習はとても簡単で、WeChatパブリックアカウントのフォロワーを増やしたり、新しいメデ...

Hostyun: 米国の VPS、China Unicom AS9929 回線を使用、500M 帯域幅、月額 20 元、512M メモリ/5gSSD/300g トラフィック

10年間運営されている国内格安VPSブランドのHostyunが、興味深い新製品「China Unic...

無料のウェブサイトソースコードの使い方

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますインターネ...

どちらも広告チャネルであるにもかかわらず、なぜコンバージョン効果にこれほど大きな違いがあるのでしょうか?

どちらも広告チャネルですが、なぜMomentsとBaiduの広告のコピーライティングの内容はこんなに...

sharktech-$159/L5520/24g メモリ/2X2T ハードディスク/32IP/無制限 G ポート/IPMI/ロサンゼルス/DDOS 保護

米国の有名かつ老舗のDDOS保護ホスト業者であるsharktechが6月に実施した最新のプロモーショ...

ブラックフライデー: 安価なおもちゃの「専用サーバー」!

ここでは、低価格で宣伝・販売されている独立系サーバーをいくつか紹介します。良いかどうかはわかりません...

エッジコンピューティングの導入を成功させる4つの要素

クラウド コンピューティング テクノロジーが初めて登場したとき、それがすべてのコンピューティングを網...

最適化担当者がBaiduの重量分析サイトに過度に依存すべきでない理由について簡単に説明します。

Google が中国から撤退し、Baidu が世界で唯一の検索エンジンになって以来、最適化担当者は ...

SEO計画全体を通してオーディエンスを理解する

SEO を成功させるには、企業組織そのものを詳細に理解する必要があります。あなたの会社はどのような製...

hostens: 全製品が 70% オフ、KVM、OVZ、大容量ハードディスク ストレージ VPS、すべて月額 1.2 ドルから

Hostens (2003 年に設立されたリトアニア企業の新ブランド) は現在、すべての VPS を...

adman: ロシアのノボシビルスク VPS、50% 割引、最低 17 元、無制限のトラフィック、Windows をサポート

ロシアのサーバー業者admanは現在、自社のVMware仮想VPS(2年間の支払いが必要)を50%割...

Ceph オブジェクト ストレージに基づく階層型ハイブリッド クラウド ストレージ ソリューション

パブリッククラウドストレージサービスは簡単に拡張できます。ユーザーは、ストレージ容量のニーズに応じて...

Racknerd スピードテスト、どのデータセンターが Racknerd に適していますか?

Racknerd の VPS には複数のデータセンターがあります。どのデータセンターが優れていますか...

主流の検索エンジンの原則

今日は検索エンジンの原理を紹介します。まずは写真を見てみましょう…次に、階層ごとに説明します。 1....

推奨 [人気のないルート]: kazila-$7/Xen/512m メモリ/15g ハードディスク/500g トラフィック/ロサンゼルス

ロサンゼルス データ センターにある、速度が速く、パフォーマンスが強力で、マシンが安定した VPS ...