ほとんどのブロックチェーンデータツールはインデクサーです。イベントを抽出し、カスタムマッピングで変換し、その結果をPostgresや他の汎用ストアにダンプします。インデクサーがボトルネックとなり、その下のデータベースはブロックチェーンデータが何なのか全く分かっていません。結果として、互いに設計されていない2つのシステムを維持してしまうのです。 Ampはデータベースです。Apache DataFusion、Apache Arrow、Parquetをベースにしたブロックチェーンネイティブのものです。これらは、データ業界全体の現代的な分析エンジンを支える基盤と同じものです。DataFusionはクエリの実行と最適化を担当し、Arrowはインメモリのカラム形式を提供し、Parquetはストレージを担当します。Ampはさらにブロックチェーン特有の機能を追加しています:ABIデコードのためのEVM対応UDF、検証可能な抽出、ストリーミングSQL、組み込みの組織再編処理などです。 その違いは複雑さがどこに存在するかを変えるから重要です。インデクサー+データベースのセットアップでは、アプリケーションコードがデータ変換、組織変更のロールバック、スキーマ管理を処理します。Ampの場合、それらはデータベースレベルのプリミティブです。SQLを書くと、残りはデータベースが処理します。 例えば、イーサリアムのメインネット全体にわたるERC-20転送イベントのデコードは、Ampの組み込みevm_decode関数を備えたSQLクエリです: SELECT evm_decode(topic1, topic2, topic3, data, 'Transfer(address indexed from, address indexed to, uint256 value)' as transfer FROM 'edgeandnode/ethereum_mainnet'.logs これが「目的構築データベース」の実務的意味です。データモデル、クエリエンジン、ストレージ層はすべてブロックチェーンデータとは何か、どのように振る舞うかを理解しています。 こちらアンプ。