タグ付けされた質問 「schema」

データベースシステムのスキーマは、データベース管理システム(DBMS)でサポートされている正式な言語で記述された構造であり、データの編成を参照して、データベースの構築方法(データベーステーブルに分割)の青写真を作成します。

1
2つの可能な所有者/親タイプを持つエンティティのデータベーススキーマ?
私はSequelizeをORMとしてPostgreSQLを使用しています。 1つのタイプがありUserます。2番目のタイプはGroupで、GroupMembershipsテーブルを介して任意の数のユーザーを関連付けることができます。Userは、任意の数のを所有することもできGroupます。 3番目のタイプはPlaylist、UserORまたはaのいずれかに属することができgroupます。このタイプのスキーマを設計して、1つのタイプの所有者またはいずれかのタイプの所有者を持つことができる最善の方法は何ですか? 最初のパスでは両方の関連付けを作成しましたが、一度に1つだけ入力しました。これは機能する可能性がありますが、ハックに見え、クエリを困難にします。 追加情報 コメントを介してMDCCLによって投稿された説明要求に対する私の応答は次のとおりです。 (1)プレイリストが特定のグループによって所有されている場合、このプレイリストは、そのグループのメンバーである限り、1 対多のユーザーに関連していると言えますか? これは技術的には正しいと思いますが、この1対多の関連付けは明示的には存在しません。 (2)では、特定のプレイリストを1 対多のグループが同時に所有することは可能ですか? いいえ、をPlaylist1対多で所有することはできませんGroups。 (3)特定のプレイリストを1 対多のグループ、およびそのようなグループのメンバーではない1 対多のユーザーが所有することは可能ですか? いいえ。(2)のように、1対多のto が存在しPlaylistてGroupはならないためです。さらに、Playlistがによって所有されてGroupいる場合、は所有していませんUser。逆も同様です。一度に1人の所有者のみ。 (4)グループ、ユーザー、プレイリストを一意に識別するために使用されるプロパティは何ですか? それぞれに代理主キー(id)と自然キー(主ではない)があります。これらはslug、GroupおよびPlaylist、およびにusername対応していUserます。 (5)特定のプレイリストで所有者が変更される可能性はありますか? 私はこれが機能であることを計画していませんが(少なくとも最初は)、これは仮説的に発生する可能性があります。 (6)Group.SlugおよびPlaylist.Slug属性の意味は何ですか?それらの値は、主キーとして定義されるのに十分安定していますか、それとも頻繁に変更されますか?これら2つのプロパティの値は、User.Usernameとともに一意である必要がありますか? これらslugのは、固有の小文字のハイフン付きのバージョンであり、それぞれのエンティティのtitleです。たとえばgroup、title「テストグループ」を含むa は「テストグループ」を持ちslugます。重複には増分整数が追加されます。これは彼らのtitle変化がいつでも変わるでしょう。私はそれが彼らが素晴らしい主キーを作成しないことを意味すると思いますか?はい、slugsそしてusernames、それぞれのテーブルにユニークです。

1
SQL Serverでスキーマ間を一括で移行する方法は?
現在、複数のデータベースがありますが、それらを組み合わせて、スキーマを使用してドメインコンテキストを分離したいと考えています。 MS SQL Server 2008 R2では、スキーマのすべてのコンテンツを一括して別のスキーマに再配置するにはどうすればよいですか? たとえば、dboスキーマに作成したすべてのテーブル、ビュー、プロシージャ、インデックスなどは、スキーマに存在するようになりfooます。 編集:私はアーロンベルトランの素晴らしいコメントに基づいて明確にしたかったです。これはマルチテナンシーの状況ではありません。私たちの状況では、内部ツールプラグインが、テーブルをツールのデータベースにマージしなかった開発者によって分離して開発されました。

2
.frmファイルだけからテーブルスキーマを抽出するにはどうすればよいですか?
mysqlのデータディレクトリをバックアップから抽出し、古いテーブルからスキーマを取得する必要がありますが、それは別のマシンからのバックアップです。 今日、これを行う方法についてのチュートリアルを多数読んでいますが、失敗するように見えるたび、またはmysqlがハングまたはクラッシュするためにmysqlを再インストールする必要があります。私は以下を試しました: 別のデータベースを作成する そのデータベースに同じ名前のテーブルを作成する ファイルを置き換える エンジンの停止/開始 .frmファイルから回復する いろいろな順番や組み合わせで試してみました。 .frmファイルからスキーマを抽出できる外部ツールはありますか?ファイルを開くと、列名が表示されます。私は一見したが、これを可能にする何かを見つけることができないようです。 前もって感謝します。

