F1マシンのデータ分析を加速する SQL Server 2008 : F1通信
F1マシンのデータ分析を加速する SQL Server 2008 : F1通信
マクラーレン・エレクトロニック・システムズは、マクラーレン・レーシングで知られるマクラーレングループに属し、モーターレーシング用の電子部品を供給しています。F1 マシーンのエンジンやトランスミッションを制御する ECU(エンジン・コントロール・ユニット)もそのひとつです。モータースポーツの規格を決める国際自動車連盟 (以下、FIA) から、すべてのレース用車両に搭載が可能な ECUの開発を委託された同社は、マイクロソフトとともに、年間で数テラバイトにものぼる ECUデータをより効率的に管理する方式の検討を始めました。その結果、データストレージのソリューションとして MicrosoftR SQL ServerR2008 を採用しました。
[概要]
国/地域 : イギリス
業種 : 製造業
[プロファイル]
イギリスに本社を置くマクラーレン・エレクトロニック・システムズは、マクラーレン グループの電子機器サプライヤーです。信頼性と先端技術を併せ持つ自動車電子システムを供給しています。
[ビジネス状況]
F1 マシンのエンジン・コントロール・ユニット (ECU) は年間2TB 以上のデータを収集します。この膨大なデータは以前、ファイルベースのストレージで管理されていましたが、リレーショナルデータベースに変更する必要がありました。
[ソリューション]
MicrosoftR SQL ServerR 2008 の FILESTREAM 機能でECU データをリレーショナルデータベースにストレージし、データ ストリームにすばやくアクセスできるようになりました。
[メリット]
■ データ管理を簡易化
■ データの「見える化」を促進
■ 迅速でシームレスなデータ アクセスを実現
■ 使いやすい分析ツールの提供
■ オフライン作業を可能に
[ソフトウェアとサービス]
■ Microsoft Servers
- MicrosoftR Windows ServerR 2008 Enterprise
- Microsoft SQL ServerR 2008 Enterprise
- Microsoft SQL ServerR 2008 Express
■ Windows VistaR
■ MicrosoftR Visual StudioR 2008
■ The 2007 MicrosoftR Office system
- MicrosoftR Office ExcelR 2007
[ハードウェア]
■ AMD およびインテル ベースのコンピューター
[パートナー]
■ コンチャンゴ
導入の背景
F1マシンが時速200マイルでGPサーキットを走り抜けるとき、その車両からは毎秒0.5MB のデータが、ピットガレージにいるエンジニアに送信されています。観客が手に汗握るデッドヒートに目を凝らすとき、エンジニアたちの視線はディスプレイの数字に注がれています。
マクラーレン・エレクトロニック・システムズは、マクラーレン・レーシングで知られるマクラーレングループの電子機器サプライヤーとして、エンジンやトランスミッションなどを制御するECUをはじめ、モーター スポーツ用のコントロール機器や開発サポートシステムを供給しています。
F1レースは、FIAが基準を定めるモータースポーツの最高峰であり、そこに導入される自動車技術は最先端のものばかりです。マシンの設計やセッティングはいうまでもなく、走行データの収集にもコンピューターや電子機器は欠かせません。そこでの主役となる機器は ECUです。この制御ユニットはマシン各所に取り付けられたセンサーから収集した走行データを無線でチームのエンジニアに送信する役割を担っています。
F1レースにおけるコスト低減、競争の平等化、安全性改善を推進しているFIAは、2006年の春、自動車電子部品メーカーを招集し、2008年から2010年の大会で、参加チームに搭載する標準ECUの開発を呼び掛けました。マクラーレン・エレクトロニック・システムズとマイクロソフトは共同で独自のECUソリューションを提案したところ、FIAはこれを採用し、両社と契約を交わしました。これにより、F1大会の参加チームすべてに標準のECUソリューションを供給できるようになりました。
このECUソリューションは、マシン側でパワートレイン制御、データログ、遠隔測定 (テレメトリ) を行い、ピットガレージ側ではセントラルサーバーを通じて、データ収集や瞬時のログ解析、クライアントツールへのデータ配信を行うというものです (リアルタイム データ受信、履歴データ検索を行うクライアント ツールはマクラーレンから供給されています)。ピットガレージ用のこのシステムは総称してATLAS(Advanced Telemetry Linked Analysis System)と呼ばれています。
ECUは 車両に搭載された100個以上のセンサーが捕らえたデータを収集し、パワートレインを隅々までモニターします。そこで収集されるデータの量は毎秒100KBから0.5MB。1回のレースでは合計1GBにも及び、そのすべてがピットガレージのコンピューターに休むことなく送信されるのです。こうしたデータのログのすべてを保存すると同時に、データの検索や分析を行うツールをエンジニアに提供することがATLASデータサーバーの役目となります。また、無線規制により、サーバーに届かなかったデータは、ピットインの際、マシンから直接取り出され、自動的に補填されるしくみになっています。
スーパーボウルは何時間を起動しないマクラーレン・エレクトロニック・システムズはこれまでにもF1向けのシステム開発をマイクロソフトと共同で手掛けてきました。GPサーキットでの走行データのほか、実験計測データやシミュレーション情報も含まれるECUデータは、F1レーシングチームにとって非常に重要な情報源であるため、同社はECUデータのすべてを効率よく保存、検索できるようにしたいと考えていました。また、データベースアクセスの標準仕様であるODBC(Open Database Connectivity)や、OLE DB(Object Linking and Embedding Database)に準じて開発されているExcelを利用することで、データを簡単に扱えるようにする方法も検討されていました。
従来利用してきたファイル システムをリレーショナルデータベースに置き換えれば、データの管理、収集、検索は容易になります。ここで重要なのは、現場の高い要求に応える迅速なデータの検索でした。遠隔測定データの1セッションを瞬時にクライアントにロードできるシステムパフォーマンスが要求されていました。
データベースのリレーショナルテーブルにECUデータをBLOB(Binary Large Object)として持たせる方式も検討されましたが、これは現場で使用されるクライアントツールの大幅変更を意味したため、再考を余儀なくされました。このファイル形式は効率的とはいえ、データの管理や標準的なインターフェイスでのアクセスに課題を残していたことも理由のひとつです。
「F1レースの現場では、新旧すべてのECUデータに瞬時にアクセスできなければいけません」とマクラーレン・エレクトロニック・システムズの常務取締役、ピーター・ヴァン・マネン氏は話します。「 動力計、風洞実験装置、シミュレーターなどから集められたデータは膨大な量になります。走行中のリアルタイム データも大事ですが、エンジニアは車高、タイヤ、サスペンション、ギアボックス、エンジンセッティングなどをチェックし、マシンのパフォーマンスを分析しなければなりません。そのために、過去のデータをもっと効率よく管理して、検索できるしくみが必要でした」
ソリューション
この課題に対しマクラーレン・エレクトロニック・システムズが有効であると判断したのが、マイクロソフトのアプリケーション・プラットフォームでした。中でも Microsoft SQL Server 2008 に搭載された「FILESTREAM」機能に注目しました。この機能はバイナリ データを NTFile System (NTFS) のファイルとして保管することで SQL Server Database Engine と NT File System (NTFS) とを連動させます。一方、情報はデータベース内に留まり、トランザクションの整合性はしっかりと保たれます。FILESTREAM のデータの「 インサート」、「アップデート」、「クエリ」、「バックアップ」にはTransact-SQL ステートメントを使用します。また、既存のクライアントツールには Win32 ファイル システム・インターフェイスを提供し、ファイルを読み書きするようにデータにストリーミング・アクセスします。
「大量の時系列データをいかに効率的に扱うかという点が一番の課題でした」とマクラーレン・エレクトロニック・システムズの製品責任者、ポール・スペンス氏は話します。「SQL Server 2008 を採用する以前は、データベースでこんなことができるとは思ってもみませんでした」 マクラーレン・エレクトロニック・システムズは、エンタープライズデータ統合を専門とするマイクロソフト・ゴールド認定パートナーであるコンチャンゴとマイクロソフトの協力を得ながら、FILESTREAMの実証サービスを行いました。この実証サービスの結果から、SQL Server2008 と FILESTREAM を核としたソリューションの優位性が証明され、本格的な開発を開始することになります。
■アーキテクチャ
マクラーレン・エレクトロニック・システムズによる多層構造ソリューションの構成要素は以下の通りです。
・ ECU
コード組み込み式のオンボード・ハードウェアデバイス。F1マシンのエンジン、トランスミッション、サスペンション システム、フレームコンポーネントなどから送られてくるデータを収集し、暗号化したうえでピットガレージのサポートチームに送信します。
・ ATLASサーバー
F1マシンから送られる ECUデータを扱うサーバー・ソリューション。マクラーレン・エレクトロニック・システムズが当初 Visual StudioR 2005 を用いて開発。現在は Visual StudioR 2008 を使用。ATLASサーバーはECUからの遠隔測定データを解凍し、サポートチームが使うクライアントソフトウェアにマルチキャストしています。
・ ATLAS クライアント
サポートチームのコンピュータ (通常はピットガレージで使用されるノートブック PC) 上で動くクライアントソフトウェア。データおよびデータに対応するグラフィックがほぼリアルタイムで表示されるため、サポートチームは多彩なパラメータを通じ、走行状態をモニターすることができます。マクラーレン・エレクトロニック・システムズが開発したこのATLASクライアントは Microsoft WindowsR XP または Windows Vista 上で稼働します。補足的なデータ分析やデータのビジュアル化に Microsoft Office Excel 2007 のスプレッドシートを利用しています。大きなチームの場合には、レース中、30名以上のメンバーがノートブックPCでECUデータの分析にあたることもあります。数名がトランスミッションフィードを担当し、残りはエンジン、サスペンション、その他のシステムからの遠隔測定データの分析にあたります。
・ ATLASデータベース
データ検索用の一元的リポジトリを持つECUデータ用のリレーショナルデータベース。Windows Server 2008 Enterprise 上で稼働する Microsoft SQL Server 2008 でECUデータをホストし、FILESTREAMを用いてスピーディにデータにアクセスします。これにより、蓄積されたECUデータ(過去の走行データ、シミュレーションデータ、直前の走行データなど)にシームレスにアクセスできるようになります。このデータベースの開発にあたってはコンチャンゴの協力を得ました。データベース・スキーマには、レースや実験などECUデータを生成するイベントの全メタデータ、そしてイベントのファイルストリームBLOBカラムを持つセッションのデータテーブルが含まれています。このソリューションはまた、SQL Server 2008 内にホストされたCLR(Common Language Runtime)を使用。あるECUデータセットが呼び出されると、CLR機能でバイナリデータがパラメータ・リザルトセットとして拡張され、Excel2007 や SQL Server 2008 Reporting Services で利用することができます。
■実証サービス
実証サービスの目標のひとつは、従来のNTFSベースファイル・ソリューションと同等の迅速なデータ検索スピードの達成でした。従来システムは遠隔測定データを効率的に1ファイルにまとめ、関連メタデータは別ファイルで保持していました。この方式だとシステムのパフォーマンスはよくなりますが、旧データの検索が難しくなるという欠点があります。しかし、F1レースの現場ではすばやいデータ処理が何より優先されるので、このストレージ・フォーマットが採用されていました。
このファイルシステムにはほかにも課題がいくつかありました。まず、ECUの遠隔測定データをこの方式で保存してしまうと、Excelなどの標準的なインターフェイスを提供できなくなってしまいます。また、レース現場では、走行データ、動力計デー� ��、シミュレーションデータなど、蓄積された過去のデータも含めてのアクセスを必要とするため、膨大な量のデータ管理において問題とされてきました。
実証サービスの結果は、SQL Server 2008 と Microsoft Application Platform で開発された製品を連動させることで、データストレージ機能の強化とデータ可視化に効果があることを証明しました。
Microsoft Application Platform をベースに展開されたECUソリューションの基本アーキテクチャ
■実証サービスの結果
・ SQL Server 2008 を用いれば、NTFSファイルで保管されている時系列のECUデータをより速く検索できる。
・ SQL Server 2008 のFILESTREAMを用いれば、データを既存のATLASクライアントのバイナリファイルとして表示したり、ODBCやOLECBをサポートするクライアントのテーブルとして見せたりすることができる。
・ SQL Server 2008 でECUデータをホストすることにより、直感的にデータを活用できるようになった。たとえばExcelなどを用いてデータを表形式で表示することで、分析を行うことができる。
・ SQL Server 2008 を利用するユーザーが、ファイル サーバーを利用するよりもECUデータの管理や保守がしやすくなる。
「実証サービスの結果、SQL Server 2008 を使えば、リアルタイムの走行データにも過去の実験データにもすばやくアクセスきることがわかりました」とヴァン・マネン氏は話します。「過去のECU データを即座に入手できるということは、非常に大きな意味を持ちます。現状の走行データを過去のパフォーマンス、天候、路面状況と比較することができますから」
導入メリット
ファイルベースのストレージデータを SQLServer 2008 に移行させることで、データ管理の信頼性と効率が向上しました。より多くのデータが可視化され、FILESTREAMによってすばやくシームレスに情報検索できます。使い勝手のよい分析ツールが提供されると同時に、効率的なオフライン作業も可能になりました。
■データ管理の簡易化
ECUデータを SQL Server 2008 に移行したことにより、データ管理が容易になりました。ファイル単位で情報をストレージするのではなく、リレーショナルデータベースに集約するので、データの管理、バックアップ、検索、アクセスの面において一元化を実現しました。また、Microsoft Application Platform によって、データの実行と、走行中のパラメータへのアクセス権を管理することができます。
「ECUには 500から1,000のパラメーターがあり、これに基づいてデータが生成されます。ピットガレージのエンジニアが見つめているのはまさにこのパラメーターです。この他にも、検証回数が低いものも含めれば、マシーンのパフォーマンスを診断するためのデータは 全体で10,000点ほどあります」とスペンス氏は話します。「さらにセンサーからの大量の生データがあり、エンジニアは、そこからマシンのパフォーマンスを上げるための何らかのパターンを見つけ出そうとします。従来だと、昔のテストデータを参照したいときは、まず、そのファイル名を思い出し、続いてそのデータが眠っているラップトップを特定しなければなりませんでした。しかし SQL Server 2008 を活用すれば、そうしたデータ管理の作業負担は大幅に軽減されます」
どのようにパワーピッチに一元的なリポジトリがあれば、同じデータを別の場所に重複して保存することもなくなります。「一度SQL Serverにストレージしておけば、そのデータは皆で共有できます」 と ヴァン・マネン氏は話します。「それが今朝の走行データであっても、昨年の走行データであっても、またはファクトリーの実験データであろうが、シミュレーションデータであろうが、承認さえあれば誰でもそのデータを入手し、活用することができるのです。知りたい実験データが簡単に入手できるので、わざわざもう一度同じ実験を繰り返す必要はなくなります」
SQL Server 2008 を用いれば、訂正や注釈が簡単に行えるため、データの質が高まります。
「マシンから送られてくるECUのストリーミングデータは、そのままデータベースにストレージされますが、これらにはドライバーからのコメントによって情報が追加されていきます。『ウイングのセッティングやタイヤの空気圧が違っている』とか、『間違ったセンサーが取り付けられている』などのコメントです。データはチームで共有されるので、修正や注釈が加えられ、より完全なものとなっていきます」とスペンス氏は話します。
また、データ収集における投資を抑えることができます。「どんなデータであろうと、そこにはコストがかかっています」とヴァン・マネン氏は話します。「実験やシミュレーションは無料ではありません。データ検� �を簡易化して、たくさんの人間がそれを活用すれば、もとが取れます。フォルダの中で情報を眠らせておくのではなく、何度も繰り返して使うべきでしょう」
■データの可視化を促進
ECUデータを SQL Server 2008 のリレーショナルデータベースに一元的に集めておけば、マシンの調整のためのデータが簡単に入手できます。「エンジニアはレースのかなり前からシミュレーションやテストを通じて、マシンのパフォーマンスを調整していきます」とヴァン・マネン氏は説明します。「走行テストが始まれば、そこでまた大量のデータが生み出されます。この膨大なデータを分析しながら、マシンのセッティングを理想に近づけていくわけです」
一元的なリレーショナルデータベースを用いることで、過去の関連データも即座に利用できるようになります。たとえば、サスペンションの調整を行う場合、サーキット名を入力するだけで、コースの周辺温度履歴情報を持つデータストリームにアクセスできるようになります。
「F1マシンは繊細な ので、コースの状況や天候などを見ながら詳細に調整していきます」とヴァン・マネン氏は話します。「たとえば地面に駆動力を伝えるタイヤ。どのような種類を選び、空気圧をどう調整するかによって、トラクション、ブレーキング、コーナリングの状態が微妙に変わってきます。ショックアブソーバーをはじめとする足回りのパーツは、ギアボックス、エンジン、ウイングなど車体を下に押す力を持つパーツとバランスを取りながら調整します。そのための ECUデータを SQL Server 2008 に溜めておき、貴重なデータをあとで掘り起こして活用するのです」
パフォーマンスと同時に信頼性や安定性も上げていく、といった矛盾する要件をバランスよく満たしていくためにも、エンジニアたちにデータベースからすばやく関連情報を見つけ出すしくみを提供する必要があります。
ヴァン・マネン氏は次のように話します。「『コーナリングで思ったように曲がれない』とドライバーが言えば、エンジニアたちは即座に、足回りの調整をすべきか、タイヤを取り換えるべきか、ギアボックスを交換するべきか、と考えます。その判断を適切に行うため、過去の関連データが必要になるのです」
レースでは不測の事態はつきものです。そうした時にうまく状況に対処するためにも豊富なデータへのすばやいアクセスが� ��要となります。ヴァン・マネン氏はこう続けます。「マシンのセッティングが科学だとすれば、本番のレースは職人芸の世界です。つまり、不測事に即応する熟練の技が要求されるのです」
■「FILESTREAM」でシームレスに 高速データ アクセス
F1チームが抱える情報量が膨大だからこそ、検索スピードが問題になります。「1チームあたりの年間データ量は2から3TB。レースではその4、5倍にあたる4、5年分のデータが必要となります」とスペンス氏は話します。「大容量の情報ですが、SQL Server 2008 にはBLOBを指してデータをストリーミングする FILESTREAMのしくみがあるので、通常のテーブルクエリよりもずっと早く情報を検索することができます」
不測の事態に対処するためにも、大量のECUデータへの瞬時のアクセスは必要です。
「本番でもテスト走行でも、どんな事態が発生するか、まったく予測できません。だから情報はいくらでも集めておきたいのです」とヴァン・マネン氏は話します。「レース中はどんなことでもその場で即断しなければなりません。データベースの中から、判断を助けてくれる情報に、いかにすばやく正確にたどり着けるかが問題なのです。たとえば過去の走行データを比較する必要があるなら、これまでのすべての走行データをその場で呼び出す必要があります。F1の世界では、『待った』が利きません」
この世界で何が求められているのか、スペンス氏は十分承知しています。「データ入手のスピードが一番肝心です。ダウンロードに1分も待たされたら、かなりのストレスを感じます。レース中のプレッシャーは、相当なものです。『マシンが出る前に問題を洗い出しておけ!』と怒鳴られながら仕事をするのですから。このような環境ではパフォーマンスが良く、安定したシステムが求められるのは当たり前でしょう。実証サービスの結果、SQL Server 2008 とFILESTREAMを連動させるとパフォーマンスが今までより早くなり、しかもデータの整合性を高めることがわかりました」
データ検索のスピード、データの整合性、システムの堅牢性を備えた データベースソリューションを開発したマクラーレン・エレクトロニック・システムズは、このソリューションの供給に非常に前向きです。
「F1レーシングチームをサポートするなら、データベースには『パフォーマンス』、『整合性』、『堅牢性』が求められます。この3つが揃っていれば、まず成功でしょう。SQL Server 2008 はそのすべてにおいて合格点といえます」
■使いやすい分析ツール
SQL Server 2008 とExcelを連動させることで、システムはさらに使いやすくなり、エンジニアたちのメリットとなります。具体的にはそれは、SQL Server 2008 のストアード プロシージャを用いて FILESTREAM のデータをテーブル形式で表示させ、それをExcelなどODBCに互換性のあるクライアントが利用するというしくみです。
「レースの現場はただでさえプレッシャーがかかるので、誰もが馴染んだツールを使いたがります。F1の場合、それはExcelでした」とスペンス氏は説明します。「使えないツールを前に悩んでいる暇はありません。Excelはエンジニアに人気が高く、SQL Server 2008 からExcelにデータを送って、分析や情報の可視化に使えるとわかったときは、安心しました」
Excelでデータを可視化し、分析することで、状況判断が速まります。「エンジニは皆、データの山からマシンのパフォーマンスを高める解答を見つけ出そうとします」とスペンス氏は話します。「何が大事なのか分析するのに、Excelは非常に役に立ちます」
マクラーレン・エレクトロニック・システムズは将来構想として SQL Server 2008 Analysis Service で多次元データキューブを作り、ECUのデータ分析にまた別の選択肢を提供することを検討しています。
■オフライン作業が可能に
無償ソフトウェアの Microsoft SQL Server 2008 Express を用いて、オフライン作業も簡単に行えます。F1のエンジニアたちは時としてデータベースから離れて、現場作業を強いられる場合があります。「SQL Server Express があれば、オフライン作業も自由自在です」とスペンス氏は話します。「GPサーキット内でノートブックPCを抱えてドライバーと話をするとか、実験装置の上で作業するとか、サプライヤーの工場で新しい機材を試すといった状況はよくあります。そんなときもエンジニアは、ピットガレージで仕事をするのと同様、自由にデータを検索できなければなりません。SQL Server Express はエンジニアにそのための完全なデータベースを提供します。差分データに関しては、作業後に同期化することができます」
まとめ
マクラーレン・エレクトロニック・システムズは、SQL Server 2008 とFILESTREAMを活用してレスポンスタイムの短い一元的なデータ・リポジトリを開発しました。F1レーシングチームはこれを利用して、年間2TB にも上るECUデータの効率的な活用が行えるようになりました。
-Source: Microsoft
-Mobile: F1携帯日記
-Amazon: F1 2009 Wii | F1 2009 PSP
+関連記事 - マクラーレン・エレクトロニック・システムズ -
2006年07月06日
ブリヂストンとマイクロソフトMESに決定 :FIA公式プレスリリース
2006年07月07日
「マイクロソフトをからかおう」 by Pitpass
2006年07月08日
「マイクロソフトMES」はMSとマクラーレングループ会社のジョイントベンチャー
2006年07月22日
ロス・ブラウン 「マイクロソフトMES製ECUに不安はない」
2007年08月15日
F1チーム、マクラーレンによるECU供給に不満
2007年11月13日
2008年シーズンの新要素:ECU
2008年01月24日
標準化ECU
2008年01月27日
SECU(標準化電子制御ユニット)
2008年04月03日
ステファノ・ドメニカリ 「標準化ECUは依然として謎」
2008年08月11日
F1レーシングにおける電子工学とキャリア
2009年04月21日
マクラーレン、F1のECUで「英国女王賞」受賞
0 コメント:
コメントを投稿