0

MySQLデータベースを介してHerokuがホストする専用のPostgreSQLインスタンスに移植中です。初期データをHerokuに渡す方法を理解しています。ただし、外部企業からのデータの「フィード」が毎日あり、毎日インポートする必要があります。これはFTPサーバーにプッシュされ、いくつかの異なるCSVファイルを含むzipファイルです。通常は、Postgresボックスにコピーしてから、「COPY tablename FROMpath / to/file.csv」を実行してデータをインポートするcronジョブを実行できます。ただし、Herokuを使用すると、これを行うための最良の方法について少し戸惑います。注:データのインポートに関するherokudevの記事を確認して確認しました。しかし、これはダンプファイルのようなものです。CSVファイルからの毎日のインポートを扱っています。

Herokuでこれに似たようなことをする人はいますか?もしそうなら、あなたは最善の方法について何かアドバイスを与えることができますか?

もう少し情報:私のアプリケーションは、Cedarスタック上のPython /Django1.3.3です。そして、私のファイルは少し大きくなる可能性があります。それらのいくつかは50Kレコードを超える可能性があります。したがって、それらをループしてDjango ORMを使用するには、おそらく少し時間がかかります(ただし、それでも最善/唯一の解決策になる可能性があります)。

4

1 に答える 1

1

2つのオプション:

  1. 非herokuEC2インスタンスを起動し、FTPからフェッチし、解凍して、そこからコピーを開始します。オプション(http://www.postgresql.org/docs/9.1/static/sql-copy.html)を使用することによりCOPY STDIN、データが上のファイルからではなく、クライアント接続からのものであることを指示できます。アクセスできないサーバーのファイルシステム。

  2. ファイルの大きさはどれくらいですか?dynoのエフェメラルファイルシステムに適合する可能性があるため、プロセスまたは1回限りのジョブでFTPサーバーからファイルをダウンロードし、dyno内からプロセス全体を実行できます。プロセスが終了すると、ファイルシステムデータは削除されます。

于 2012-08-29T15:44:07.133 に答える