2

私たちのプログラムは、それぞれ特定の独立したプロパティから、異なるプログラムとの間でデータをインポート/エクスポートする必要があります。これらの企業のほとんどは、2 つのテキスト ファイルを送信します。1 つ目はデータ コンテンツで構成され、2 つ目は説明が含まれています。次の例を想定します。

コンテンツ ファイル: TheArtofDeceptionKevin11.53

Description file: offset[0..16] -> Book name 
                  offset[17..21] -> Author
                  offset[22..27] -> Price

この問題に対処するために、企業ごとに Jason ベースの構成ファイルを使用し、データを抽出するために jason を解析し、オフセット情報を抽出してインポートする... しかし、最近、これにデータベースを使用することを考えていました。主キーが (company, docType, fieldname) で列が (start, end) のテーブルを定義するとします。

あの最後のデザインどう思いますか?誰かがすでにこれを実行して、良い解決策を考え出すのを手伝ってくれることを願っています.

ありがとうございました、

データベースを使用するということは、実際には、各会社の構成ファイルを解析し、DB に記述を保存するという意味です。このように考えると、特定の既知の会社からデータをインポートするたびに構成ファイルを解析する必要がなくなります。したがって、すべての交換ファイルは 1 回だけ解析され、データベースに保存されます。新しいコンテンツ ファイルからデータをインポートする必要があるときはいつでも、データベースにクエリを実行してオフセットを抽出します。

4

2 に答える 2

1

場合によります;) (ジェイソンではなくjsonを意味していると思います。

データ交換は、json がサブセットである XML の主な使用例の 1 つです。これにより、共通のツールで操作できる共通の交換フォーマットが可能になります。

ただし、データが定期的に構造化されている場合は、交換形式のようなデータベースを使用できますが、MySql データベース ファイルをコピーするだけでは十分に定義された形式はありません。タブ区切りまたは CSV ファイルを転送できますが、それらに含まれるデータは XML ほど明確に定義されていません。たとえば、ASCII 以外の文字はどのように表現されますか? また、このファイルには主キー情報は含まれません。正確な形式についてすべての参加者に同意できる場合、この転送方法は XML よりも小さいファイルを使用し、処理が速くなりますが、これは非常に大量のデータがある場合にのみ問題になると思います.

したがって、転送または処理の速度がプロセスに顕著な違いをもたらさない限り、XML/json 形式に固執します。

于 2010-01-24T14:45:51.473 に答える
1

データベース システムを使用することは主に、永続的なストレージが必要な場合に役立ちますが、私が収集するのは目的ではありません。あなたが興味を持っているのは、さまざまなアプリケーション間で信頼できるトランスポートを手配できる、ある種のメッセージ キューイング システムです。データ形式に関しては、XML と JSON の間の決定はほとんど好みの問題であり、XML を検証するためにある種のスキーマ言語を使用することに興味がない限り、アプリケーションとトランスポート メカニズムが最もよく処理できるという問題です。現在、JSON は広く実践されていません。

于 2010-01-24T16:30:32.503 に答える