Files
rogaining_srv/MIGRATION_LOCATION2025_README.md

5.0 KiB
Raw Blame History

Location2025対応版移行プログラム

Location2025へのシステム拡張に伴い、移行プログラムもアップデートされました。

📋 更新されたプログラム

1. migration_location2025_support.py (新規)

Location2025完全対応版の移行プログラム。最新機能と最高レベルの互換性確認を提供。

特徴:

  • Location2025テーブルとの整合性確認
  • チェックポイント参照の妥当性検証
  • 詳細な移行レポート生成
  • Location2025対応マーカー付きでGPSデータ移行

2. migration_data_protection.py (更新)

既存の保護版移行プログラムにLocation2025サポートを追加。

更新内容:

  • Location2025互換性確認機能追加
  • 既存データ保護にLocation2025を含める
  • 移行前の確認プロンプト追加

3. restore_core_data.py (更新)

コアデータ復元プログラムにLocation2025整合性確認を追加。

更新内容:

  • 復元後のLocation2025整合性確認
  • チェックポイント定義状況の確認
  • Location2025設定ガイダンス

🚀 使用方法

推奨手順 (Location2025対応環境)

# 1. 新しいLocation2025完全対応版を使用
docker compose exec app python migration_location2025_support.py

# 2. 必要に応じてコアデータ復元 (Location2025整合性確認付き)
docker compose exec app python restore_core_data.py

従来の環境 (Location2025未対応)

# 1. 既存の保護版プログラム (Location2025確認機能付き)
docker compose exec app python migration_data_protection.py

# 2. 必要に応じてコアデータ復元
docker compose exec app python restore_core_data.py

🆕 Location2025拡張機能

チェックポイント管理の現代化

  • CSV一括アップロード: Django管理画面でチェックポイント定義を一括インポート
  • 空間データ統合: 緯度経度とPostGIS PointFieldの自動同期
  • イベント連携: rog_newevent2との外部キー制約で整合性保証

移行プログラム拡張

  • 互換性確認: Location2025テーブルの存在と設定状況を自動確認
  • チェックポイント検証: 移行データとLocation2025の整合性チェック
  • 詳細レポート: イベント別統計とLocation2025連携状況の詳細表示

⚠️ 注意事項

Location2025未対応環境での実行

Location2025テーブルが存在しない環境でも移行は実行可能ですが、以下の制限があります

  • チェックポイント参照整合性確認がスキップされます
  • 新しいCSVベース管理機能は利用できません
  • Django管理画面でのチェックポイント管理機能が制限されます

推奨移行パス

  1. Django migrationsを実行してLocation2025テーブルを作成
  2. Django管理画面でサンプルチェックポイントをCSVアップロード
  3. Location2025完全対応版移行プログラムを実行
  4. 移行後にLocation2025整合性を確認

📊 移行結果の確認

移行データ確認

-- 移行されたGPSデータ確認
SELECT COUNT(*) FROM rog_gpscheckin 
WHERE comment LIKE 'migrated_from_gifuroge%';

-- Location2025チェックポイント確認
SELECT COUNT(*) FROM rog_location2025;

-- イベント別チェックポイント分布
SELECT e.event_code, COUNT(l.id) as checkpoint_count
FROM rog_location2025 l
JOIN rog_newevent2 e ON l.event_id = e.id
GROUP BY e.event_code;

Django Admin確認

  1. http://localhost:8000/admin/ にアクセス
  2. Location2025セクションでチェックポイント管理画面を確認
  3. CSV一括アップロード機能が利用可能かテスト

🔧 トラブルシューティング

Location2025テーブルが見つからない

# Django migrationsを実行
docker compose exec app python manage.py makemigrations
docker compose exec app python manage.py migrate

チェックポイントが未定義

  1. Django管理画面にアクセス
  2. Location2025 > "CSV一括アップロード"を選択
  3. サンプルCSVファイルをアップロード

移行データの整合性エラー

# データベース接続確認
docker compose exec db psql -U postgres -d rogdb -c "SELECT version();"

# テーブル存在確認
docker compose exec db psql -U postgres -d rogdb -c "\dt rog_*"

📈 パフォーマンス最適化

Location2025システムは以下の最適化が適用されています

  • PostGIS空間インデックスによる高速位置検索
  • イベント・チェックポイント複合インデックス
  • CSV一括処理による大量データ投入の高速化

移行プログラムも同様に最適化されており、大量のGPSデータも効率的に処理できます。


📞 サポート

Location2025移行に関する技術的な問題やご質問は、システム管理者までお問い合わせください。

Location2025の導入により、ロゲイニングシステムがより使いやすく、拡張性の高いシステムへと進化しました。