4
データベース設計-共有タグ付きのさまざまなオブジェクト
私の経歴は、データベース管理ではなく、Webプログラミングに詳しいので、ここで間違った用語を使用している場合は訂正してください。コーディングするアプリケーションのデータベースを設計する最良の方法を見つけようとしています。 状況:レポートが1つの表にあり、推奨事項が別の表にあります。各レポートには多くの推奨事項があります。キーワード用の別のテーブルもあります(タグ付けを実装するため)。ただし、キーワードを検索すると結果としてレポートと推奨事項が表示されるように、レポートと推奨事項の両方に適用されるキーワードのセットを1つだけ用意したいと思います。 これが私が始めた構造です: Reports ---------- ReportID ReportName Recommendations ---------- RecommendationID RecommendationName ReportID (foreign key) Keywords ---------- KeywordID KeywordName ObjectKeywords ---------- KeywordID (foreign key) ReportID (foreign key) RecommendationID (foreign key) 本能的には、これは最適ではないようで、タグ付け可能なオブジェクトを共通の親から継承し、そのコメントの親にタグを付けると、次のような構造になります。 BaseObjects ---------- ObjectID (primary key) ObjectType Reports ---------- ObjectID_Report (foreign key) ReportName Recommendations ---------- ObjectID_Recommendation (foreign key) RecommendationName ObjectID_Report (foreign …

1
Postgres 9.2のストリーミングレプリケーションは、スキーマの変更と初期テーブル設定をどのように処理しますか?
プライマリ物理データベースサーバーのすぐ下にある物理サーバーにバックアップデータベースをセットアップしたいと考えています。私はPostgres 9.2を使用しており、同期のストリーミングレプリケーション(アトミック性のため)を使用したいのですが、A)初期テーブルセットアップがサーバー1からサーバー2に転送される(たとえば、syncdbサーバー1)に一連のテーブルを作成する私のDjangoアプリから、およびB)サーバー1からサーバー2への継続的なスキーマ変更の実行方法(たとえば、Django South移行をALTER TABLE実行し、クエリを送信するだけでなく、追加/インデックスの削除など)。これらはストリーミングレプリケーションで透過的に処理されますか、それとも両方のサーバー間でこの変更に影響を与えるために何かしなければならないことがありますか?

