すべてのプロダクト
Search
ドキュメントセンター

Tablestore:タイムラインモデル

最終更新日:Dec 28, 2024

タイムラインモデルは、メッセージデータを格納するために設計されています。このモデルは、メッセージの順序保持、大量のメッセージの格納、リアルタイム同期など、メッセージングプロセスの要件を満たすことができます。また、全文検索とブールクエリもサポートしています。このモデルは、インスタントメッセージング(IM)アプリケーションやフィードストリームから生成されるメッセージデータの格納に適しています。

アーキテクチャ

タイムラインモデルは、シンプルな設計で明確なコアモジュールを提供します。必要に応じて、タイムラインモデルを使用してサービスをさまざまな方法で簡単に実装できます。モデルのアーキテクチャには、次のコンポーネントが含まれます。

  • ストア:タイムラインデータを格納するために使用される単位。ストアは、データベースサービスのテーブルに似ています。

  • 識別子:タイムラインデータを識別するために使用される識別子。

  • メタ:タイムラインデータを記述するために使用されるメタデータ。メタデータはフリースキーマ構造で格納され、任意の列を含めることができます。

  • キュー:タイムライン内のすべてのメッセージを格納します。

  • SequenceId:キュー内のメッセージ本文のシリアル番号。SequenceId値は、増分値で一意である必要があります。タイムラインモデルは、自動インクリメント列を使用してSequenceId値を生成します。SequenceId値を手動で指定することもできます。

  • メッセージ:タイムライン内のメッセージ本文。メッセージはフリースキーマ構造で格納され、任意の列を含めることができます。

  • インデックス:メタインデックスとメッセージインデックスが含まれます。メタまたはメッセージの任意の列にインデックスをカスタマイズして、ブールクエリを提供できます。

機能

タイムラインモデルは、次の機能をサポートしています。

  • メタデータとメッセージの管理。作成、読み取り、更新、削除などの基本的なデータ操作を含みます。

  • メタデータとメッセージのブールクエリと全文検索。

  • SequenceId値の2つの設定方法:自動インクリメント列と手動設定。

  • 複数の列を含むタイムライン識別子。

  • タイムラインモデルV1.xとの互換性。タイムラインモデルのTimelineMessageForV1の例を使用して、タイムラインモデルV1.xとの間でメッセージを読み書きできます。

使用上の注意

Tablestore SDK for Javaの依存関係をMavenプロジェクトにインポートするには、Tablestore SDK for Javaのバージョンに基づいて次の操作を実行します。

  • タイムラインモデルが組み込まれているTablestore SDK for Java V4.12.1以降の場合は、Tablestoreの依存関係をインポートします。

    <dependency>
        <groupId>com.aliyun.openservices</groupId>
        <artifactId>tablestore</artifactId>
        <version>4.12.1</version>
    </dependency>
  • V4.12.1より前のTablestore SDK for Javaの場合は、Tablestoreの依存関係とタイムラインモデルの依存関係をインポートします。

    <dependency>
        <groupId>com.aliyun.openservices.tablestore</groupId>
        <artifactId>Timeline</artifactId>
        <version>2.0.0</version>
    </dependency>