大規模データ高速集計データベースの設計開発

Web・業務システム開発

作品の概要

AI要約

本文をもとに、AIがわかりやすく要約したものです。詳細は下記本文をご覧ください。

大規模ログデータの高速集計システムを設計・開発。何千万件から何億件のデータを数秒で集計・ソート。複数サーバーでの並列処理とSocket通信を活用。C言語で実装。

作品について

何千万件、何億件のログデータから、数秒程度で条件にマッチしたデータを集計(項目別単純集計、ユニーク集計、クロス集計、遷移パターン集計等)して上位数万件をソートして返すデータベースを設計・開発しました。

処理の概要としては、データを複数の処理単位に分割し、複数サーバに配置し(Core数が多いマシンにはCore数に応じて多数配置可能)、それを多段階のプロセス(検索・一次集計・マージ)で集計しています。

プロセス間はSocketで接続しており、複数のプロセスが互いに複数のプロセスと通信することで、効率よく高速にデータ処理を行っています。

Hadoopのような感じですが、Hadoopでは速度が間に合わないのでCで書きました。

集計の高速化についてはたくさんのKnowHowがたまりましたが、ここでは説明しきれません。


OS:CentOS 64bit

言語:中核部分はgcc,周辺ツールはPerl,bash

RDB:なし


こういったシステムの開発をご検討されている方がおられましたら、何かお役に立てるかもしれませんので、よろしくお願いいたします。

連絡先:kemoto@xenoa.co.jp(@を半角にして下さい)<a href="http://xenoa.co.jp/kemoto_profile.html" target=blank>プロフィール</a>
シェア
K

K.Emoto

退会済みまたは非公開のユーザー