私のプロジェクトでは以下のような状況があります。 1つのカテゴリに関連付けられたタグ値がいくつかあります。タグデータへのカテゴリの効率的な格納と検索
例:今すぐ
Fruits : Apple, Banana, Grape
Vegetables: Tomato, Cabbage, Brinjal
、このために私は2つの列、Category
、Tag
とデータベースの単純なテーブルを使用して、私はCategory
欄に「果物」を記憶し、「アップル、バナナ、ブドウ」でTag
列(各タグはコマンドで区切られています)。 select tag from TagsCollection where category='Fruits';
のような簡単なSQL文を使って1つのカテゴリをクエリすると、 "Fruits"カテゴリに属するすべてのタグを含む文字列が取得されます。テーブルはレコードとして特定のカテゴリのインスタンスを1つしか持たないことに注意してください。そして、私はすべてのタグを次の処理のために分離する必要があるので、私はプログラミング言語(Java、ここ)で昏睡状態に文字列を分割します。
ここで、このようなものを実装する理想的な方法は何でしょうか。私は、RDBMS方式のストレージ(正確には、MySQL)を進めるのか、それとも&をこのようなタイプのデータを取り出すための他の高速な方法がありますか?
Iは意図Gことを望んするための任意の通常の形態を無視多値属性を使用すべてのより良い解決策。このようにして保存しておけば、効率的なマッチングのために、プログラミングフロントの各カテゴリにHashTableのようなものをさらに使用することができます。しかし、このような情報を格納するデータベース以外の方法はありますか? XMLのいくつかの並べ替え? (XMLベースのストレージには気づかない) – Kushal