(57)【要約】  本発明は、トランザクション処理の方法およびサーバー、ならびにトランザクション処理のシステムを開示する。前記方法は、第１のトランザクションに対応する少なくとも１つのステートメントを取得した後、第１のノードは、は、前記第１のステートメントのタイプを決定し、各ステートメントのタイプにしたがって少なくとも１つのステートメントそれぞれを少なくとも１つの第２のノードに送信し、少なくとも１つの第２のノードに受信されたステートメントに従がって前記ステートメントに対応する実行プランを生成させるようにし、そして、第１のノードは、受信された少なくとも１つの第２のノードによって送信された第１のトランザクションの少なくとも１つのステートメントに対応する実行プランにしたがって、第１のトランザクションを処理する。このように、本発明の実施形態は、複数のタイプのステートメントを同時に処理でき、システムの処理効率を効果的に改善し、システムの運用負担を軽減し、システムのトランザクション性を効果的に確保することができる。
2021517322.tif 000002
【特許請求の範囲】
【請求項１】
第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントを取得するステップと、
前記第１のノードは、前記第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを少なくとも１つの第２のノード中の前記第１のステートメントのタイプに対応する第２のノードに送信して、前記第１のステートメントのタイプに対応する第２のノードに、ステートメントに従がって前記ステートメントに対応する実行プランを生成させるようにするステップであって、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントである前記生成させるようにするステップと、
前記第１のノードは、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理するステップと
を備えることを特徴とするトランザクション処理の方法。
【請求項２】
前記第１のノードが、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従がって、前記第１のトランザクションを処理することは、
前記第１のノードは、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従がって、前記第１のトランザクションを開始し、前記第１のトランザクションに対応するスケジューラを割り当て、
前記第１のノードは、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従がって、前記第１のトランザクションに対応するスケジューラを介して前記第１のトランザクションを処理することを特徴とする請求項１に記載のトランザクション処理の方法。
【請求項３】
前記少なくとも１つの第２のノードは、オンライントランザクション処理（ＯＬＴＰ）ノードおよびオンライン分析処理（ＯＬＡＰ）ノードを含み、
前記第１のノードが、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理することは、
前記第１のノードは、前記ＯＬＴＰノードによって送信された前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランを受信し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容が含まれる場合、前記第１のノードは、前記第１のタイプのステートメントに対応する実行内容に従って、前記第１のトランザクションを処理し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容およびストレージノードが含まれる場合、前記第１のノードは、前記第１のタイプのステートメントに対応する実行内容に従って、前記第１のタイプのステートメントに対応するストレージノードにアクセスし、
前記第１のノードは、前記ＯＬＡＰノードによって送信された前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランを受信し、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれ、前記第１のノードは、前記第２のタイプのステートメントに対応する実行内容に従って、前記第２のタイプのステートメントに対応するストレージノードにタアクセスすることを特徴とする請求項１または請求項２に記載のトランザクション処理の方法。
【請求項４】
前記少なくとも１つの第２のノードは、ＯＬＴＰノードを含み、
前記第１のノードが、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信することは、
前記第１のノードは、ＯＬＴＰノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランおよび前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランが含まれ、
ここで、前記第１のタイプのステートメントに対応する実行プランは、前記第１のタイプのステートメントに従って前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントに対応する実行プランは、前記ＯＬＡＰノードによって送信された第２のタイプのステートメントの初期実行プランに従って、前記ＯＬＴＰノードによって生成され、
前記第２のタイプのステートメントの初期実行プランは前記第２のタイプのステートメントに対応する実行内容を含み、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれることを特徴とする請求項１または請求項２に記載のトランザクション処理の方法。
【請求項５】
ＯＬＡＰノードは、第１のノードによって送信された第１のトランザクションのステートメントを受信するステップと、
前記ＯＬＡＰノードは、前記ステートメントに対応する初期実行プランを生成するステップであって、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる前記生成するステップと、
前記ＯＬＡＰノードは、前記ステートメントに対応する初期実行プランをＯＬＴＰノードに送信して、前記ＯＬＴＰノードに前記ステートメントの初期実行プランに従って前記ステートメントに対応する実行プランを生成させるようにするステップと
を備えることを特徴とするトランザクション処理の方法。
【請求項６】
ＯＬＴＰノードは、ＯＬＡＰノードによって送信された第１のトランザクションのステートメントの初期実行プランを受信するステップであって、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる受信するステップと、
前記ＯＬＴＰノードは、前記ステートメントに対応する初期実行プランに従がって、前記ステートメントに対応するストレージノードを取得し、前記ステートメントに対応する実行プランを生成するステップであって、前記ステートメントに対応する実行プランに前記ステートメントに対応する実行内容およびストレージノードが含まれる前記生成するステップと、
前記ＯＬＴＰノードは、前記ステートメントに対応する実行プランを第１のノードに送信して、前記第１のノードに前記ステートメントに対応する実行プランに従がって前記第１のトランザクションを処理させるようにするステップとを
備えることを特徴とするトランザクション処理の方法。
【請求項７】
ソフトウェアプログラムを格納するように構成されたメモリと、
メモリ内のソフトウェアプログラムを読み取り、請求項１から６のいずれか一項に記載のトランザクション処理の方法を実行するように構成されたプロセッサと
を備えることを特徴とするサーバー。
【請求項８】
ソフトウェアプログラムを格納するコンピュータ記憶媒体であって、前記ソフトウェアプログラムは、１つまたは複数のプロセッサによって読み取られ実行されると、請求項１から６のいずれか一項に記載のトランザクション処理の方法を実施することを特徴とするコンピュータ記憶媒体。
【請求項９】
前記システムトランザクション管理および実行のためのサーバーと、ＯＬＴＰサーバーと、ＯＬＡＰサーバーとを備え、
前記トランザクション管理および実行のためのサーバーは、第１のトランザクションに対応する少なくとも１つのステートメントを取得し、第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを前記ＯＬＴＰサーバーや前記ＯＬＡＰサーバーに送信し、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントであり、
前記ＯＬＴＰサーバーは、前記トランザクション管理および実行のためのサーバーによって送信された第１のトランザクションの第１のタイプのステートメントを受信し、前記第１のタイプのステートメントに従がって前記第１のタイプのステートメントに対応する実行プランを生成し、前記第１のタイプのステートメントに対応する実行プランを前記トランザクション管理および実行のためのサーバーに送信し、
前記ＯＬＡＰサーバーは、前記トランザクション管理および実行のためのサーバーによって送信された第１のトランザクションの第２のタイプのステートメントを受信し、前記第２のタイプのステートメントに従がって前記第２のタイプのステートメントに対応する実行プランを生成し、前記第２のタイプのステートメントに対応する実行プランを前記トランザクション管理および実行のためのサーバーに送信し、
前記トランザクション管理および実行のためのサーバーはさらに、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理することを特徴とするトランザクション処理のシステム。
【請求項１０】
オンライントランザクション処理（ＯＬＴＰ）サーバーおよびオンライン分析処理（ＯＬＡＰ）サーバーを含み、
前記ＯＬＴＰサーバーは、第１のトランザクションに対応する少なくとも１つのステートメントを取得し、前記第１のステートメントのタイプを決定し、前記第１のステートメントを第１のタイプのステートメントとしてと決定すると、前記第１のタイプのステートメントに対応する実行プランを生成し、前記第１のステートメントを第２のタイプのステートメントとして決定すると、前記第２のタイプのステートメントを前記ＯＬＡＰサーバーに送信し、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントであり、
前記ＯＬＡＰサーバーは、前記ＯＬＴＰサーバーによって送信された前記第２のタイプのステートメントを受信し、前記第２のタイプのステートメントに対応する初期実行プランを生成し、および前記第２のタイプのステートメントに対応する初期実行プランを前記ＯＬＴＰサーバーに送信し、
前記ＯＬＴＰサーバーはさらに、前記ＯＬＡＰサーバーによって送信された前記第２のタイプのステートメントに対応する初期実行プランを受信し、前記第２のタイプのステートメントに対応する初期実行プランに従がって、第２のタイプのステートメントに対応する実行プランを生成し、前記第１のタイプのステートメントに対応する実行プランおよび前記第２のタイプのステートメントに対応する実行プランに従がって、前記第１のトランザクションを処理することを特徴とするトランザクション処理のシステム。
【請求項１１】
プロセッサ、メモリ、送受信機、およびバスインターフェースを備え、ここで、前記プロセッサ、前記メモリと前記送受信機は、バスを介して相互に接続され、
前記プロセッサは、前記メモリ内のプログラムを読み取って前記メモリ内のプログラムを読み取って次の操作を実行するように構成され、
第１のトランザクションに対応する少なくとも１つのステートメントを取得し、第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを少なくとも１つの第２のノード中の前記第１のステートメントのタイプに対応する第２のノードに送信して、前記第１のステートメントのタイプに対応する第２のノードに、ステートメントに従がって前記ステートメントに対応する実行プランを生成させるようにし、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントであり、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを処理し、
前記送受信機は、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、
前記メモリは、１つまたは複数の実行可能プログラムを格納し、操作の実行時に前記プロセッサが使用するデータを格納するように構成されることを特徴とする電子デバイス。
【請求項１２】
前記プロセッサは、
前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを開始し、前記第１のトランザクションに対応するスケジューラを割り当て、および前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションに対応するスケジューラを介して前記第１のトランザクションを処理することを特徴とする請求項１１に記載の電子デバイス。
【請求項１３】
前記少なくとも１つの第２のノードは、オンライントランザクション処理（ＯＬＴＰ）ノードおよびオンライン分析処理（ＯＬＡＰ）ノードを含み、
前記プロセッサは、
前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容が含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のトランザクションを処理し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容およびストレージノードが含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のタイプのステートメントに対応するストレージノードにアクセスし、および前記第２のタイプのステートメントに対応する実行内容に従って前記第２のタイプのステートメントに対応するストレージノードにアクセスし、
前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれることを特徴とする請求項１１に記載の電子デバイス。
【請求項１４】
前記少なくとも１つの第２のノードは、ＯＬＴＰノードを含み、
前記送受信機は、
ＯＬＴＰノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランおよび前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランが含まれ、ここで、前記第１のタイプのステートメントに対応する実行プランは、前記第１のタイプのステートメントに従って前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントに対応する実行プランは、前記ＯＬＡＰノードによって送信された第２のタイプのステートメントの初期実行プランに従って、前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントの初期実行プランは前記第２のタイプのステートメントに対応する実行内容を含み、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれることを特徴とする請求項１１に記載の電子デバイス。
【請求項１５】
プロセッサ、メモリ、送受信機、およびバスインターフェースを備え、ここで、前記プロセッサ、前記メモリ、前記送受信機および前記バスインターフェースは、バスを介して相互に接続され、
前記送受信機は、第１のノードによって送信された第１のトランザクションのステートメントを受信し、前記ステートメントに対応する初期実行プランをＯＬＴＰノードに送信し、前記ＯＬＴＰノードに前記ステートメントの初期実行プランに従って前記ステートメントに対応する実行プランを生成させるようにし、
前記プロセッサは、前記ステートメントに対応する初期実行プランを生成し、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれることを特徴とする電子デバイス。
【請求項１６】
プロセッサ、メモリ、送受信機、およびバスインターフェースを備え、ここで、前記プロセッサ、前記メモリ、前記送受信機および前記バスインターフェースは、バスを介して相互に接続され、
前記送受信機は、ＯＬＡＰノードによって送信された第１のトランザクションのステートメントの初期実行プランを受信するように構成され、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれ、前記ステートメントに対応する実行プランを第１のノードに送信し、前記第１のノードに、前記ステートメントに対応する実行プランに従って記第１のトランザクションを処理させるようにし、
前記プロセッサは、前記ステートメントに対応する初期実行プランに従って前記ステートメントに対応するストレージノードを取得し、前記対応する実行プランを生成するように構成され、前記ステートメントに対応する実行プランに前記ステートメントに対応する実行内容およびストレージノードが含まれることを特徴とする電子デバイス。
【請求項１７】
請求項１から６のいずれか一項に記載のトランザクション処理の方法をコンピュータに実行させるコンピュータ命令を格納する、非一時的なコンピュータ可読記憶媒体。
【請求項１８】
非一時的コンピュータ可読記憶媒体に記憶されたコンピュータプログラムを含むコンピュータプログラム製品であって、コンピュータによって実行されると、コンピュータに請求項１から６のいずれか一項に記載のトランザクション処理の方法を実行させるプログラム命令を含むコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
本出願は、２０１８年０３月２９日に中国特許局に提出し、出願番号が２０１８１０２７３９４２．５であり、発明名称が「トランザクション処理の方法およびサーバー、ならびにトランザクション処理のシステム」との中国特許出願を基礎とする優先権を主張し、その開示の総てをここに取り込む。
【０００２】
本発明は、通信技術分野に関し、特にトランザクション処理の方法およびサーバー、ならびにトランザクション処理のシステムに関する。
【背景技術】
【０００３】
インターネットの急速な発展に伴い、単一のデータベースのデータおよびタアクセスの量は急速に増大している。分散型データベースは、大量のデータストレージと同時データアクセスの問題を効果的に解決できる。従来技術の分散型データベースシステムは少なくとも１つのデータベースを含み、各データベースは少なくとも１つのデータテーブルを含む。このようにして、元の集中型データベースのデータを分散し、ネットワークを介して接続された複数のデータストレージノードに保存して、より大きなストレージ容量とより多くの同時アクセスを取得できる。
【０００４】
現在、従来技術の分散型データベースは、同じサーバーを使用して異なるタイプのデータアクセス要件を処理し、異なるタイプのデータアクセス要件は、単一のデータベースのアクセス要件、すなわち、このデータアクセス要件では、サーバーが１つのデータベースに検索を実行して結果を取得する必要がある。複数のデータベースのアクセス要件がある場合もある。つまり、このデータアクセス要件では、サーバーが複数のデータベースを検索して結果を取得する必要がある。これら２つのタイプのデータアクセス要件で必要な処理時間は異なるため、データアクセス要件の処理におけるサーバーの効率が低下し、サーバーの運用負荷が増大する。
【０００５】
これに基づいて、分散型データベースは同じサーバーを使用して異なるタイプのトランザクションアクセス要件を処理するため、サーバーの処理効率が低いという従来技術の問題を解決するトランザクション処理の方法が必要である。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の実施形態は、分散型データベースが同じサーバを使用するためにサーバの処理効率が低いという従来の技術的問題を解決するために、トランザクション処理方法およびサーバー、ならびにトランザクション処理のシステムを提供する。
【課題を解決するための手段】
【０００７】
第１の態様では、本発明の実施形態によって提供されるトランザクション処理の方法は、第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントを取得するステップと、前記第１のノードは、前記第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを少なくとも１つの第２のノード中の前記第１のステートメントのタイプに対応する第２のノードに送信して、前記第１のステートメントのタイプに対応する第２のノードに、ステートメントに従がって前記ステートメントに対応する実行プランを生成させるようにするステップと、前記第１のノードは、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理するステップとを備え、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントである。
【０００８】
このように、当該トランザクション処理のシステムには少なくとも１つの第２のノードがあるため、第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントを取得した後、少なくとも１つのステートメントのタイプを決定し、対応する第２のノードに送信することができる。従来技術でトランザクション処理にサーバーを１つだけ使用するモードと比較して、本発明の実施形態は、複数のタイプのステートメントを同時に処理でき、システムの処理効率を効果的に改善し、システムの運用負担を軽減する。さらに、少なくとも１つの第２のノードは、ステートメントに対応する実行プランを第１のノードに送信するだけでよく、第１のノードは最初のトランザクションに含まれる少なくとも１つのステートメントに対して統合処理を実行することにより、トランザクション性が確保できる。
【０００９】
任意選択で、前記第１のノードが、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従がって、前記第１のトランザクションを処理することは、前記第１のノードは、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従がって、前記第１のトランザクションを開始し、前記第１のトランザクションに対応するスケジューラを割り当てることを含み、前記第１のノードは、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従がって、前記第１のトランザクションに対応するスケジューラを介して前記第１のトランザクションを処理する。
【００１０】
このように、複数のトランザクションを同時に処理することができ、トランザクション処理のシステムの処理効率を改善し、トランザクション性を保証する。
【００１１】
任意選択で、前記少なくとも１つの第２のノードは、オンライントランザクション処理（ＯｎＬｉｎｅ  Ｔｒａｎｓａｃｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ，ＯＬＴＰ）ノードおよびオンライン分析処理（Ｏｎｌｉｎｅ  Ａｎａｌｙｔｉｃａｌ  Ｐｒｏｃｅｓｓｉｎｇ，ＯＬＡＰ）ノードを含み、前記第１のノードが、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理することは、前記第１のノードは、前記ＯＬＴＰノードによって送信された前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランを受信し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容が含まれる場合、前記第１のノードは、前記第１のタイプのステートメントに対応する実行内容に従って、前記第１のトランザクションを処理し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容およびストレージノードが含まれる場合、前記第１のノードは、前記第１のタイプのステートメントに対応する実行内容に従って、前記第１のタイプのステートメントに対応するストレージノードにアクセスし、前記第１のノードは、前記ＯＬＡＰノードによって送信された前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランを受信し、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれ、前記第１のノードは、前記第２のタイプのステートメントに対応する実行内容に従って、前記第２のタイプのステートメントに対応するストレージノードにタアクセスする。
【００１２】
このように、ＯＬＴＰノードは第１タイプのステートメントの処理を担当し、ＯＬＡＰノードは第２タイプのステートメントの処理を担当するので、本発明の実施形態は、複数のタイプのステートメントを同時に処理でき、システムの処理効率を効果的に改善し、システムの運用負担を軽減する。
【００１３】
任意選択で、前記少なくとも１つの第２のノードは、ＯＬＴＰノードを含み、前記第１のノードが、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信することは、前記第１のノードは、ＯＬＴＰノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランおよび前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランが含まれ、ここで、前記第１のタイプのステートメントに対応する実行プランは、前記第１のタイプのステートメントに従って前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントに対応する実行プランは、前記ＯＬＡＰノードによって送信された第２のタイプのステートメントの初期実行プランに従って、前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントの初期実行プランは前記第２のタイプのステートメントに対応する実行内容を含み、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【００１４】
このように、ＯＬＡＰノードは、分散型データベースのストレージルールを考慮する必要がなく（すなわち、各データリストに対応するストレージノードを考慮する必要がない）、各データリスト内部の論理関係のみを考慮する必要がある。ＯＬＴＰノードは、分散型データベースのストレージルールを各データリストの内部論理関係と統合する必要があるため、ＯＬＡＰノードの構造を簡素化し、トランザクション処理のシステムの複雑さを軽減し、トランザクション処理のシステムを実現するためのコストを減縮できる。
【００１５】
任意選択で、前記第１のノードおよび前記ＯＬＴＰノードは、同じデバイス内に配置される。
【００１６】
このように、１つのノードにおける各デバイスのそれぞれの配置によって容易に引き起こされる運用コストの増加の問題を回避することができ、システムの複雑さを低減することができる。
【００１７】
第２の態様では、本発明の実施形態によって提供されるトランザクション処理の方法は、ＯＬＡＰノードは、第１のノードによって送信された第１のトランザクションのステートメントを受信するステップと、前記ＯＬＡＰノードは、前記ステートメントに対応する初期実行プランを生成するステップであって、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる前記生成するステップと、前記ＯＬＡＰノードは、前記ステートメントに対応する初期実行プランをＯＬＴＰノードに送信して、前記ＯＬＴＰノードに前記ステートメントの初期実行プランに従って前記ステートメントに対応する実行プランを生成させるようにするステップとを備える。
【００１８】
このように、ＯＬＡＰノードは、分散型データベースのストレージルールを考慮する必要がなく（すなわち、各データリストに対応するストレージノードを考慮する必要がない）、各データリスト内部の論理関係のみを考慮する必要がある。ＯＬＡＰノードの構造を簡素化し、トランザクション処理のシステムの複雑さを軽減し、トランザクション処理のシステムを実現するためのコストを減縮できる。
【００１９】
第３の態様では、本発明の実施形態によって提供されるトランザクション処理の方法は、ＯＬＴＰノードは、ＯＬＡＰノードによって送信された第１のトランザクションのステートメントの初期実行プランを受信するステップであって、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる前記受信するステップと、前記ＯＬＴＰノードは、前記ステートメントに対応する初期実行プランに従がって、前記ステートメントに対応するストレージノードを取得し、前記対応する実行プランを生成するステップであって、前記ステートメントに対応する実行プランに前記ステートメントに対応する実行内容およびストレージノードが含まれる前記生成するステップと、前記ＯＬＴＰノードは、前記ステートメントに対応する実行プランを第１のノードに送信して、前記第１のノードに前記ステートメントに対応する実行プランに従がって前記第１のトランザクションを処理させるようにするステップとを備える。
【００２０】
このように、ＯＬＴＰノードは、分散型データベースのストレージルールを各データリストの内部論理関係と統合するだけでよく、トランザクション処理のシステムの複雑さを軽減し、トランザクション処理のシステムを実現するためのコストを減縮できる。
【００２１】
第４の態様では、本発明の実施形態によって提供されるトランザクション管理および実行のためのサーバーは、取得ユニットと、処理ユニットと、受信ユニットとを備え、前記取得ユニットは、第１のトランザクションに対応する少なくとも１つのステートメントを取得するように構成され、前記処理ユニットは、第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを少なくとも１つの第２のノード中の前記第１のステートメントのタイプに対応する第２のノードに送信して、前記第１のステートメントのタイプに対応する第２のノードに、ステートメントに従がって前記ステートメントに対応する実行プランを生成させるようにし、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントであり、前記受信ユニットは、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信するように構成され、前記処理ユニットはさらに、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを処理する。
【００２２】
任意選択で、前記処理ユニットは具体的に、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを開始し、前記第１のトランザクションに対応するスケジューラを割り当て、および前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションに対応するスケジューラを介して前記第１のトランザクションを処理する。
【００２３】
任意選択で、前記少なくとも１つの第２のノードは、オンライントランザクション処理（ＯＬＴＰ）ノードおよびオンライン分析処理（ＯＬＡＰ）ノードを含み、前記処理ユニットは具体的に、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容が含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のトランザクションを処理し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容およびストレージノードが含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のタイプのステートメントに対応するストレージノードにアクセスし、および前記第２のタイプのステートメントに対応する実行内容に従って前記第２のタイプのステートメントに対応するストレージノードにタアクセスし、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【００２４】
任意選択で、前記少なくとも１つの第２のノードは、ＯＬＴＰノードを含み、前記受信ユニットは具体的に、ＯＬＴＰノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランおよび前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランが含まれ、ここで、前記第１のタイプのステートメントに対応する実行プランは、前記第１のタイプのステートメントに従って前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントに対応する実行プランは、前記ＯＬＡＰノードによって送信された第２のタイプのステートメントの初期実行プランに従って、前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントの初期実行プランは前記第２のタイプのステートメントに対応する実行内容を含み、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【００２５】
第５の態様では、本発明の実施形態によって提供されるＯＬＡＰサーバーは、受信ユニットと、処理ユニットと、送信ユニットとを備え、
前記受信ユニットは、第１のノードによって送信された第１のトランザクションのステートメントを受信するように構成され、前記処理ユニットは、前記ステートメントに対応する初期実行プランを生成し、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれ、前記送信ユニットは、前記ステートメントに対応する初期実行プランをＯＬＴＰノードに送信し、前記ＯＬＴＰノードに前記ステートメントの初期実行プランに従って前記ステートメントに対応する実行プランを生成させるようにする。
【００２６】
第６の態様では、本発明の実施形態によって提供されるＯＬＴＰサーバーは、受信ユニットと、処理ユニットと、送信ユニットとを備え、
前記受信ユニットは、ＯＬＡＰノードによって送信された第１のトランザクションのステートメントの初期実行プランを受信し、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれ、前記処理ユニットは、前記ステートメントに対応する初期実行プランに従って前記ステートメントに対応するストレージノードを取得し、前記対応する実行プランを生成し、前記ステートメントに対応する実行プランに前記ステートメントに対応する実行内容およびストレージノードが含まれ、前記送信ユニットは、前記ステートメントに対応する実行プランを第１のノードに送信し、前記第１のノードに前記ステートメントに対応する実行プランに従がって前記第１のトランザクションを処理させるようにする。
【００２７】
第７の態様では、本発明の実施形態によって提供されるサーバーは、ソフトウェアプログラムを格納するように構成されたメモリと、前記メモリ内のソフトウェアプログラムを読み取り、上記のトランザクション処理の方法を実行するように構成されたプロセッサとを備える。
【００２８】
第８の態様では、本発明の実施形態によって提供される電子デバイスは、プロセッサ、メモリ、送受信機、およびバスインターフェースを備え、ここで、前記プロセッサ、前記メモリ、前記送受信機および前記バスインターフェースは、バスを介して相互に接続され、
前記プロセッサは、前記メモリ内のプログラムを読み取って前記メモリ内のプログラムを読み取って次の操作を実行するように構成され、第１のトランザクションに対応する少なくとも１つのステートメントを取得し、第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを少なくとも１つの第２のノード中の前記第１のステートメントのタイプに対応する第２のノードに送信して、前記第１のステートメントのタイプに対応する第２のノードに、ステートメントに従がって前記ステートメントに対応する実行プランを生成させるようにし、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントであり、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを処理し、
前記送受信機は、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信する。
【００２９】
任意選択で、前記プロセッサは具体的に、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを開始し、前記第１のトランザクションに対応するスケジューラを割り当て、および前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションに対応するスケジューラを介して前記第１のトランザクションを処理する。
【００３０】
任意選択で、前記少なくとも１つの第２のノードは、オンライントランザクション処理（ＯＬＴＰ）ノードおよびオンライン分析処理（ＯＬＡＰ）ノードを含み、前記プロセッサは具体的に、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容が含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のトランザクションを処理し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容およびストレージノードが含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のタイプのステートメントに対応するストレージノードにアクセスし、および前記第２のタイプのステートメントに対応する実行内容に従って前記第２のタイプのステートメントに対応するストレージノードにタアクセスし、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【００３１】
任意選択で、前記少なくとも１つの第２のノードは、ＯＬＴＰノードを含み、前記送受信機は具体的に、
ＯＬＴＰノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランおよび前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランが含まれ、ここで、前記第１のタイプのステートメントに対応する実行プランは、前記第１のタイプのステートメントに従って前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントに対応する実行プランは、前記ＯＬＡＰノードによって送信された第２のタイプのステートメントの初期実行プランに従って、前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントの初期実行プランは前記第２のタイプのステートメントに対応する実行内容を含み、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【００３２】
第９の態様では、本発明の実施形態によって提供される電子デバイスは、プロセッサ、メモリ、送受信機、およびバスインターフェースを備え、ここで、前記プロセッサ、前記メモリ、前記送受信機および前記バスインターフェースは、バスを介して相互に接続され、
前記送受信機は、第１のノードによって送信された第１のトランザクションのステートメントを受信し、前記ステートメントに対応する初期実行プランをＯＬＴＰノードに送信し、前記ＯＬＴＰノードに前記ステートメントの初期実行プランに従って前記ステートメントに対応する実行プランを生成させるようにし、
プロセッサは、前記ステートメントに対応する初期実行プランを生成し、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる。
【００３３】
第１０の態様では、本発明の実施形態によって提供される電子デバイスは、プロセッサ、メモリ、送受信機、およびバスインターフェースを備え、ここで、前記プロセッサ、前記メモリ、前記送受信機および前記バスインターフェースは、バスを介して相互に接続され、
前記送受信機は、ＯＬＡＰノードによって送信された第１のトランザクションのステートメントの初期実行プランを受信するように構成され、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれ、前記ステートメントに対応する実行プランを第１のノードに送信し、前記第１のノードに、前記ステートメントに対応する実行プランに従って記第１のトランザクションを処理させるようにし、
前記プロセッサは、前記ステートメントに対応する初期実行プランに従って前記ステートメントに対応するストレージノードを取得し、前記対応する実行プランを生成するように構成され、前記ステートメントに対応する実行プランに前記ステートメントに対応する実行内容およびストレージノードが含まれる。
【００３４】
第１１の態様では、本発明の実施形態によって提供されるトランザクション処理のシステムは、前記システムトランザクション管理および実行のためのサーバーと、ＯＬＴＰサーバーと、ＯＬＡＰサーバーとを備え、
前記トランザクション管理および実行のためのサーバーは、第１のトランザクションに対応する少なくとも１つのステートメントを取得し、第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを前記ＯＬＴＰサーバーや前記ＯＬＡＰサーバーに送信し、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントであり、前記ＯＬＴＰサーバーは、前記トランザクション管理および実行のためのサーバーによって送信された第１のトランザクションの第１のタイプのステートメントを受信し、前記第１のタイプのステートメントに従がって前記第１のタイプのステートメントに対応する実行プランを生成し、前記第１のタイプのステートメントに対応する実行プランを前記トランザクション管理および実行のためのサーバーに送信し、前記ＯＬＡＰサーバーは、前記トランザクション管理および実行のためのサーバーによって送信された第１のトランザクションの第２のタイプのステートメントを受信し、前記第２のタイプのステートメントに従がって前記第２のタイプのステートメントに対応する実行プランを生成し、前記第２のタイプのステートメントに対応する実行プランを前記トランザクション管理および実行のためのサーバーに送信し、前記トランザクション管理および実行のためのサーバーはさらに、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理する。
【００３５】
第１２の態様では、本発明の実施形態によって提供されるトランザクション処理のシステムは、オンライントランザクション処理（ＯＬＴＰ）サーバーおよびオンライン分析処理（ＯＬＡＰ）サーバーを含み、前記ＯＬＴＰサーバーは、第１のトランザクションに対応する少なくとも１つのステートメントを取得し、前記少なくとも１つのステートメントのタイプを決定し、前記第１のステートメントを第１のタイプのステートメントとしてと決定すると、前記第１のタイプのステートメントに対応する実行プランを生成し、前記第１のステートメントを第２のタイプのステートメントとして決定すると、前記第２のタイプのステートメントを前記ＯＬＡＰサーバーに送信し、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントであり、前記ＯＬＡＰサーバーは、前記ＯＬＴＰサーバーによって送信された前記第２のタイプのステートメントを受信し、前記第２のタイプのステートメントに対応する初期実行プランを生成し、および前記第２のタイプのステートメントに対応する初期実行プランを前記ＯＬＴＰサーバーに送信し、前記ＯＬＴＰサーバーはさらに、前記ＯＬＡＰサーバーによって送信された前記第２のタイプのステートメントに対応する初期実行プランを受信し、前記第２のタイプのステートメントに対応する初期実行プランに従がって、第２のタイプのステートメントに対応する実行プランを生成し、前記第１のタイプのステートメントに対応する実行プランおよび前記第２のタイプのステートメントに対応する実行プランに従がって、前記第１のトランザクションを処理する。
【００３６】
第１３の態様では、本発明の実施形態は、命令を記憶する非一時的なコンピュータ可読記憶媒体を提供し、これにより、コンピュータに、第１の態様または第１の態様に係るいずれかの方法を実行させるか、または、コンピュータに、第２の態様または第２の態様に係るいずれかの方法を実行させるか、またはコンピュータに第３の態様または第３の態様の係るいずれかの方法を実行させるコンピューターで実行させる。
【００３７】
第１４の態様では、本発明の実施形態は、コンピュータ上で実行するときにコンピュータに第１の態様または第１の態様の任意の可能な実施で方法を実行させるか、または第２の態様または第２の態様の任意の可能な実施で方法を実行させるか、第３の態様または第３の態様の任意の可能な実施で方法を実行させる、命令を含むコンピュータプログラム製品を提供する。
【発明の効果】
【００３８】
本発明の実施形態では、第１のトランザクションに対応する少なくとも１つのステートメントを取得した後、第１のノードは、前記各ステートメントを分類し、前記各ステートメントが属するタイプに従ってそれぞれ少なくとも１つの第２のノードに少なくとも１つの前記ステートメントを送信することができる。その結果、少なくとも１つの第２のノードは、受信されたステートメントに従って前記ステートメントに対応する実行プランを生成する。第１のノードは、少なくとも１つの前記第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する受信された実行プランに従って前記第１のトランザクションを処理する。このように、当該トランザクション処理のシステムには少なくとも１つの第２のノードがあるため、第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントを取得した後、少なくとも１つのステートメントを分類してから少なくとも１つの第２のノードに送信することができる。ステートメントを分類および処理するこの方法は、ステートメントシステムの設計の複雑さを軽減できる。さらに、従来技術でトランザクション処理にサーバーを１つだけ使用するモードと比較して、本発明の実施形態は、複数のタイプのステートメントを同時に処理でき、システムの処理パフォーマンスを効果的に改善し、システムの運用負担を軽減する。次にシステムの全体的な並列処理を増やす。さらに、少なくとも１つの第２のノードは、ステートメントに対応する実行プランを第１のノードに送信するだけでよく、第１のノードは最初のトランザクションに含まれる少なくとも１つのステートメントに対して統合処理を実行することにより、トランザクション性が確保できる。
【図面の簡単な説明】
【００３９】
本発明に係る実施例や従来の技術方案をより明確に説明するために、以下に実施例を説明するために必要な図面をについて簡単に紹介する。無論、以下の説明における図面は本発明に係る実施例の一部であり、当業者は、創造性作業を行わないことを前提として、これらの図面に基づいて他の図面を得ることができる。
【図１】本発明の実施形態に適用可能なシステムアーキテクチャの概略図である
【図２】本発明の実施形態によって提供されるトランザクション処理のシステムの構造概略図である。
【図３】本発明の実施形態によって提供されるトランザクション処理の方法のフロー概略図である。
【図４】本発明の実施形態に係るＯＬＴＰノードである第２のノードに対応するフロー概略図である。
【図５】本発明の実施形態に係る第１のノードの構造概略図である。
【図６】本発明の実施形態によって提供されるトランザクション管理および実行のためのサーバーの構造概略図である。
【図７】本発明の実施形態に適用可能な別のシステムアーキテクチャの概略図である。
【図８】本発明の実施形態によって提供される別のトランザクション処理のシステムの構造概略図である。
【図９】本発明の実施形態によって提供される別のトランザクション処理の方法のフロー概略図である。
【図１０】本発明の実施形態によって提供されるＯＬＡＰサーバーの構造概略図である。
【図１１】本発明の実施形態によって提供されるＯＬＴＰサーバーの構造概略図である。
【図１２】本発明の実施形態によって提供される電子デバイスの構造概略図である。
【図１３】本発明の実施形態によって提供される電子デバイスの構造概略図である。
【図１４】本発明の実施形態によって提供される電子デバイスの構造概略図である。
【発明を実施するための形態】
【００４０】
本発明の目的、技術的解決策、および有益な効果をより明確にするために、本発明は、図面および実施形態を参照して、以下に詳細にさらに説明される。本明細書に記載された特定の実施形態は、本発明を説明するためにのみ使用され、本発明を限定するものではないことを理解されたい。
【００４１】
以下に本発明に係る実施形態において図面を結合して本発明の実施形態における技術方案について詳細に、完全に説明するが、次に陳述する実施形態は単に本発明のいくつかの実施形態であり、その全てではない。本分野の一般の技術者にとって、創造性的労働をしなくても、これらの実施形態に基づいてその他の実施形態を容易に獲得することができ、全て本発明の保護範囲に属することは明白である。  
【００４２】
本発明の実施形態における方法は、様々なシステムアーキテクチャに適用可能であり得る。本発明の実施形態における方法は、第１および第２の実施形態においてそれぞれ例として与えられたシステムアーキテクチャと組み合わせて、以下で詳細に説明される。
【００４３】
第１の実施形態：
図１は、本発明の実施形態に適用可能なシステムアーキテクチャの概略図を例示的に示している。図１に示されるように、本発明の実施形態に適用可能なシステムアーキテクチャ１００は、図１に示されるような第１のタイプのノード１０１１および第１のタイプのノード１０１２などの第１のタイプのノードと、図１に示されるような第２のタイプのノード１０２１および第２のタイプのノード１０２２などの第２のタイプのノードと、そして、図１に示されるような第３タイプのノード１０３１、第３タイプのノード１０３２および第３タイプのノード１０３３などの第３タイプのノードとを含む。ここで、第３タイプのノードは、データを格納するためのデータベースであり得る。
【００４４】
特定の実施プロセスでは、第１のタイプのノード１０１１は、特定のトランザクションの少なくとも１つのステートメントを取得し、当該トランザクションの各ステートメントを分類し、各ステートメントのタイプに従がって少なくとも１つのステートメントそれぞれを第２のタイプのノード１０２１および第２のタイプのノード１０２２に送信する。さらに、第２のタイプのノード１０２１または第２のタイプのノード１０２２は、ステートメントを受信した後、受信されたステートメントに従って前記ステートメントに対応する実行プランを生成し、前記ステートメントに対応する実行プランを第１のタイプのノード１０１２に送信することができる。さらに、第１のタイプのノード１０１２は、第２のタイプのノード１０２１および／または第２のタイプのノード１０２２によって送信されたトランザクションの少なくとも１つのステートメントに対応する受信された実行プランに従ってトランザクションを処理し得る。
【００４５】
本発明の実施形態におけるノードは、物理エンティティノードであってもよく、または仮想ノードであってもよく、これらはここに限定されない。
【００４６】
（１）第１のタイプのノードは、異なるデバイス上に配備することができ、例えば、図１に示される第１のタイプのノード１０１１は、デバイスＡ上に配備され、第１のタイプのノード１０１２はデバイスＢに配備される。あるいは、第１のタイプのノードは、同じデバイス上に配備されてもよく、例えば、図１に示される第１のタイプのノード１０１１および第１のタイプのノード１０１２は、両方ともデバイスＡ上に配備される。（２）本発明の実施形態では、第２のタイプのノードの数は特に限定されず、図１に示される第２のタイプのノード１０２１および第２のタイプのノード１０２２は、単なる例であり、当業者は、経験と実際の状況に応じて、第２タイプのノードの数を増減できる。（３）本発明の実施形態では、第３のタイプのノードの数は特に限定されず、図１に示す第３のタイプのノード１０３１、第３のタイプのノード１０３２および第３のタイプのノード１０３３は、単なる例であり、当業者は、経験および実際の状態に従って第３のタイプのノードの数を増減することができる。
【００４７】
図１に示されるシステムアーキテクチャをより明確に説明するために、図１に説明されるシステムアーキテクチャは、図２と組み合わせて以下に例示される。図２に示されるように、それは本発明の実施形態によって提供されるトランザクション処理のシステムの構造概略図である。当該トランザクション処理のシステム２００は、トランザクション管理および実行のためのサーバー２０１、ＯＬＴＰサーバー２０２およびＯＬＡＰサーバー２０３を含む。ここで：
トランザクション管理および実行のためのサーバー２０１は、第１のトランザクションに対応する少なくとも１つのステートメントを取得し、第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを前記ＯＬＴＰサーバー２０２または前記ＯＬＡＰサーバー２０３に送信する。前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントである。
【００４８】
ＯＬＴＰサーバー２０２は、前記トランザクション管理および実行のためのサーバーによって送信された第１のトランザクションの第１のタイプのステートメントを受信し、前記第１のタイプのステートメントに従がって前記第１のタイプのステートメントに対応する実行プランを生成し、および、前記第１のタイプのステートメントに対応する実行プランを前記トランザクション管理および実行のためのサーバーに送信する。ＯＬＡＰサーバー２０３は、前記トランザクション管理および実行のためのサーバーによって送信された第１のトランザクションの第２のタイプのステートメントを受信し、前記第２のタイプのステートメントに従がって前記第２のタイプのステートメントに対応する実行プランを生成し、前記第２のタイプのステートメントに対応する実行プランを前記トランザクション管理および実行のためのサーバーに送信する。
【００４９】
前記トランザクション管理および実行のためのサーバー２０１はさらに、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理する。
【００５０】
なお、（１）図２に示すトランザクション処理のシステムにおいて、トランザクション管理および実行のためのサーバー２０１は、複数の第１のタイプのノードの機能を有していてもよい。例えば、トランザクション管理および実行のためのサーバー２０１は、図１に示される第１のタイプのノード１０１１の機能および第１のタイプのノード１０１２の機能の両方を有することができる。（２）図２に示されるトランザクション処理のシステムにおいて、ＯＬＴＰサーバー２０２は、図１に示される第２のタイプのノードのいずれか１つであり得、例えば、ＯＬＴＰサーバー２０２は、第２のタイプのノード１０２１であり得る。そして、ＯＬＡＰサーバー２０２は、ＯＬＴＰサーバー以外の図１に示される第２のタイプのノードのうちの任意の１つであり得、例えば、ＯＬＡＰサーバー２０３は、第２のタイプのノード１０２２であり得る。
【００５１】
図１に示されるシステムアーキテクチャに基づいて、図３は、本発明の実施形態によって提供されるトランザクション処理の方法に対応するフロー概略図を例示的に示し、第１のノードは、トランザクション管理および実行のためのサーバー２０１であり得る。この方法は、具体的には次のステップを含む。
【００５２】
ステップ３０１：第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントを取得する。
ステップ３０２：第１のノードは、前記第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを少なくとも１つの第２のノード中の前記第１のステートメントのタイプに対応する第２のノードに送信する。
ステップ３０３：少なくとも１つの第２のノードは、受信されたステートメントに従って、前記ステートメントに対応する実行プランを生成し、前記ステートメントに対応する実行プランを第１のノードに送信する。
ステップ３０４：第１のノードは、前記少なくとも１つの第２のノードによって送信された第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理する。
【００５３】
上記のステップで説明されたコンテンツの複数の実施があることに留意されたい。１つの可能な実施は以下の通りである：図１に示されるシステムアーキテクチャを例にとると、上記のステップ３０１および３０２は図１に示される第１のタイプのノード１０１１によって実行され得、上記のステップ３０３は、図１に示される第２のタイプのノードのうちの少なくとも１つによって実行され得る。および上記のステップ３０４は、図１に示される第１のタイプのノード１０１２によって実行され得る。別の可能な実施は以下の通りである：図２に示すシステムアーキテクチャを例にとると、上記のステップ３０１、３０２および３０４は、図２に示すトランザクション管理サーバー２０１によって実行され得、上記のステップ３０３は、図２に示すＯＬＴＰサーバーまたはＯＬＡＰサーバーによって実行される。
【００５４】
このように、当該トランザクション処理のシステムには少なくとも１つの第２のノードがあるため、第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントを取得した後、少なくとも１つのステートメントを分類してから少なくとも１つの第２のノードに送信することができる。ステートメントを分類および処理するこの方法は、ステートメントシステムの設計の複雑さを軽減できる。さらに、従来技術でトランザクション処理にサーバーを１つだけ使用するモードと比較して、本発明の実施形態は、複数のタイプのステートメントを同時に処理でき、システムの処理パフォーマンスを効果的に改善し、システムの運用負担を軽減する。次にシステムの全体的な並列処理を増やす。さらに、少なくとも１つの第２のノードは、ステートメントに対応する実行プランを第１のノードに送信するだけでよく、第１のノードは最初のトランザクションに含まれる少なくとも１つのステートメントに対して統合処理を実行することにより、トランザクション性が確保できる。
【００５５】
具体的には、ステップ３０１において、第１のトランザクションは、少なくとも１つのステートメントを含み得る。たとえば、第１のトランザクションに対応するビジネスシナリオは次のとおりである。大学の教育管理システムは、２００４年に登録され、番号が２００４０１３６１２１１である生徒のＧＰＡを３．９に更新する必要がある。次に、当該生徒の指導教官の氏名を検索し、ＧＰＡスコアを確認するよう指導教官に指示す目的で、生徒の指導教官の氏名が検索される。大学の教育行政システムのデータベースには２つのデータテーブルがあることが知られており、表１は教師リスト（ｔｅａｃｈｅｒ＿ｌｉｓｔ）で、主キーは教師ＩＤ（ｔｅａｃｈｅｒ＿ｉｄ）で、他のフィールドは教師名（ｎａｍｅ）である。表２は生徒リスト（ｓｔｕｄｅｎｔ＿ｌｉｓｔ）である。主キーは生徒ＩＤ（ｓｔｕｄｅｎｔ＿ｉｄ）で、他のフィールドは生徒名（ｎａｍｅ）、生徒に対応する教師ＩＤ（ｔｅａｃｈｅｒ＿ｉｄ）、およびＧｒａｄｅ  Ｐｏｉｎｔ  Ａｖｅｒａｇｅ（ＧＰＡ）である。このビジネスシナリオに基づいて、表１に示すように、第１のトランザクションのステートメントを示す（例としてＳＱＬステートメントを取り上げる）。
【００５６】
【表１】
2021517322.tif 000003
【００５７】
表１に示される内容に基づいて、第１のトランザクションは４つのステートメント、すなわち以下を含むことが分かる。ステートメント１，ｂｅｇｉｎ；ステートメント２，ｕｐｄａｔｅ  ｓｔｕｄｅｎｔ＿ｌｉｓｔ  ／／ｓｅｔ  ｇｐａ＝３．９  ／／  ｗｈｅｒｅ  ／／  ｓｔｕｄｅｎｔ＿ｉｄ  ＝’２００４０１３６１２１１’；ステートメント３，ｓｅｌｅｃｔ  ｓ．ｎａｍｅ，  ｓ．ｇｐａ，  ｔ．ｎａｍｅ  ／／  ｆｒｏｍ  ｔｅａｃｈｅｒ＿ｌｉｓｔ  ａｓ  ｔ  ／／  ｓｔｕｄｅｎｔ＿ｌｉｓｔ  ａｓ  ｓ  ／／ｗｈｅｒｅ  ／／  ｓ．ｓｔｕｄｅｎｔ＿ｉｄ＝’２００４０１３６１２１１’  ／／ａｎｄ  ／／  ｓ．ｔｅａｃｈｅｒ＿ｉｄ  ＝  ｔ．ｔｅａｃｈｅｒ＿ｉｄ；ステートメント４，ｃｏｍｍｉｔ。
【００５８】
ステップ３０２において、ステートメントを分類するための複数の方法があり得る。１つの可能な実施は、ステートメントの実行の難易度に従ってステートメントを分類することである。表１に示す内容を例にとると、ステートメント１、ステートメント２、およびステートメント４は、ステップが少なく、難易度が低く、ステートメント１、ステートメント２、およびステートメント４は、第１のタイプのステートメントとして分類できる。そして、ステートメント３は、より多くのステップおよびより高い難易度で実行され、ステートメント３は、第２のタイプのステートメントとして分類され得る。類推して、第１のトランザクションがより多くのステートメントを含む場合、ステートメントはより多くのタイプに分割されることもある（つまり、タイプの数は２より大きい）。
【００５９】
なお、上記の説明の実施の難易度は、特に限定されない経験や実情に基づいて当業者が設定することができる。
【００６０】
他の可能な実施形態では、ステートメントが分類されるとき、それらは他の方法で分類されてもよく、例えば、ステートメントの内容に従って、またはステートメントの実行順序に従って分類されてもよい。特に限定される。
【００６１】
さらに、ステートメントのタイプと第２のノードとの間には対応関係がある場合がある。したがって、第１のノードは、各ステートメントのタイプおよびステートメントのタイプと第２のノードとの間の対応関係に従って、少なくとも１つの前記ステートメントを少なくとも１つの第２のノードにそれぞれ送信することができる。表２に示すように、これはステートメントのタイプと第２ノード間の対応関係の例である。第２ノードにはＯＬＴＰノードとＯＬＡＰノードが含まれる。ステートメントのタイプが第１のタイプのステートメントである場合、対応する第２のノードはＯＬＴＰノードであり、ステートメントのタイプが第２のタイプのステートメントである場合、対応する第２のノードはＯＬＡＰノードである。
【００６２】
【表２】
2021517322.tif 000004
【００６３】
表２に記載される内容に従って、本発明の実施形態は、表１に示される第１のトランザクションのステートメントを分類し、それらを対応する第２のノードに送信することができ、ステートメント１、ステートメント２およびステートメント４は、第１のタイプのステートメントである。第１のノードは、ステートメント１、ステートメント２、およびステートメント４をＯＬＴＰノードに送信できる。また、ステートメント３は第２のタイプのステートメントであり、第１のノードはステートメント３をＯＬＡＰノードに送信する。
【００６４】
ステップ３０３および３０４において、異なる第２のノードは、異なるタイプのステートメントに対応する。以下では、説明のための例として、第２のノードにＯＬＴＰノードとＯＬＡＰノードが含まれる。
【００６５】
特定の実施プロセスにおいて、第１のノードが、ＯＬＴＰノードによって送信された第１のトランザクションの第１のタイプのステートメントに対応する実行プランを受信した後、第１のタイプのステートメントに対応する実行プランが第１のタイプのステートメントに対応する実行内容を含むと判定された場合、次いで、第１のノードは、前記第１のタイプのステートメントに対応する実行内容に従って第１のトランザクションを処理することができる。第１のタイプのステートメントに対応する実行プランが、第１のタイプのステートメントに対応する実行内容およびストレージノードを含むと判定された場合、第１ノードは、前記第１のタイプのステートメントに対応する実行内容に従がって、前記第１のタイプのステートメントに対応するストレージノードにアクセスすることができる。
【００６６】
ＯＬＡＰノードによって送信された第１のトランザクションの第２のタイプのステートメントに対応する実行プランを受信した後、第１のノードは、第２のタイプのステートメントに対応する実行プランに含まれる第２のタイプのステートメントに対応する実行内容に従がって、第２のタイプのステートメントに対応するストレージノードにアクセスし得る。第２のタイプのステートメントに対応する実行プランに第２のタイプのステートメントに対応するストレージノードが含まれる。
【００６７】
上記の実施プロセスをより明確に説明するために、本発明の実施形態に関与するＯＬＴＰノードである第２のノードに対応するフローを、図４を参照して以下に具体的に示し、以下のステップを含む。
ステップ４０１：第１のノードは、第１のトランザクションの第１のタイプのステートメントをＯＬＴＰノードに送信する。
ステップ４０２：第１のノードは、第１のトランザクションの第２のタイプのステートメントをＯＬＡＰノードに送信する。
ステップ４０３：ＯＬＴＰノードは、第１のノードによって送信された第１のトランザクションの第１のタイプのステートメントを受信する。
ステップ４０４：ＯＬＴＰノードは、前記第１のトランザクションの第１のタイプのステートメントに従って、前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランを生成する。
【００６８】
具体的には、一例において、第１のタイプのステートメントに対応する実行プランは、第１のタイプのステートメントに対応する実行内容のみを含み得る。たとえば、表１に示すステートメント１を例にすると、ステートメント１は「開始」である。ステートメント１によると、ＯＬＴＰノードは第１のトランザクションを開始する必要があることを知っている可能性がある。次に、ＯＬＴＰノードは、ステートメント１に対応する実行プランを生成することができ、すなわち、ステートメント１に対応する実行プランに含まれる実行内容が第１のトランザクションを開始するという内容である。
【００６９】
別の例では、第１のタイプのステートメントに対応する実行プランは、第１のタイプのステートメントに対応する実行内容と第１のタイプのステートメントに対応するストレージノードの両方を含むこともできる。たとえば、表１に示されているステートメント２を例にとると、ステートメント２はｕｐｄａｔｅ  ｓｔｕｄｅｎｔ＿ｌｉｓｔ  ／／ｓｅｔ  ｇｐａ＝３．９  ／／  ｗｈｅｒｅ  ／／  ｓｔｕｄｅｎｔ＿ｉｄ  ＝’２００４０１３６１２１１’である。ステートメント２と事前に設定されたストレージルールに従って、ＯＬＴＰノードは生徒番号２００４０１３６１２１１に対応するデータがストレージノードａに格納されていることを認識し、ＯＬＴＰノードはステートメント２に対応する実行プランを生成する。つまり、ステートメント２に対応する実行プランに含まれる実行内容は、生徒番号２００４０１３６１２１１に対応するデータを検索しており、ステートメント２に対応する実行プランに含まれるストレージノードは、ストレージノードａである。このようにして、この実行プランを受信された後、第１のノードは、ストレージノードａで生徒番号２００４０１３６１２１１に対応するデータを検索して、第１のトランザクションを処理する。
【００７０】
ステップ４０５：ＯＬＴＰノードは、前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランを第１のノードに送信する。
ステップ４０６：ＯＬＡＰノードは、第１のノードによって送信された第１のトランザクションの第２のタイプのステートメントを受信する。
ステップ４０７：ＯＬＡＰノードは、前記第１のトランザクションの第２のタイプのステートメントに従って、前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランを生成する。
【００７１】
具体的には、第２のタイプのステートメントに対応する実行プランは、第２のタイプのステートメントに対応する実行内容およびストレージノードを含むことができる。たとえば、表１に示すステートメント３を例にとると、ステートメント３はｓｅｌｅｃｔ  ｓ．ｎａｍｅ，  ｓ．ｇｐａ，  ｔ．ｎａｍｅ  ／／  ｆｒｏｍ  ｔｅａｃｈｅｒ＿ｌｉｓｔ  ａｓ  ｔ  ／／  ｓｔｕｄｅｎｔ＿ｌｉｓｔ  ａｓ  ｓ  ／／ｗｈｅｒｅ  ／／  ｓ．ｓｔｕｄｅｎｔ＿ｉｄ＝’２００４０１３６１２１１’  ／／ａｎｄ  ／／  ｓ．ｔｅａｃｈｅｒ＿ｉｄ  ＝  ｔ．ｔｅａｃｈｅｒ＿ｉｄである。ステートメント３とストレージルールによれば、ＯＬＡＰノードは、生徒番号２００４０１３６１２１１に対応するデータがストレージノードａに格納され、生徒番号２００４０１３６１２１１に対応する指導教官のデータがストレージノードｂに格納されていることを認識できる。その後、ＯＬＡＰノードはステートメント３に対応する実行プランを生成できる。つまり、ステートメント３に対応する実行プランに含まれる実行内容は、生徒番号２００４０１３６１２１１に対応する指導教官番号を検索してから、取得された指導教官番号による教師名を検索することができる。ステートメントに対応する実行プランに含まれるストレージノードは、ストレージノードａとストレージノードｂである。
【００７２】
このようにして、この実行プランを受信された後、第１のノードは、ストレージノードａで生徒番号２００４０１３６１２１１に対応する指導教官番号を検索し、ストレージノードｂで指導教官番号に従って指導教官の名前を検索することにより、第１のトランザクションを処理することができる。
【００７３】
ステップ４０８：ＯＬＴＰノードは、前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランを第１のノードに送信する。
ステップ４０９：第１のノードは、ＯＬＴＰノードおよびＯＬＡＰノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、第１のトランザクションの少なくとも１つのステートメントに対応する実行プラン従って第１のトランザクションを処理する。
【００７４】
（１）上記のステップ番号は、実行プロセスの例示的な表現にすぎず、本発明は、例えば、上記のステップ４０１および４０２におけるすべてのステップの前後順位を特に限定しないことに留意されたい。第１のノードは、最初に第１のトランザクションの第２のタイプのステートメントをＯＬＡＰノードに送信し、次に第１のトランザクションの第１のタイプのステートメントをＯＬＴＰノードに送信することもできる。（２）他の可能な実施形態では、第２のノードの数は２より大きくてもよく、例えば、第１のノードは、第２のノードＡ、第２のノードＢおよび第２のノードＣ送信された第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信してもよい。前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、前記第１のトランザクションを処理する。特定の処理手順は上記の内容を参照することができ、ここでは繰り返さない。（３）他の可能な実施形態では、上記のステップ４０７において、ＯＬＡＰノードはまた、前記第１のトランザクションの第２のタイプのステートメントに従って、第１のトランザクションの第２のタイプのステートメントに対応する初期実行プランを生成し得る。ＯＬＡＰノードは前記第１のトランザクションの第２のタイプのステートメントに対応する初期実行プランをＯＬＴＰノードに送信し、ＯＬＴＰノードは第２のタイプに対応する初期実行プランに従って第２のタイプのステートメントに対応する実行プランを生成し、第２のタイプのステートメントに対応する実行プランを第１のノードに送信する。このようにして、ＯＬＡＰノードは分散型データベースのストレージルールを考慮する必要がなく（すなわち、各データリストに対応するストレージノードを考慮する必要がない）、各データリストの内部論理関係のみを考慮する必要がある。ＯＬＴＰノードは、分散型データベースのストレージルールを各データリストの内部論理関係と統合する必要があるため、ＯＬＡＰノードの構造を簡素化し、トランザクション処理のシステムの複雑さを軽減し、トランザクション処理のシステムを実現するためのコストを減縮できる。
【００７５】
上述の内容に基づいて、本発明の実施形態は、第１のノードによって第１のトランザクションを処理するための方法をさらに提供する。第１のノードの構造概略図である図５に示されるように、第１のノードは、複数のスケジューラを含み得る。
【００７６】
図５に示すこの構造では、第１のトランザクションに対応する少なくとも１つのステートメントに対応する実行プランを受信された後、第１のノードは第１のトランザクションを開始し、対応するスケジューラを第１のトランザクションに割り当てることができる。次に、第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、第１のトランザクションに対応するスケジューラを通じて第１のトランザクションを処理する。
【００７７】
例えば、第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントに対応する実行プラン、第２のトランザクションに対応する少なくとも１つのステートメントに対応する実行プラン、および第３のトランザクションに対応する少なくとも１つのステートメントに対応する実行プランを受信する。第１のノードは、第１、第２、第３のトランザクションをそれぞれ開始し、第１のスケジューラを第１のトランザクションに、第２のスケジューラを第２のトランザクションに、第３のスケジューラを第３のトランザクションに割り当てることができる。これにより、複数のトランザクションが同時に処理され、トランザクション処理のシステムの処理効率が向上し、トランザクション性が確保される。
【００７８】
同じ発明思想に基づいて、図６は、本発明の実施形態によって提供されるトランザクション管理および実行のためのサーバーの構造概略図を例示的に示す。図６に示すように、当該トランザクション管理および実行のためのサーバー６００は、取得ユニット６０１、処理ユニット６０２、および受信ユニット６０３を含む。ここで：
前記取得ユニット６０１は、第１のトランザクションに対応する少なくとも１つのステートメントを取得するように構成される。
【００７９】
前記処理ユニット６０２は、第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを少なくとも１つの第２のノード中の前記第１のステートメントのタイプに対応する第２のノードに送信して、前記第１のステートメントのタイプに対応する第２のノードに、ステートメントに従がって前記ステートメントに対応する実行プランを生成させるようにし、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントである。
【００８０】
前記受信ユニット６０３は、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信するように構成される。
【００８１】
また、前記処理ユニット６０２は、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを処理する。
【００８２】
任意選択で、前記処理ユニット６０２は具体的に、
前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを開始し、前記第１のトランザクションに対応するスケジューラを割り当て、および前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションに対応するスケジューラを介して前記第１のトランザクションを処理する。
【００８３】
任意選択で、前記少なくとも１つの第２のノードは、オンライントランザクション処理（ＯＬＴＰ）ノードおよびオンライン分析処理（ＯＬＡＰ）ノードを含み、
前記処理ユニット６０２は具体的に、
前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容が含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のトランザクションを処理し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容およびストレージノードが含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のタイプのステートメントに対応するストレージノードにアクセスし、
および前記第２のタイプのステートメントに対応する実行内容に従って前記第２のタイプのステートメントに対応するストレージノードにタアクセスし、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【００８４】
任意選択で、前記少なくとも１つの第２のノードは、ＯＬＴＰノードを含み、
前記受信ユニット６０３は具体的に、
ＯＬＴＰノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランおよび前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランが含まれ、
ここで、前記第１のタイプのステートメントに対応する実行プランは、前記第１のタイプのステートメントに従って前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントに対応する実行プランは、前記ＯＬＡＰノードによって送信された第２のタイプのステートメントの初期実行プランに従って、前記ＯＬＴＰノードによって生成され、
前記第２のタイプのステートメントの初期実行プランは前記第２のタイプのステートメントに対応する実行内容を含み、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【００８５】
第２の実施形態：
図７は、本発明の実施形態に適用可能な別のシステムアーキテクチャの概略図を例示的に示す。図７に示すように、本発明の実施形態に適用可能なシステムアーキテクチャ７００は、第１のタイプのノード７０１、第２のタイプのノード７０２、図７に示されるようなおよび第３のタイプのノード７０３１、タイプノード７０３２および第３のタイプのノード７０３３などの第３のタイプのノードを含む。ここで、第３のタイプのノードは、データを格納するためのデータベースであり得る。
【００８６】
特定の実施プロセスでは、第１のタイプのノード７０１は、特定のトランザクションに対応する少なくとも１つのステートメントを取得し、当該トランザクションの各ステートメントを分類し、その後、各ステートメントのタイプに従がって少なくとも１つのステートメントをそれ自体（すなわち、第１のタイプのノード７０１）および第２のタイプのノード７０２に送信することができる。）。さらに、ステートメントを受信した後、第２のタイプのノード７０２は、受信されたステートメントに従ってステートメントに対応する初期実行プランを生成し、前記ステートメントに対応する初期実行プランを第１のタイプのノード７０１に送信することができる。さらに、第１のタイプのノード７０１は、第２のタイプのノード７０２によって送信されたステートメントに対応する受信された初期実行プランに従って前記ステートメントに対応する実行プランを生成し、前記ステートメントに対応する実行プランに従って当該トランザクションを処理することができる。
【００８７】
（１）本発明の実施形態において、第２のタイプのノードの数は特に限定されず、図１に示される第２のタイプのノード７０２は、単なる例であり、当業者は、アートは、経験と実際の状態に応じて、第２のタイプのノードの数を増減できる。（２）本発明の実施形態では、第３のタイプのノードの数は特に限定されず、図１に示す第３のタイプのノード１０３１、第３のタイプのノード１０３２および第３のタイプのノード１０３３は、単なる例示である。例えば、当業者は、経験および実際の状態に従って、第３のタイプのノードの数を増減することができる。
【００８８】
図７に示すシステムアーキテクチャをより明確に説明するために、図７に説明するシステムアーキテクチャを、図８と組み合わせて以下に例示する。図８は、本発明の実施形態によって提供される別のトランザクション処理のシステムの構造概略図である。当該トランザクション処理のシステム８００は、ＯＬＴＰサーバー８０１およびＯＬＡＰサーバー８０２を含む。ここで、
前記ＯＬＴＰサーバー８０１は、第１のトランザクションに対応する少なくとも１つのステートメントを取得し、前記少なくとも１つのステートメントのタイプを決定し、前記第１のステートメントを第１のタイプのステートメントとしてと決定すると、前記第１のタイプのステートメントに対応する実行プランを生成し、前記第１のステートメントを第２のタイプのステートメントとして決定すると、前記第２のタイプのステートメントを前記ＯＬＡＰサーバー８０２に送信するように構成される。前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントである。
【００８９】
前記ＯＬＡＰサーバー８０２は、前記ＯＬＴＰサーバーによって送信された第２のタイプのステートメントを受信し、前記第２のタイプのステートメントに対応する初期実行プランを生成し、前記第２のタイプのステートメントに対応する初期実行プランを前記ＯＬＴＰサーバー８０１に送信するように構成される。
【００９０】
前記ＯＬＴＰサーバー８０１はさらに、前記ＯＬＡＰサーバー８０２によって送信された第２のタイプのステートメントに対応する初期実行プランを受信し、前記第２のタイプのステートメントに対応する初期実行プランに従がって、第２のタイプのステートメントに対応する実行プランを生成し、前記第１のタイプのステートメントに対応する実行プランおよび前記第２のタイプのステートメントに対応する実行プランに従がって、前記第１のトランザクションを処理する。
【００９１】
図８に示されるトランザクション処理のシステムでは、ＯＬＴＰサーバー８０１は、図７に示される第１のタイプのノード７０１であり得、ＯＬＡＰサーバー８０２は、図７に示す第２のタイプのノード７０２であり得ることに留意されたい。
【００９２】
図７に示されるシステムアーキテクチャに基づいて、図９は、本発明の実施形態によって提供される別のトランザクション処理の方法に対応するフロー概略図を例示的に示し、ＯＬＴＰノードは、図８に示されるＯＬＴＰサーバー８０１であり得る。ＯＬＡＰノードは、図８に示されるＯＬＡＰサーバー８０２であってもよい。この方法は、具体的には、以下のステップを含む。
【００９３】
ステップ９０１：ＯＬＡＰノードは、第１のノードによって送信された第１のトランザクションのステートメントを受信する。
ステップ９０２：ＯＬＡＰノードは、前記ステートメントに対応する初期実行プランを生成する。
ステップ９０３：ＯＬＡＰノードは、前記ステートメントに対応する初期実行プランをＯＬＴＰノードに送信する。
ステップ９０４：ＯＬＴＰノードは、ＯＬＡＰノードによって送信された第１のトランザクションのステートメントに対応する初期実行プランを受信する。
ステップ９０５：ＯＬＴＰノードは、前記ステートメントに対応する初期実行プランに従がって、前記ステートメントに対応するストレージノードを取得し、前記ステートメントに対応する実行プランを生成する。
ステップ９０６：ＯＬＴＰノードは、前記ステートメントに対応する実行プランを第１のノードに送信して、前記第１のノードに前記ステートメントに対応する実行プランに従がって前記第１のトランザクションを処理させるようにする。
【００９４】
ステップ９０１から９０６に記載されたコンテンツでは、第１のノードは、ＯＬＴＰサーバーに直接配備されてもよいことに留意されたい。このようにして、トランザクション処理のシステムの複雑さを軽減することができる。
【００９５】
具体的に、ステップ９０２およびステップ９０３では、ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる。たとえば、表１に示すステートメント３を例にとると、ステートメント３はｓｅｌｅｃｔ  ｓ．ｎａｍｅ，  ｓ．ｇｐａ，  ｔ．ｎａｍｅ  ／／  ｆｒｏｍ  ｔｅａｃｈｅｒ＿ｌｉｓｔ  ａｓ  ｔ  ／／  ｓｔｕｄｅｎｔ＿ｌｉｓｔ  ａｓ  ｓ  ／／ｗｈｅｒｅ  ／／  ｓ．ｓｔｕｄｅｎｔ＿ｉｄ＝’２００４０１３６１２１１’  ／／ａｎｄ  ／／  ｓ．ｔｅａｃｈｅｒ＿ｉｄ  ＝  ｔ．ｔｅａｃｈｅｒ＿ｉｄである。ステートメント３によると、ＯＬＡＰノードは、生徒番号２００４０１３６１２１１に対応するデータを検索し、生徒番号２００４０１３６１２１１に対応するデータ内の指導教官番号に従って指導教官の名前を検索する必要があることを知っている可能性がある。すなわち、ステートメント３に対応する初期実行プランに含まれる実行内容は、生徒番号２００４０１３６１２１１に対応する指導教官番号を検索し、取得した指導教官番号に基づいて指導教官名を検索することである。
【００９６】
さらに、ステップ９０５において、ステートメントに対応する実行プランは、ステートメントに対応する実行内容およびストレージノードを含む。上記の内容を例にとると、ステートメント３に対応する初期実行プランとストレージルールによれば、ＯＬＴＰノードは、生徒番号２００４０１３６１２１１に対応するデータがストレージノードａに格納され、生徒番号２００４０１３６１２１１に対応する指導教官のデータがストレージノードｂに格納され、ＯＬＴＰノードはステートメント３に対応する実行プランを生成できる。つまり、ステートメント３に対応する実行プランに含まれる実行内容は生徒番号２００４０１３６１２１１に対応する指導教官番号を検索し、取得した指導教官番号に従って指導教官の名前を検索することである。ステートメント３に対応する実行プランに含まれるストレージノードは、ストレージノードａとストレージノードｂである。
【００９７】
したがって、上記のステップ９０１〜９０６で説明されたコンテンツでは、ＯＬＡＰノードは、分散型データベースのストレージルールを考慮する必要がない（すなわち、各データリストに対応するストレージノードを考慮する必要がない）。各データリストの内部的な論理関係のみを考慮する必要がある。一方、ＯＬＴＰノードは、分散型データベースのストレージルールを各データリストの内部論理関係と統合する必要がある。このような方法は、ＯＬＡＰノードの構造を単純化し、トランザクション処理のシステムの複雑さを軽減し、トランザクション処理のシステムの実施コストを削減できる。
【００９８】
他の可能な実施形態では、図７に示されるシステム構造が、一例において、第２のタイプのノードＡおよび第２のタイプのノードＢなどの複数の第２のタイプのノードを有する場合、第２のタイプのノードＡと第２のタイプのノードＢは、それぞれ受信されたステートメントに従って、ステートメントに対応する初期実行プランをそれぞれ生成できる。その後、第２タイプノードＡと第２タイプノードＢは、ステートメントに対応する初期実行プランを第１のタイプのノードに送信することができる。別の例では、第２のタイプのノードＡは、受信されたステートメントに従ってステートメントに対応する初期実行プランＡを生成でき、次に、第２のタイプのノードＡは、ステートメントに対応する初期実行プランＡを第２のタイプのノードＢに送信する。第２のタイプのノードＢは、ステートメントに対応する初期実行プランＡに従ってステートメントに対応する初期実行プランＢを生成し、ステートメントに対応する初期実行プランＢを第１のタイプのノードに送信する。類推して、図７に示すシステム構造に第２のタイプのノードがさらにある（つまり、第２のタイプのノードの数が２より大きい）場合、上記の方法も使用できる。ここでは繰り返さない。
【００９９】
第１のノードの構造概略図である図５にも示されるステップ９０６において、第１のノードは、依然として複数のスケジューラを含み得る。第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信された後、第１のノードは第１のトランザクションを開始し、対応するスケジューラーを第１のトランザクションに割り当て、次に第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って、第１のトランザクションに対応するスケジューラーを通じて第１のトランザクションを処理する。
【０１００】
同じ発明思想に基づいて、図１０は、本発明の実施形態によって提供されるＯＬＡＰサーバーの構造概略図を例示的に示す。図１０に示すように、ＯＬＡＰサーバー１０００は、受信ユニット１００１、処理ユニット１００２、および送信ユニット１００３を含む。ここで：
前記受信ユニット１００１は、第１のノードによって送信された第１のトランザクションのステートメントを受信するように構成される。
【０１０１】
前記処理ユニット１００２は、前記ステートメントに対応する初期実行プランを生成するように構成される。
【０１０２】
前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる。
【０１０３】
前記送信ユニット１００３は、前記ステートメントに対応する初期実行プランをＯＬＴＰノードに送信し、前記ＯＬＴＰノードに前記ステートメントの初期実行プランに従って前記ステートメントに対応する実行プランを生成させるようにする。
【０１０４】
同じ発明思想に基づいて、図１１は、本発明の実施形態によって提供されるＯＬＴＰサーバーの構造概略図を例示的に示す。図１１に示すように、ＯＬＴＰサーバー１１００は、受信ユニット１１０１、処理ユニット１１０２、および送信ユニット１１０３を含む。ここで：
前記受信ユニット１１０１は、ＯＬＡＰノードによって送信された第１のトランザクションのステートメントの初期実行プランを受信するように構成され、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる。  
【０１０５】
前記処理ユニット１１０２は、前記ステートメントに対応する初期実行プランに従って前記ステートメントに対応するストレージノードを取得し、前記対応する実行プランを生成するように構成され、前記ステートメントに対応する実行プランに前記ステートメントに対応する実行内容およびストレージノードが含まれる。
【０１０６】
前記送信ユニット１１０３は、前記ステートメントに対応する実行プランを第１のノードに送信し、前記第１のノードに前記ステートメントに対応する実行プランに従がって前記第１のトランザクションを処理させるようにする。
【０１０７】
本発明の実施形態によって提供されるサーバーは、
ソフトウェアプログラムを格納するように構成されたメモリと、
前記メモリ内のソフトウェアプログラムを読み取り、上記のトランザクション処理の方法を実行するように構成されたプロセッサとを備える。
【０１０８】
本発明の実施形態は、１つまたは複数のプロセッサによって読み取られて、実行されるときに上記のトランザクション処理の方法を実施するソフトウェアプログラムを格納するコンピュータ記憶媒体を提供する。
【０１０９】
本発明の実施形態では、第１のトランザクションに対応する少なくとも１つのステートメントを取得した後、第１のノードは、前記各ステートメントを分類し、前記各ステートメントが属するタイプに従ってそれぞれ少なくとも１つの第２のノードに少なくとも１つの前記ステートメントを送信することができる。その結果、少なくとも１つの第２のノードは、受信されたステートメントに従って前記ステートメントに対応する実行プランを生成する。第１のノードは、少なくとも１つの前記第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する受信された実行プランに従って前記第１のトランザクションを処理する。このように、当該トランザクション処理のシステムには少なくとも１つの第２のノードがあるため、第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントを取得した後、少なくとも１つのステートメントを分類してから少なくとも１つの第２のノードに送信することができる。ステートメントを分類および処理するこの方法は、ステートメントシステムの設計の複雑さを軽減できる。さらに、従来技術でトランザクション処理にサーバーを１つだけ使用するモードと比較して、本発明の実施形態は、複数のタイプのステートメントを同時に処理でき、システムの処理パフォーマンスを効果的に改善し、システムの運用負担を軽減する。次にシステムの全体的な並列処理を増やす。さらに、少なくとも１つの第２のノードは、ステートメントに対応する実行プランを第１のノードに送信するだけでよく、第１のノードは最初のトランザクションに含まれる少なくとも１つのステートメントに対して統合処理を実行することにより、トランザクション性が確保できる。
【０１１０】
同じ概念に基づいて、本発明は、トランザクション管理および実行のためのサーバー側で上記の方法フローを実行するために使用することができる電子デバイスを提供する。図１２は本発明によって提供される電子デバイスの構造概略図である。当該電子デバイスは、プロセッサ１２０１、メモリ１２０２、送受信機１２０３およびバスインターフェース１２０４を含む。ここで、プロセッサ１２０１、メモリ１２０２、送受信機１２０３およびバスインターフェース１２０４は、バス１２０５を介して互いに接続されている。
【０１１１】
メモリ１２０２は、プログラムを格納するために使用される。具体的には、プログラムは、コンピュータ動作命令を含むプログラムコードを含み得る。メモリ１２０２は、揮発性メモリ（ｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ）、例えば、ランダムアクセスメモリ（ｒａｎｄｏｍ−ａｃｃｅｓｓ  ｍｅｍｏｒｙ，ＲＡＭ）を含み得る。メモリはまた、例えば、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）、ハードディスクドライブ（ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ，ＨＤＤ）またはソリッドステートドライブ（ｓｏｌｉｄ−ｓｔａｔｅ  ｄｒｉｖｅ，ＳＳＤ）などの不揮発性メモリを含み得る。また、メモリ１２０２は、上記のタイプのメモリの組み合わせを含むこともできる。
【０１１２】
メモリ１２０２は、実行可能モジュールまたはデータ構造、またはそれらのサブセット、またはそれらの拡張セットの要素を格納する。
【０１１３】
操作命令には、各種操作を実現するための各種操作命令が含まれる。
【０１１４】
オペレーションシステムには、さまざまな基本サービスを実施し、ハードウェアベースのタスクを処理するためのさまざまなシステムプログラムが含まれている。
【０１１５】
バス１２０５は、周辺機器相互接続（ｐｅｒｉｐｈｅｒａｌ  ｃｏｍｐｏｎｅｎｔ  ｉｎｔｅｒｃｏｎｎｅｃｔ，ＰＣＩ）バスまたは拡張産業標準アーキテクチャ（ｅｘｔｅｎｄｅｄ  ｉｎｄｕｓｔｒｙ  ｓｔａｎｄａｒｄ  ａｒｃｈｉｔｅｃｔｕｒｅ，ＥＩＳＡ）バスなどとすることができる。バスは、アドレスバス、データバス、コントロールバスなどに分割できる。表現を簡単にするために、バスは図１２では１本の太い線のみで表されていますが、１本のバスまたは１種類のバスのみを表しているわけではない。
【０１１６】
バスインターフェース１２０４は、有線通信インターフェース、無線バスインターフェース、またはそれらの組み合わせであってもよく、有線バスインターフェースは、例えば、イーサネットインターフェースであってもよい。イーサネットインターフェースは、光学インターフェース、電気インターフェース、またはそれらの組み合わせであってもよい。無線バスインターフェースは、ＷＬＡＮインターフェースであり得る。
【０１１７】
プロセッサ１２０１は、中央処理装置（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ，ＣＰＵ）、ネットワークプロセッサ（ｎｅｔｗｏｒｋ  ｐｒｏｃｅｓｓｏｒ，ＮＰ）、またはＣＰＵとＮＰの組み合わせであり得る。ハードウェアチップの場合もある。上記のハードウェアチップは、特定用途向け集積回路（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ，ＡＳＩＣ）、プログラマブルロジックデバイス（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｄｅｖｉｃｅ，ＰＬＤ）、またはそれらの組み合わせであり得る。上記のＰＬＤは、複合プログラマブルロジックデバイス（ｃｏｍｐｌｅｘ  ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｄｅｖｉｃｅ，ＣＰＬＤ）、フィールドプログラマブルゲートアレイ（ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ，ＦＰＧＡ）、ジェネリックアレイロジック（ｇｅｎｅｒｉｃ  ａｒｒａｙ  ｌｏｇｉｃ，ＧＡＬ）、またはそれらの任意の組み合わせであり得る。
【０１１８】
前記プロセッサ１２０１は、前記メモリ１２０２内のプログラムを読み取って次の操作を実行するように構成され、第１のトランザクションに対応する少なくとも１つのステートメントを取得し、第１のステートメントのタイプを決定し、前記第１のステートメントのタイプに従がって、前記第１のステートメントを少なくとも１つの第２のノード中の前記第１のステートメントのタイプに対応する第２のノードに送信して、前記第１のステートメントのタイプに対応する第２のノードに、ステートメントに従がって前記ステートメントに対応する実行プランを生成させるようにし、前記第１のステートメントは前記少なくとも１つのステートメント中のいずれかのステートメントである。
【０１１９】
前記メモリ１２０２は、１つまたは複数の実行可能プログラムを格納するように構成され、動作を実行するときにプロセッサ１２０１によって使用されるデータを格納することができる。
【０１２０】
前記送受信機１２０３は、前記プロセッサ１２０１の制御下で、前記少なくとも１つの第２のノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記処理ユニットはさらに、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを処理する。
【０１２１】
任意選択で、前記プロセッサ１２０１は具体的に、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションを開始し、前記第１のトランザクションに対応するスケジューラを割り当て、および前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに従って前記第１のトランザクションに対応するスケジューラを介して前記第１のトランザクションを処理する。
【０１２２】
任意選択で、前記少なくとも１つの第２のノードは、オンライントランザクション処理（ＯＬＴＰ）ノードおよびオンライン分析処理（ＯＬＡＰ）ノードを含み、前記プロセッサ１２０１は具体的に、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容が含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のトランザクションを処理し、前記第１のタイプのステートメントに対応する実行プランに前記第１のタイプのステートメントに対応する実行内容およびストレージノードが含まれる場合、前記第１のタイプのステートメントに対応する実行内容に従って前記第１のタイプのステートメントに対応するストレージノードにアクセスし、および前記第２のタイプのステートメントに対応する実行内容に従って前記第２のタイプのステートメントに対応するストレージノードにタアクセスし、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【０１２３】
任意選択で、前記少なくとも１つの第２のノードは、ＯＬＴＰノードを含み、前記送受信機１２０３は具体的に、ＯＬＴＰノードによって送信された前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランを受信し、前記第１のトランザクションの少なくとも１つのステートメントに対応する実行プランに前記第１のトランザクションの第１のタイプのステートメントに対応する実行プランおよび前記第１のトランザクションの第２のタイプのステートメントに対応する実行プランが含まれ、ここで、前記第１のタイプのステートメントに対応する実行プランは、前記第１のタイプのステートメントに従って前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントに対応する実行プランは、前記ＯＬＡＰノードによって送信された第２のタイプのステートメントの初期実行プランに従って、前記ＯＬＴＰノードによって生成され、前記第２のタイプのステートメントの初期実行プランは前記第２のタイプのステートメントに対応する実行内容を含み、前記第２のタイプのステートメントに対応する実行プランには前記第２のタイプのステートメントに対応する実行内容およびストレージノードが含まれる。
【０１２４】
上記のユニットの分割は、論理機能の分割のみであり、これらのユニットは、物理的エンティティに完全にまたは部分的に統合され得るか、または実際の実施において物理的に分離され得る。本願の実施形態では、受信ユニット６０３は送受信機１２０３によって実施され得、取得ユニット６０１および処理ユニット６０２はプロセッサ１２０１によって実施され得る。図１２に示されるように、電子デバイス１２００は、プロセッサ１２０１、送受信機１２０３およびメモリ１２０２を含み、メモリ１２０２は、電子デバイス１２００が工場を出るときにプレインストールされたプログラム／コードを格納するように構成され得、また、プロセッサ１２０１によって実行されるために使用されるコードなどを格納し得る。
【０１２５】
上記から分かるように、本発明の実施形態では、このように、当該トランザクション処理のシステムには少なくとも１つの第２のノードがあるため、第１のノードは、第１のトランザクションに対応する少なくとも１つのステートメントを取得した後、少なくとも１つのステートメントのタイプを決定し、対応する第２のノードに送信することができる。従来技術でトランザクション処理にサーバーを１つだけ使用するモードと比較して、本発明の実施形態は、複数のタイプのステートメントを同時に処理でき、システムの処理効率を効果的に改善し、システムの運用負担を軽減する。さらに、少なくとも１つの第２のノードは、ステートメントに対応する実行プランを第１のノードに送信するだけでよく、第１のノードは最初のトランザクションに含まれる少なくとも１つのステートメントに対して統合処理を実行することにより、トランザクション性が確保できる。
【０１２６】
同じ概念に基づいて、本発明は、ＯＬＡＰサーバー側で上記の方法フローを実行するために使用できる電子デバイスを提供する。図１３は本発明によって提供される電子デバイスの構造概略図である。号外電子デバイスは、プロセッサ１３０１、メモリ１３０２、送受信機１３０３およびバスインターフェース１３０４を含む。ここで、プロセッサ１３０１、メモリ１３０２、送受信機１３０３、およびバスインターフェース１３０４は、バス１３０５を介して互いに接続されている。
【０１２７】
メモリ１３０２は、実行可能モジュールまたはデータ構造、またはそれらのサブセット、またはそれらの拡張セットの要素を格納する。
【０１２８】
操作命令には、各種操作を実現するための各種操作命令が含まれる。
【０１２９】
オペレーションシステムには、さまざまな基本サービスを実施し、ハードウェアベースのタスクを処理するためのさまざまなシステムプログラムが含まれている。
【０１３０】
バス１３０５は、周辺機器相互接続（ｐｅｒｉｐｈｅｒａｌ  ｃｏｍｐｏｎｅｎｔ  ｉｎｔｅｒｃｏｎｎｅｃｔ，ＰＣＩ）バスまたは拡張産業標準アーキテクチャ（ｅｘｔｅｎｄｅｄ  ｉｎｄｕｓｔｒｙ  ｓｔａｎｄａｒｄ  ａｒｃｈｉｔｅｃｔｕｒｅ，ＥＩＳＡ）バスなどとすることができる。バスは、アドレスバス、データバス、コントロールバスなどに分割できる。表現を簡単にするために、バスは図１３では１本の太い線のみで表されていますが、１本のバスまたは１種類のバスのみを表しているわけではない。
【０１３１】
バスインターフェース１３０４は、有線通信インターフェース、無線バスインターフェース、またはそれらの組み合わせであってもよく、有線バスインターフェースは、例えば、イーサネットインターフェースであってもよい。イーサネットインターフェースは、光学インターフェース、電気インターフェース、またはそれらの組み合わせであってもよい。無線バスインターフェースは、ＷＬＡＮインターフェースであり得る。
【０１３２】
プロセッサ１３０１は、中央処理装置（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ，ＣＰＵ）、ネットワークプロセッサ（ｎｅｔｗｏｒｋ  ｐｒｏｃｅｓｓｏｒ，ＮＰ）、またはＣＰＵとＮＰの組み合わせであり得る。ハードウェアチップの場合もある。上記のハードウェアチップは、特定用途向け集積回路（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ，ＡＳＩＣ）、プログラマブルロジックデバイス（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｄｅｖｉｃｅ，ＰＬＤ）、またはそれらの組み合わせであり得る。上記のＰＬＤは、複合プログラマブルロジックデバイス（ｃｏｍｐｌｅｘ  ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｄｅｖｉｃｅ，ＣＰＬＤ）、フィールドプログラマブルゲートアレイ（ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ，ＦＰＧＡ）、ジェネリックアレイロジック（ｇｅｎｅｒｉｃ  ａｒｒａｙ  ｌｏｇｉｃ，ＧＡＬ）、またはそれらの任意の組み合わせであり得る。
【０１３３】
前記プロセッサ１３０１は、前記メモリ１３０２内のプログラムを読み取って次の操作を実行するように構成され、前記ステートメントに対応する初期実行プランを生成し、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれる。
【０１３４】
送受信機１３０３は、第１のノードによって送信された第１のトランザクションのステートメントを受信し、前記ステートメントに対応する初期実行プランをＯＬＴＰノードに送信し、前記ＯＬＴＰノードに前記ステートメントの初期実行プランに従って前記ステートメントに対応する実行プランを生成させるようにする。
【０１３５】
上記のユニットの分割は、論理機能の分割のみであり、これらのユニットは、物理的エンティティに完全にまたは部分的に統合され得るか、または実際の実施において物理的に分離され得る。本願の実施形態では、受信ユニット１００１および送信ユニット１００３は、送受信機１３０３によって実施され得、処理ユニット１００２は、プロセッサ１３０１によって実施され得る。図１３に示されるように、電子デバイス１３００は、プロセッサ１３０１、送受信機１３０３、およびメモリ１３０２を含み、メモリ１３０２は、電子デバイス１３００が工場を出るときにプレインストールされたプログラム／コードを格納するように構成され得、また、プロセッサ１３０１によって実行されるために使用されるコードなどを格納し得る。
【０１３６】
同じ思想に基づいて、本発明は、ＯＬＴＰサーバー側で上記の方法フローを実行するために使用することができる電子デバイスを提供する。図１４は本発明によって提供される電子デバイスの構造概略図である。当該電子デバイスは、プロセッサ１４０１、メモリ１４０２、送受信機１４０３、およびバスインターフェース１４０４を含む。ここで、プロセッサ１４０１、メモリ１４０２、送受信機１４０３、およびバスインターフェース１４０４は、バス１４０５を介して互いに接続される。
【０１３７】
メモリ１４０２は、プログラムを格納するために使用される。具体的には、プログラムは、コンピュータ動作命令を含むプログラムコードを含み得る。メモリ１２０２は、揮発性メモリ（ｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ）、例えば、ランダムアクセスメモリ（ｒａｎｄｏｍ−ａｃｃｅｓｓ  ｍｅｍｏｒｙ，ＲＡＭ）を含み得る。メモリはまた、例えば、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）、ハードディスクドライブ（ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ，ＨＤＤ）またはソリッドステートドライブ（ｓｏｌｉｄ−ｓｔａｔｅ  ｄｒｉｖｅ，ＳＳＤ）などの不揮発性メモリを含み得る。また、メモリ１４０２は、上記のタイプのメモリの組み合わせを含むこともできる。
【０１３８】
メモリ１４０２は、実行可能モジュールまたはデータ構造、またはそれらのサブセット、またはそれらの拡張セットの要素を格納する。
【０１３９】
操作命令には、各種操作を実現するための各種操作命令が含まれる。
【０１４０】
オペレーションシステムには、さまざまな基本サービスを実施し、ハードウェアベースのタスクを処理するためのさまざまなシステムプログラムが含まれている。
【０１４１】
バス１４０５は、周辺機器相互接続（ｐｅｒｉｐｈｅｒａｌ  ｃｏｍｐｏｎｅｎｔ  ｉｎｔｅｒｃｏｎｎｅｃｔ，ＰＣＩ）バスまたは拡張産業標準アーキテクチャ（ｅｘｔｅｎｄｅｄ  ｉｎｄｕｓｔｒｙ  ｓｔａｎｄａｒｄ  ａｒｃｈｉｔｅｃｔｕｒｅ，ＥＩＳＡ）バスなどとすることができる。バスは、アドレスバス、データバス、コントロールバスなどに分割できる。表現を簡単にするために、バスは図１４では１本の太い線のみで表されていますが、１本のバスまたは１種類のバスのみを表しているわけではない。
【０１４２】
バスインターフェース１４０４は、有線通信インターフェース、無線バスインターフェース、またはそれらの組み合わせであってもよく、有線バスインターフェースは、例えば、イーサネットインターフェースであってもよい。イーサネットインターフェースは、光学インターフェース、電気インターフェース、またはそれらの組み合わせであってもよい。無線バスインターフェースは、ＷＬＡＮインターフェースであり得る。
【０１４３】
プロセッサ１４０１は、中央処理装置（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ，ＣＰＵ）、ネットワークプロセッサ（ｎｅｔｗｏｒｋ  ｐｒｏｃｅｓｓｏｒ，ＮＰ）、またはＣＰＵとＮＰの組み合わせであり得る。ハードウェアチップの場合もある。上記のハードウェアチップは、特定用途向け集積回路（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ，ＡＳＩＣ）、プログラマブルロジックデバイス（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｄｅｖｉｃｅ，ＰＬＤ）、またはそれらの組み合わせであり得る。上記のＰＬＤは、複合プログラマブルロジックデバイス（ｃｏｍｐｌｅｘ  ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｄｅｖｉｃｅ，ＣＰＬＤ）、フィールドプログラマブルゲートアレイ（ｆｉｅｌｄ−ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ，ＦＰＧＡ）、ジェネリックアレイロジック（ｇｅｎｅｒｉｃ  ａｒｒａｙ  ｌｏｇｉｃ，ＧＡＬ）、またはそれらの任意の組み合わせであり得る。
【０１４４】
前記プロセッサ１４０１は、前記メモリ１４０２内のプログラムを読み取って次の操作を実行するように構成され、前記ステートメントに対応する初期実行プランに従って前記ステートメントに対応するストレージノードを取得し、前記対応する実行プランを生成し、前記ステートメントに対応する実行プランに前記ステートメントに対応する実行内容およびストレージノードが含まれる。
【０１４５】
前記送受信機１４０３は、ＯＬＡＰノードによって送信された第１のトランザクションのステートメントの初期実行プランを受信し、前記ステートメントに対応する初期実行プランに前記ステートメントに対応する実行内容が含まれ、前記ステートメントに対応する実行プランを第１のノードに送信し、前記第１のノードに前記ステートメントに対応する実行プランに従がって前記第１のトランザクションを処理させるようにする。
【０１４６】
上記のユニットの分割は、論理機能の分割のみであり、これらのユニットは、物理的エンティティに完全にまたは部分的に統合され得るか、または実際の実施において物理的に分離され得る。本願の実施形態では、受信ユニット１１０１および送信ユニット１１０３は、送受信機１４０３によって実施され得、処理ユニット１１０２は、プロセッサ１４０１によって実施され得る。図１４に示されるように、電子デバイス１４００は、プロセッサ１４０１、送受信機１４０３、およびメモリ１４０２を含み、メモリ１４０２は、電子デバイス１４００が工場を出るときにプレインストールされたプログラム／コードを格納するように構成され得、また、プロセッサ１４０１によって実行されるために使用されるコードなどを格納し得る。
【０１４７】
本分野の技術者として、本発明の実施形態が、方法、システムまたはいはコンピュータプログラム製品を提供できるため、本発明は完全なハードウェア実施形態、完全なソフトウェア実施形態、またはソフトウェアとハードウェアの両方を結合した実施形態を採用できることがわかるはずである。さらに、本発明は、一つまたはいは複数のコンピュータプログラム製品の形式を採用できる。当該製品はコンピュータ使用可能なプログラムコードを含むコンピュータ使用可能な記憶媒体（ディスク記憶装置、ＣＤ−ＲＯＭ、光学記憶装置等を含むがそれとは限らない）において実施する。
【０１４８】
以上は本発明の実施形態の方法、装置（システム）、およびコンピュータプログラム製品のフロー図および／またはブロック図によって、本発明を記述した。理解すべきことは、コンピュータプログラム命令によって、フロー図および／またはブロック図における各フローおよび／またはブロックと、フロー図および／またはブロック図におけるフローおよび／またはブロックの結合を実現できる。プロセッサはこれらのコンピュータプログラム命令を、汎用コンピュータ、専用コンピュータ、組込み式処理装置、またはいは他のプログラム可能なデータ処理装置設備の処理装置器に提供でき、コンピュータまたはいは他のプログラム可能なデータ処理装置のプロセッサは、これらのコンピュータプログラム命令を実行し、フロー図における一つまたはいは複数のフローおよび／またはブロック図における一つまたはいは複数のブロックに指定する機能を実現する。  
【０１４９】
これらのコンピュータプログラム命令は又、また、コンピュータまたはいは他のプログラム可能なデータ処理装置を特定方式で動作させるコンピュータ読取記憶装置に記憶できる。これによって、命令を含む装置は当該コンピュータ読取記憶装置内の命令を実行でき、フロー図における一つまたはいは複数のフローおよび／またはブロック図における一つまたはいは複数のブロックに指定する機能を実現する。
【０１５０】
これらコンピュータプログラム命令はさらに、コンピュータまたはいは他のプログラム可能なデータ処理装置設備に実装もできる。コンピュータプログラム命令が実装されたコンピュータまたはいは他のプログラム可能設備は、一連の操作ステップを実行することによって、関連の処理を実現し、コンピュータまたはいは他のプログラム可能な設備において実行される命令によって、フロー図における一つまたはいは複数のフローおよび／またはブロック図における一つまたはいは複数のブロックに指定する機能を実現する。  
【０１５１】
無論、当業者によって、上述した実施形態に記述された技術的な解決手段を改造し、またはいはその中の一部の技術要素を置換することもできる。そのような、改造と置換は本発明の各実施形態の技術の範囲から逸脱するとは見なされない。そのような改造と置換は、すべて本発明の請求の範囲に属する。
【符号の説明】
【０１５２】
２００  トランザクション処理のシステム
２０１  トランザクション管理および実行のためのサーバー
２０２  OLTPサーバー
２０３  OLAPサーバー
６００  トランザクション管理および実行のためのサーバー
６０１  取得ユニット
６０２  処理ユニット
６０３  受信ユニット
７００  システムアーキテクチャ
７０１  第１のタイプのノード
７０２  第２のタイプのノード
８００  トランザクション処理のシステム
８０１  OLTPサーバー
８０２  OLAPサーバー
１０００  OLAPサーバー
１００１  受信ユニット
１００２  処理ユニット
１００３  送信ユニット
１０１１  第１のタイプのノード
１０１２  第１のタイプのノード
１０２１  第２のタイプのノード
１０２２  第２のタイプのノード
１０３１  第３タイプのノード
１０３２  第３タイプのノード
１０３３  第３タイプのノード
１１００  サーバー
１１０１  受信ユニット
１１０２  処理ユニット
１１０３  送信ユニット
１２０１  プロセッサ
１２０２  メモリ
１２０３  送受信機
１２０４  バスインターフェース
１２０５  バス
１３０１  プロセッサ
１３０２  メモリ
１３０３  送受信機
１３０４  バスインターフェース
１３０５  バス
１４０１  プロセッサ
１４０２  メモリ
１４０３  送受信機
１４０４  バスインターフェース
１４０５  バス
７０３１  第３のタイプのノード
７０３２  第３のタイプのノード
７０３３  第３のタイプのノード
【図１】
2021517322.tif 000005
【図２】
2021517322.tif 000006
【図３】
2021517322.tif 000007
【図４】
2021517322.tif 000008
【図５】
2021517322.tif 000009
【図６】
2021517322.tif 000010
【図７】
2021517322.tif 000011
【図８】
2021517322.tif 000012
【図９】
2021517322.tif 000013
【図１０】
2021517322.tif 000014
【図１１】
2021517322.tif 000015
【図１２】
2021517322.tif 000016
【図１３】
2021517322.tif 000017
【図１４】
2021517322.tif 000018
【国際調査報告】
2021517322.tif 000019
2021517322.tif 000020
2021517322.tif 000021
2021517322.tif 000022