Solr型のマッピング
DataStax EnterpriseでSolr型をどのCQL型およびCassandraバリデーターにマッピングしているのかを示したリファレンス情報。
DataStax Enterpriseで、Solr型をどのCQL型およびCassandraバリデーターにマッピングしているのかを以下の表に示します。
Solr型 | CQL型 | Cassandraバリデーター | 説明 |
---|---|---|---|
AsciiStrField | ascii | AsciiType | 標準Solr StrFieldとしてインデックスを作成 |
BCDIntField | int | Int32Type | 2進化10進数(BCD)整数 |
BCDLongField | bigint | LongType | BCD長整数 |
BCDStrField | text、varchar | UTF8Type | BCD文字列 |
BinaryField | blob | BytesType | バイナリー・データ |
BoolField | boolean | BooleanType | True(1、t、またはT)またはFalse(1、t、Tでない) |
ByteField | int | Int32Type | 8ビット数値を格納 |
DateField | timestamp | DateType | ミリ秒精度で時間を示す |
DecimalStrField | decimal | DecimalType | 標準Solr StrFieldとしてインデックスを作成 |
DoubleField | double | DoubleType | 倍精度(64ビットIEEEの浮動小数点数) |
EnumField | text、varchar | UTF8Type | ソート順序が事前に決められた、閉じたセット |
ExternalFileField | text、varchar | UTF8Type | ディスク・ファイルからの値 |
FloatField | float | FloatType | 32ビットIEEEの浮動小数点数 |
GeoHashField | text、varchar | UTF8Type | 文字列として表現されたGeohash lat/lonペア |
InetField | inet | InetAddressType | InetFieldは現在、Solrの標準StrFieldとして実装され、インデックスが作成されています。 |
IntField | int | Int32Type | 32ビット符号付き整数 |
LatLonType | text、varchar | UTF8Type | Latitude/Longitude 2-D点、latitude優先 |
LongField | bigint | LongType | 長整数(64ビット符号付き整数) |
PointType | text、varchar | UTF8Type | 空間検索用の任意のn次元点 |
RandomSortField | text、varchar | UTF8Type | 順序がランダムな動的フィールド |
ShortField | int | Int32Type | 短整数 |
SortableDoubleField | double | DoubleType | 数値でソートされた倍精度値 |
SortableFloatField | float | FloatType | 数値でソートされた浮動小数点数 |
SortableIntField | int | Int32Type | 数値でソートされた整数 |
SortableLongField | bigint | LongType | 数値でソートされた長整数 |
SpatialRecursivePrefixTreeFieldType | PointType | PointType | ポイント地理空間的コンテキスト向け空間フィールド型 |
SpatialRecursivePrefixTreeFieldType | text、varchar | UTF8Type | 地理空間的コンテキスト向け空間フィールド型 |
StrField | text、varchar | UTF8Type | 文字列(UTF-8でエンコードした文字列またはUnicode) |
TextField | text、varchar | UTF8Type | テキスト。通常は複数の単語またはトークン |
TrieDateField | timestamp | DateType | Lucene TrieRange処理のための日付フィールド |
TrieDoubleField | double | DoubleType | Lucene TrieRange処理のための倍精度フィールド |
TrieField | なし | なし | Trieフィールド型と同じ |
TrieFloatField | float | FloatType | Lucene TrieRange処理のための浮動小数点フィールド |
TrieIntField | int, smallint | Int32Type, ShortType | Lucene TrieRange処理のための32ビットの符号付き整数フィールド |
TrieLongField | bigint | LongType | Lucene TrieRange処理のための長フィールド |
UUIDField | uuid、timeuuid | UUIDType | 汎用一意識別子(UUID) |
VarIntStrField | varint | IntegerType | 標準Solr StrFieldとしてインデックスを作成 |
他の | text、varchar | UTF8Type | 標準Solr StrFieldとしてインデックスを作成 |
範囲クエリーなどの操作の効率を上げるため、トライ型の使用を推奨します。以下の情報を検討してみてください。
- UUIDField
DataStax Enterpriseでは、Cassandra TimeUUID型をサポートしています。この型の値は、その生成日時を含むType 1 UUIDです。値は、格納された競合のないタイムスタンプです。たとえば、TimeUUID型を使用して、タイムスタンプでカラム(ブログ・エントリなど)を特定したり、複数のクライアントが同じパーティション・キーに同時に書き込んだりします。Cassandra TimeUUIDからSolr UUIDFieldにマッピングされたデータを見つけるには、時間成分だけでなく、完全なUUID値を検索します。
- BCD
10進数の計算と文字列への変換が即座に行えるという利点がある、比較的不十分なエンコーディング。
- SortableDoubleField/DoubleType
普通の型(DoubleFieldやIntFieldなど)を使用する場合、ソートは数値ではなく辞書の順に行われます。
- TrieField
型の属性と値であるinteger、long、float、double、dateとともに使用されます。
CQLコレクションのマッピング
DSE Searchでは、コレクションを以下のようにマッピングします。
- コレクションのリストとセット:複数値フィールド。「フィールド・キャッシュをソートするためのオプション」および「例:コピー・フィールドおよびdocValue」を参照してください。
- コレクション・マップ:動的フィールド。
動的フィールドの名前からワイルドカードを引いたものが、マップ名になります。たとえば、[dyna*]という名前のマップ・カラムは、dynaにマッピングされます。内部キーは、完全なフィールド名にマッピングされます。