Raspberry Piがすばやく処理できるデータ量

リレーショナルモデルを使用したおなじみのエンタープライズデータウェアハウスプロジェクトのデータ処理時間は、約2.5時間です。それはたくさんですか、それとも少しですか?



このノートは、高度に技術的なデータウェアハウスエンタープライズの小さなコピーを作成する実験について説明しています。つまり、シングルボードコンピュータRaspberry Piに基づいています。



モデルとアーキテクチャは簡素化されますが、エンタープライズストレージに似ています。結果は、データの処理と分析にRaspberry Piを使用することの実現可能性の評価です。









1番



経験豊富で強力なプレーヤーの役割は、Oracle CorporationのExadata X5マシン(1ユニット)が担います。



データ処理プロセスには、次のステップが含まれます。



  • 10.3 GBファイルからの読み取り-90分で3億5000万レコード。
  • 処理とデータのクリーニング-2つのSQLクエリと15分(個人データの暗号化は180分)。
  • ロードの測定-10分。
  • 2000万件の新しいレコードを含むファクトテーブルを読み込む-5つのSQLクエリと35分。


2.5時間で3億5000万レコードの合計を統合します。これは、1分あたり230万レコード、または1秒あたり約39千の生データレコードに相当します。



#2



実験的な対戦相手は、4コア1.4 GHzプロセッサを搭載したRaspberry Pi 3モデルB +です。



Sqlite3はストレージとして使用され、ファイルはPHPを使用して読み取られます。ファイルとデータベースは、内蔵リーダーの32 GBクラス10 SDカードにあります。バックアップは、USBに接続された64 GBフラッシュドライブに作成されます。



sqlite3リレーショナルデータベースのデータモデルとレポートは、小さなストレージに関する記事で説明されています



データ・モデル
画像





テストする



元のaccess.logファイルは37 MBで、200,000エントリがあります。



  • ログの読み取りとデータベースへの書き込みに340秒かかりました。
  • 5,000レコードの測定値の読み込みに5秒かかりました。
  • 90,000件の新しいレコードを含むファクトテーブルを読み込みます-32秒。


合計すると、20万件のレコードの統合に約7分かかりました。これは、1分あたり28千件のレコード、つまり1秒あたり470件の未加工データレコードに相当します。データベースは7.5 MBです。データ処理のための8つのSQLクエリのみ。



2番目のテスト



よりアクティブなサイトファイル。元のaccess.logファイルは67 MBで、29万のエントリがあります。



  • ログの読み取りとデータベースへの書き込みに670秒かかりました。
  • 25,000レコードの測定値の読み込みに8秒かかりました。
  • 240,000件の新しいレコードを含むファクトテーブルを読み込みます-80秒。


合計すると、29万件のレコードの統合に12分強かかりました。これは、1分あたり23千件のレコード、つまり1秒あたり380件の生データレコードに相当します。データベースは22.9 MBです。



出力



効果的な分析を可能にするモデルの形式でデータを取得するには、いずれの場合も、かなりの計算リソースと材料リソースが必要であり、時間がかかります。

たとえば、1つのExadataユニットのコストは100Kを超えます。 1つのRaspberry Piの価格は60ユニットです。

それらは直線的に比較することができません、なぜならデータ量と信頼性要件の増加に伴い、問題が発生します。



ただし、1,000のRaspberry Piが並行して動作する場合を想定すると、実験に基づいて、1秒間に約40万件の生データのレコードが処理されます。

そして、Exadataのソリューションが毎秒60または10万レコードに最適化されている場合、これは40万よりも著しく少ないです。これは、エンタープライズソリューションの価格が高すぎるという内なる感情を裏付けています。



いずれにせよ、Raspberry Piは適切な規模のデータとリレーショナルモデルの処理に優れています。



リンク



ホームRaspberry PiはWebサーバーとして構成されています。このプロセスについては、次の投稿で説明します。

Raspberry Piとaccess.logファイルのパフォーマンスを自分試すことができますここには、データベースモデル(DDL)、ロードプロシージャ(ETL)、およびデータベース自体をダウンロードできます。アイデアは、過去数週間のデータを含むログからサイトの状態のアイデアをすばやく取得することです。



変更点

コメントのおかげで、Exadataファイルをロードする際のバグが修正され、ノート内の番号が修正されました。Sqlloaderは読み取りに使用され、いくつかのバグによりBINDSIZEおよびROWSパラメータが削除されました。リモートドライブからの起動が不安定なため、ダイレクトパスの代わりに従来の方法が選択されました。これにより、速度がさらに30〜50%向上する可能性があります。



All Articles