08 まとめ
トラックの完了を証明し、ローカルの処理を停止して、本番へのスケールアップの道筋を理解します。
macOS terminal: Run workshop commands in Terminal using zsh or bash.
最終確認
SELECT
(SELECT uniqExact(condition_id) FROM polymarket.markets FINAL) AS markets,
(SELECT count() FROM polymarket.price_ticks) AS ticks,
(SELECT count() FROM polymarket.trades_clean) AS trades,
(SELECT count() FROM polymarket.market_midpoints_1m) AS midpoint_minutes,
(SELECT max(event_at) FROM polymarket.price_ticks) AS newest_tick;markets、ticks、midpoint_minutes が 0 より大きく、newest_tick がこの実行と一致していれば
完了です。動きの少ないライブ フィードでは、突合された取引が 0 件でも正常です。fixture モードでは
必ず取引が生成されます。
構築したもの
- 資格情報なしの公開市場ディスカバリー;
- ハートビート、停止検知、再接続、REST による BBO フォールバックを備えたライブ WebSocket 経路;
- 時間窓をオーバーラップさせ決定的な ID を持つ、突合済みの公開取引経路;
- 実際のフィルターを起点に設計した型付き ClickHouse テーブル;
- 挿入時に計算される 1 分足のクォート中間値集計; および
- Cloud ダッシュボード、または同等の保存済み SQL 可視化。
ローカルの collector を停止する
docker compose --env-file .env.polymarket downこれでステートレスなコンテナが削除されます。Cloud 上のデータと保存済みクエリは残ります。
任意: Cloud の後片付け
ワークショップのデータがもう不要な場合にのみ実行してください:
DROP DATABASE polymarket;Cloud サービスの削除やアイドル化は、組織のポリシーに従って clickhousectl またはコンソールから
行ってください。
本番ではどうスケールするか
このワークショップが直接書き込んでいるのは、ソースが HTTP/WebSocket の API で、量も小さいからです。 本番のリレーがすでに Kafka、Kinesis、Pub/Sub、あるいは他のサポート対象ストリームに publish して いるなら、オフセット管理、スキーマ マッピング、バックプレッシャー、エラー処理をマネージドで扱える ClickPipes を使ってください。ワークショップを分散システムらしく見せるためだけにブローカーを 追加してはいけません。
ワークショップ カタログ に戻る、またはこのパスを AI SRE トラック と比べてみてください。