2
単位と複雑な単位変換に適した関係構造は何ですか?
私の会社はエネルギー業界に属しており、測定単位の変換を表す良い方法を考え出す必要があります。私はいくつかの検索を行ったが、必要な深さでこれをカバーする良い記事をまだ見つけていない。ユニット変換について公開されているほとんどの情報は、ユニット1が与えられた場合、ユニット2に到達するための既知の(ハードコードされた)変換率があり、それが単純な計算であることを前提としています(これは私が見つけた中で最も複雑な例で、まだ役に立ちません)。ただし、これは現実の世界では常に当てはまるわけではなく、処理しなければならないことについても当てはまりません。(長い記事で申し訳ありません-私はできるだけ多くの情報を提供しようとしています!) トリッキーな例1: $ 5をユーロに、またはその逆に変換するなど、一部の変換は時間とともに変化します。これはエネルギーとは何の関係もないように聞こえますが、実際にはエネルギー商品市場(株式市場を考えてください)に関係しています。 トリッキーな例2:( 過度に簡略化された)一部の天然ガスは他のものよりも熱く燃えます。さらに、天然ガスは、ガスのエネルギー(Thermsなど)またはガスの体積(MCFなどの1000立方フィート)に基づいて測定/保存でき、その他の可能性(たとえばトンのためのミサ)。ガソリンの類推は、87オクタン無鉛の1ガロンが、93オクタン無鉛の1ガロンよりも少ないエネルギーを提供することです。 トリッキーな例3: これらの測定単位があることに加えて、サームあたりの$またはMCFあたりの€などのレートも処理する必要があります。これらのレートで動作するようにいくつかの方法が必要で、どのように彼らは我々がから変換する必要がある場合に、ベースユニットに関連する我々はそうサームあたり$にMCFあたり€、我々はできるし、それからの変換と同じ公表レートを利用しサームにMCF。 トリッキーな例4: 以前は、「エネルギー」という用語を非常に緩く使用し、場合によっては誤って使用したことがあります。この時点で、そしてこれからは、状況が変わります。したがって、最後のカーブボールは、エネルギーとパワーの両方を扱うことです。電気の場合、これはkWH対kWを意味します(Yahoo Answersであるにもかかわらず、かなり良い説明です)。データの類推:ダウンロードしたデータの合計MBとMbpsを比較するようなものですISPが提供する帯域幅。データと同様に、エネルギーの供給には時間がかかります。データの類推を続けると、ある期間にわたって消費された平均有効帯域幅を計算する必要がある場合があるため、60MBが1分間にダウンロードされた場合、「有効」レートは60 * 8/60 = 8Mbpsになります。ここでの「トリック」は、Mbpsをユニットとして保存する場合、時間コンポーネントも含みますが、MBに直接関連付ける何らかの方法が必要であることです。幸いなことに、エネルギーから電力(またはその逆)への変換は、私たちが行う必要があるかなりまれなことです。そのため、私たちのソリューションは、他のすべてのトリッキーな例に合わせて最適化し、うまくいけば、この例も可能にする必要がありますが、関連する処理は行いません。エネルギー電源へのオプションです。 トリッキー例5: これは基本的に3 + 4である我々は両方持っているかもしれKWあたり$だけでなく、キロワット時あたりの$を、その速度は、両方を扱うパワーとエネルギー。 簡単な例: 一部の変換は非常に簡単で、これらはWeb上のほとんどの情報が処理できる変換です。1000 Wh = 1kWhなど。サームとデサームまたはkWからMWなどでも同じことが言えます。ここでは手助けは必要ありませんが、変換の約70%がこのタイプになることに注意してください。 開始方法についての私の考えですが、終了方法については不明です: これは明らかに非常に厄介なので、各商品と「使用タイプ」のすべてのデータを格納するために標準測定単位を選択することを提案します。したがって、電気の場合、標準のエネルギー単位はkWH、標準の電力単位はkWになります。したがって、他のエネルギー/電力単位に変換するには、すべての可能な組み合わせではなく、標準との間の変換率のみが必要です。MWからWに変換する必要がある場合は、kWへの変換またはkWからの変換によっていつでも実行できます。 変換率は特定の時間に依存する可能性があるため、この時間を測定に関連して保存できるようにする必要があります。これらのコンバージョン率が1時間に1回以上変化することを心配する必要はなく、1日1回と想定することもできると思います。 変換率は公開された値に依存する可能性があるため、この値を測定に関連して保存できるようにする必要があります。これらのコンバージョン率が1時間に1回以上変化することを心配する必要はなく、1日1回と想定することもできると思います。 これがすべて理解できたら、すべての単位変換を処理する以外に何もしないWebサービスを作成することを期待しています。私はこれらの変換を実行するSQLを探していません。それを作成するためにいくつかの創造的なキャッシュを行うことができるので、これらのテーブルを完全にハンマー処理するわけではありませんが、ユーザーがアクセスするWebサイトでページの読み込みあたり〜400の値の変換を処理する必要がある場合があります。これが重要かどうか、どのように重要かはわかりません。 変わらないコンバージョン率と変わらないコンバージョン率をどのレベルで保存すればよいかわからず、簡単に簡単にアクセスできる方法で正確にキーオフする方法もわかりませんと連携。 これに取り組む方法、または役立つ可能性のあるいくつかの公開されたリーディングマテリアルに取り組む方法についての考えは?私はSQL Serverを使用しています(間もなくSQL Azureになります)が、これは特に問題にはなりません。これを適切に表すためのスキーマが、ここで問題になっています。インチとセンチメートルのように単純なものであれば、簡単です。しかし、ここでは変換率の違いが問題です。

1
PostgreSQLのスキーマの概念
PostgreSQLのスキーマの概念と使用法を理解できません。データベース設計にどのように影響するかわかりません。なぜ使用する必要があるのですか? 今は考えず、後で心配することになった場合、将来的に影響がありますか? 例による説明がいいでしょう。

1
MySQL 5.5でのperformance_schemaの使用方法を教えてください。
MySQLバージョン5.5にアップグレードしました。そこで、スキーマリストでperformance_schemaを確認しました。 この新しいスキーマの使用法は何ですか。 このスキーマを使用してどのように監視できますか? このスキーマを使用する利点は何ですか。 このスキーマを有効にすることによるオーバーヘッドはありますか?

4
複合キーを使用して行を識別するためのガイダンス
行を一意であると識別するために4つの列のセットを使用する(1つは外部キーで、他の3つはfloatデータ型である)ことは良い習慣ですか(または悪影響がありますか)?(4つのキーがリンクされた)テーブル内の一意のエントリを表すテーブルを作成しようとしています。これが攻撃の良い計画なのか、それとももっと良い方法があるのか​​、私は興味があります。 視覚的な目的で、次の表を想像してください。次の表のように編成された在庫アイテムがあります:([K]は主キーの記号、線は関係です) Sheet_Class Sheet_Type Sheet_Size =========== ========== ========== [K] Sheet_Class-. [K] Sheet_Type--. [K] Sheet_Size '---- Sheet_Class '---- Sheet_Type Length Width Thickness データは次のように表示される場合がありますが、簡潔にするために、リンクされた列を持ち込むことは除外しました。 Sheet_Class Sheet_Type Sheet_Size (Tables) [Sheet_Class] [Sheet_Type] [Length], [Width], [Thickness] (Column Values) ============= ============ ============================== Aluminum 5052-H32 48, 96, 0.032 48, 96, 0.040 48, 96, 0.063 6061-T6 60, 120,0.032 …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.