メインコンテンツまでスキップ
バージョン: Latest-4.1

システム制限

このトピックでは、StarRocks を使用する際に適用されるルールと制限について説明します。

  • StarRocks は通信に MySQL プロトコルを使用します。MySQL クライアントまたは JDBC を介して StarRocks クラスターに接続できます。バージョン 5.1 以降の MySQL クライアントを使用することを推奨します。5.1 より前のバージョンは、16 文字を超えるユーザー名をサポートしていません。

  • カタログ、データベース、テーブル、ビュー、非同期マテリアライズドビュー、パーティション、カラム、インデックス、ユーザー名、ロール、リポジトリ、リソース、ストレージボリューム、パイプなどのオブジェクトの命名規則:

    • 名前は数字 (0-9)、文字 (a-z または A-Z)、アンダースコア (_) のみで構成できます。ユーザー名はすべて数字でも構いません。
    • 名前は文字またはアンダースコア (_) で始めることができます。
    • 名前は 64 文字を超えることはできません。その中で:
      • データベース名は 256 文字を超えることはできません。
      • テーブル名とカラム名は 1024 文字を超えることはできません。
      • ユーザー名は 128 文字を超えることはできません。
    • カラム名(カラムエイリアス)、パーティション名、インデックス名は大文字と小文字を区別しません。その他の名前は大文字と小文字を区別します
  • FE 設定項目 enable_table_name_case_insensitive(v4.0 以降でサポート)は、カタログ名、データベース名、テーブル名、ビュー名、および非同期マテリアライズドビュー名が大文字小文字を区別しないかどうかを制御します。この機能はデフォルトで無効であり(これらの名前は大文字小文字を区別します)、クラスターを作成する際にのみ有効にできます。

    警告

    明確かつ十分に理解された理由がない限り、この機能は無効のままにすることを強く推奨します。

    有効にすると、StarRocks は対象の名前を小文字で保存し、クエリと書き込み(DDL/DML)の処理段階で、すべてのカタログ名、データベース名、テーブル名、ビュー名、およびマテリアライズドビュー名を強制的に小文字に変換します。これにより、次の影響が生じます。

    • 外部テーブルおよび External Catalog が広範囲にわたって使用できなくなる可能性があります。 External Catalog サービスによって、命名規則や大文字小文字の区別に関する規約は異なります。外部スキーマ、データベース、またはテーブルの名前が小文字でない場合、StarRocks は名前を Connector に渡す前に SQL 内の名前を小文字に変換するため、データソースに存在しない名前を検索することになり、クエリは "not found" エラーで失敗します。
    • クラスター作成後は変更できません。 クラスター起動後、この設定項目の値はどのような手段でも変更できません。変更しようとするとエラーが発生し、FE は、この設定項目の値がクラスターが最初に起動された際の値と一致しない場合、起動に失敗します。

    すべてのオブジェクト名(アクセス予定のすべての外部データソース内の名前を含む)がすでに小文字であることを確信できる場合にのみ、新しいクラスターでこの機能を有効にしてください。

  • ラベルの命名規則: データをロードする際にジョブのラベルを指定できます。ラベル名は数字 (0-9)、文字 (a-z または A-Z)、アンダースコア (_) で構成でき、128 文字を超えることはできません。ラベル名は文字またはアンダースコア (_) で始めることができます。

  • テーブルを作成する際、キー列は FLOAT または DOUBLE 型にすることはできません。DECIMAL 型を使用して小数を表現できます。

  • VARCHAR 値の最大長はバージョンによって異なります:

    • StarRocks 2.1 より前のバージョンでは、長さは 1 から 65533 バイトの範囲です。
    • [プレビュー] StarRocks 2.1 以降のバージョンでは、長さは 1 から 1048576 バイトの範囲です。VARCHAR 値の最大長 = 最大行サイズ (1048578 バイト) - 長さプレフィックス (2 バイト)。長さプレフィックスは値のバイト数を示します。
    • デフォルトの長さは 1 バイトです。
  • StarRocks は UTF-8 エンコーディングのみをサポートし、GBK はサポートしていません。

  • StarRocks は既存のテーブルのテーブルタイプを変更することをサポートしていません。例えば、重複キーテーブルを主キーテーブルに変更することはできません。新しいテーブルを作成する必要があります。

  • デフォルトでは、クエリは最大 10,000 のサブクエリでネストすることができ、これは FE パラメータ expr_children_limit によって制御されます。

Rocky the happy otterStarRocks Assistant

AI generated answers are based on docs and other sources. Please test answers in non-production environments.