2017-10-26 8 views
1

私たちは、Azureをデータソースとして使用するAWSのウェブサイトを運営しています。 Azureは、顧客からのトランザクションレプリケーションによって生成されます。 3か4か月に一度、顧客データベースの新しいバージョンがリリースされます。私の会社はこの顧客データベースを作成しません。多くの場合、新しいバージョンには更新スクリプトが付属しておらず、基本的にすべての顧客情報が消去され、新しいデータベースバージョンは新しく作成されます。複数のバージョンのデータベースをSQL Serverインスタンスに格納する最も論理的な方法は何ですか?

これらの更新によってクラウドで中断のない履歴を維持するにはどうすればよいですか?私は2つのオプションだけを見る:各バージョンの新しいデータベースを作成し、各バージョンの新しいスキーマを作成する。最初は時間が経つにつれて高価になり、第2のものはハッキリと感じる。それが大したことならば、自分のアップデートスクリプトを作成するだけですか?

+0

...データベースの削除/作成で何が問題になっていますか?以前に追加したことがある情報が残っていますか?物事を新しいデータベースに移動させながら古いデータベースにアクセスできる必要がありますか?実際には何が変わるのですか?データだけですか?あるいはスキーマの変更もありますか? –

+0

申し訳ありませんが、 "中断のない歴史"は不明です。はい、私はすべての古いデータを保持したいと思います。列が追加/削除/更新され、表が追加/削除/更新されます。少なくとも1年分のデータを提供したいと思っており、信頼性のないアップグレードパスがあれば、これは面白い課題です。 –

答えて

2

費用を抑えるには、Azure SQL DB用のElastic Poolを検討してください。弾性プールには、必要に応じてN個のデータベース間で共有できるeDTUの割り当てがあります。プール内のすべてのデータベースで使用されているDTUの合計がプールの最大DTUを超えていない限り、あなたは金色です。

データベースの古いバージョンにアクセス可能である必要がありますが、多分(あまり)トラフィックがないと思われます。同じ弾性プールに古いバージョンをホスティングすることで、大幅にコストを削減し、必要に応じてアクセス可能にすることができます。

もう1つのオプションは、古いバージョンのバックアップをとり、必要に応じて復元することです。

+0

私が心配している唯一の事は、データベースの制限です。現在の計画では、500データベースを取得しています。あなたがリストアップした理由のために、私たちはElastic Poolを使用しています。私が提供されている悪い更新スクリプトの数に応じて、顧客は年間3または4データベースを使用することができます。私はこれがビジネスに直面している現実かもしれないと理解しています。私はただ最高のソリューションを使いたいと思っています。 –

関連する問題