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

Lindorm:データクエリ

最終更新日:Jan 21, 2025

LindormTableを使用すると、クラスタ管理システムでSQL文を実行して、Lindorm全体のテーブルに格納されているデータを照会できます。 このトピックでは、クラスター管理システムを使用してワイドテーブルのデータをクエリする方法について説明します。

前提条件

Lindormインスタンスのクラスター管理システムにログインしています。 詳細については、「クラスター管理システムへのログイン」をご参照ください。

制限事項

  • データのセキュリティを確保するため、Lindormは各クエリに対して最大100個のエントリのみを返します。

  • ROWフィールドは、LindormのRowKeyに相当します。 ROWフィールドと修飾子フィールドのデータ型はvarbinaryです。 修飾子フィールドがファミリーに属していない場合は、ファミリーを指定する必要があります。

  • ROWフィールドとCOLフィールドはSQLの予約済みフィールドです。 これらのフィールドをクエリで使用する場合は、フィールドをバックティック (') で囲む必要があります。 qualifierフィールドにファミリを指定する場合は、フィールドをbackticks (') で囲む必要があります。

データクエリ (HBase対応)

データクエリ (HBaseと互換) モジュールでは、指定されたテーブルに関する詳細情報をクエリしたり、既存のテーブルに属性を追加したりできます。

既存データの照会

SQLテーブルおよびHBaseテーブルの既存のデータを照会できます。

  1. クラスター管理システムの左側のナビゲーションウィンドウで、[データクエリ] > [データクエリ (HBaseに対応)] を選択します。

  2. 名前空間テーブル名などのフィルター条件を指定します。

  3. (オプション) フィルター列ファミリ、行キー、開始キー、終了キー、制限など、その他の条件を指定します。

  4. [照会] をクリックします。 指定されたテーブルの既存のデータが表示されます。

HBaseテーブルへのデータの追加

データはHBaseテーブルにのみ追加できますが、クラスター管理システムのSQLテーブルには追加できません。

  1. [追加] をクリックします。

  2. [テーブルデータの追加] ダイアログボックスで、次の表に示すパラメーターを指定します。

    パラメーター

    説明

    行キー

    HBaseテーブルのrowkey。

    コル

    テーブルに追加する列。 このパラメーターの値に列ファミリを指定する必要があります。 このパラメーターの値は、<Column family name:Column name> の形式です。 例: f:name

    Timestamp

    Unixタイムスタンプのみがサポートされています。

    データの値。 サポートされているデータ型の詳細については、「基本データ型」をご参照ください。

  3. [OK] をクリックして、データの行をテーブルに追加します。

既存データの変更

SQLテーブルおよびHBaseテーブルの既存のデータを変更できます。

  1. 変更する行に対応する [操作] 列の [編集] をクリックします。image.png

  2. [テーブルデータの編集] ダイアログボックスで、タイムスタンプとデータ値を変更します。

  3. [OK] をクリックして、変更したデータを保存します。

SQLエグゼキュータ

  1. クラスター管理システムの左側のナビゲーションウィンドウで、[データクエリ] > [SQL Executor] を選択します。

  2. 名前空間ドロップダウンリストから名前空間を選択します。 名前空間のテーブルは、ページの右側に表示されます。

  3. (オプション ): 16進文字列を取得します。 詳細については、「16進文字列の取得」をご参照ください。

  4. エディタにクエリ用のSQL文を入力します。

  5. [実行] をクリックします。

    説明

    次のショートカットキーを使用して、SQL文を実行することもできます。Windows: CTRL + ENTER。 macOS: COMMAND + RETURN。

16進文字列の取得

条件またはHBaseテーブル内の指定された行を使用してvarbinaryデータをクエリするには、値として16進文字列を使用する必要があります。 たとえば、rowkeyがr1のデータを照会するには、SQL文でWHERE句をWHERE rowkey='7321' に設定します。 r1の16進文字列は7321である。 クラスター管理システムの [データクエリ] ページには、値を16進文字列に変換するための変換ツールが用意されています。

  1. クラスター管理システムの左側のナビゲーションウィンドウで、[データクエリ] > [SQL Executor] を選択します。

  2. 名前空間ドロップダウンリストから名前空間を選択します。 名前空間のテーブルは、ページの右側に表示されます。

  3. 値の16進文字列を取得します。

    • 方法1: [実行] をクリックして、テーブルのスキーマを表示します。 [バイナリから16進文字列への変換] フィールドに、変換する文字列を入力します。 エディターセクションの上部に16進数の文字列を取得できます。image.png

    • 方法2: HexStringスイッチをオンにし、[実行] をクリックします。 実行结果の値に対応する16进数文字列を取得します。

  4. 実行するSQL文を入力し、文の条件値を変換された16進文字列に置き換えます。

    たとえば、実行する元のSQLステートメントがSELECT * FROM task WHERE ROW = "xxxx1"; の場合、値が16進文字列に置き換えられるステートメントはSELECT * FROM task WHERE ROW = "7878787831";

  1. [実行] をクリックします。