You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/search/search-how-to-create-search-index.md
+20-12Lines changed: 20 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,18 +32,18 @@ Index creation is largely a schema definition exercise. Before creating one, you
32
32
33
33
Every index requires one field that serves as the *document key* (sometimes referred to as the "document ID"), and this key is mapped to a source field containing a unique identifier. The ability to uniquely identify specific search documents is required for retrieving a specific document in the search index, and for selective data processing by pulling the right one from source data.
34
34
35
-
+ Index location. Moving an existing index to a different search service is not supported out-of-the-box.
35
+
+ Index location. Moving an existing index to a different search service is not supported out-of-the-box. Revisit application requirements and make sure the existing search service, its capacity and location, are sufficient for your needs.
36
36
37
37
Finally, all service tiers have [index limits](search-limits-quotas-capacity.md#index-limits) on the number of objects that you can create. For example, if you are experimenting on the Free tier, you can only have 3 indexes at any given time. Within the index itself, there are limits on the number of complex fields and collections.
38
38
39
39
## Allowed updates
40
40
41
-
A [Create Index](/rest/api/searchservice/create-index) operation creates physical data structures (files and inverted indexes) on your search service. Your ability to update an existing index is contingent upon whether the modification invalidates those physical structures. Most field attributes can't be changed once the field is created in your index.
41
+
[Create Index](/rest/api/searchservice/create-index)is an operation that creates physical data structures (files and inverted indexes) on your search service. Your ability to update an index is contingent upon whether the modification invalidates those physical structures. Most field attributes can't be changed once the field is created in your index.
42
42
43
43
To minimize churn in the design process, the following table describes which elements are fixed and flexible in the schema. Changing a fixed element requires an index rebuild, whereas flexible elements can be changed at any time without impacting the physical implementation.
44
44
45
-
| Element |Mutable|
46
-
|---------|---------|
45
+
| Element |Allowed update|
46
+
|---------|----------------|
47
47
| Name | No |
48
48
| Key | No |
49
49
| Field names and types | No |
@@ -55,23 +55,31 @@ To minimize churn in the design process, the following table describes which ele
[Synonym maps](search-synonyms.md) are not part of an index definition. Modifications to a synonym map have no impact on the physical search index.
58
+
> [!NOTE]
59
+
> [Synonym maps](search-synonyms.md) are not part of an index definition. Modifications to a synonym map have no impact on the physical search index.
59
60
60
61
## Schema checklist
61
62
62
-
+ Review [naming conventions](/rest/api/searchservice/naming-rules) so that index and field names conform to the naming rules.
63
-
+ Review [supported data types](/rest/api/searchservice/supported-data-types). Data type will impact how the field is used. For example, numeric content is filterable but not full text searchable.
64
-
+ Identify one field in the data source that will be used as the key field in your index.
65
-
+ Identify which source fields have searchable content. If the content is text and verbose (phrases or longer), experiment with different analyzers to see how the text is tokenized.
66
-
+ Identify which source fields can be used as filters. Numeric content and short text fields, particularly those with repeating values, are good choices. When working with filters, remember:
63
+
Use this checklist to help drive design decisions for your search index.
64
+
65
+
1. Review [naming conventions](/rest/api/searchservice/naming-rules) so that index and field names conform to the naming rules.
66
+
67
+
1. Review [supported data types](/rest/api/searchservice/supported-data-types). Data type will impact how the field is used. For example, numeric content is filterable but not full text searchable.
68
+
69
+
1. Identify one field in the data source that will be used as the key field in your index.
70
+
71
+
1. Identify which source fields have searchable content. If the content is text and verbose (phrases or longer), experiment with different analyzers to see how the text is tokenized.
72
+
73
+
1. Identify which source fields can be used as filters. Numeric content and short text fields, particularly those with repeating values, are good choices. When working with filters, remember:
74
+
67
75
+ Filterable fields can optionally be used in faceted navigation.
68
76
+ Filterable fields are returned in arbitrary order, so consider making them sortable as well.
69
77
70
78
## Formulate a request
71
79
72
-
When you are ready to create the index, there are several ways to move forward. We recommend the Azure portal or REST APIs for early development and proof-of-concept testing.
80
+
When you're ready to create the index, there are several ways to move forward. We recommend the Azure portal or REST APIs for early development and proof-of-concept testing.
73
81
74
-
During development, plan on frequent rebuilds. Because physical structures are created in the service, [dropping and recreating indexes](search-howto-reindex.md) is necessary for most modifications. You might consider working with a subset of your data to make rebuilds go faster.
82
+
During development, plan on frequent rebuilds. Because physical structures are created in the service, [dropping and recreating indexes](search-howto-reindex.md) is necessary for many modifications. You might consider working with a subset of your data to make rebuilds go faster.
0 commit comments