列指向とインメモリデータベースの組み合わせ
検索処理を速くする技術として広く使われだしているもう1つの技術が「列指向」です。SAPの「Sybase IQ」やHewlett-Packard(HP)の「Vertica」など検索処理に特化したデータベースが採用しています。最近のインメモリデータベースでは、インメモリ機能とこの列指向をあわせて実装することが特徴になっています。
列指向はデータベース内部でのデータの持ち方を従来のような行単位(複数項目を持つ1件のデータを単位とする)で持つのではなく、列単位(各項目ごとを単位とする)でデータを保持する方式です。これにより検索処理を大幅に速くできます。列指向とインメモリをあわせて実装することで、検索処理をより高速化できるのです。
また列単位にデータを持つと、似たようなデータからなる項目ごとにデータがまとまるため、圧縮率を非常に高くすることができます。これによりデータを保持するメモリ量を少なくできるという効果もあります。この2つの理由から、列指向とインメモリ機能が組み合わせで実装されているのです。
インメモリデータベースで実現できること
では、検索処理を大幅に高速化できるインメモリデータベースによって何が実現できるのでしょうか。
まず、検索処理中心であるデータウェアハウスシステムに使用して分析処理を高速化することができます。従来なら数十分かかっていた処理を数秒で処理できるようになれば、いくつかの異なったパターンの分析を実施したり、計画された処理だけでなく思いついた洞察を確認するための分析を実施したりすることが容易にでき、新しい洞察を得ることにつながるはずです。
その高速性によって今まではできなかったような処理を実現可能です。例えば電力のスマートメーターのシステムでは、多くの家庭から定期的に収集したデータを過去のデータと合わせて表示したり、詳細な使用データをもとにより正確な需要予測を実施することが期待されますが、インメモリデータベースはこれらを実現できるだけの性能を持っています。
また、販売店での会計の際にその顧客の過去の購買動向を分析し、最適なクーポンを提供するという処理も可能になります。インメモリデータベースの高速性を生かした応用例は今後続々と登場することが見込まれます。

データベースの技術動向