Receiving Helpdesk

what is sort key in dynamodb

by Dena Conroy Published 3 years ago Updated 3 years ago

Best Practices For Using Sort Keys in DynamoDB

  • You can use the sort key along with a prefix to keep a record of item-level revisions such as V0, V1, V2, etc.
  • If you need to query a subset of items, use a composite primary key. ...
  • Sort key only supports string, number, or binary data types.
  • Always try to use a composite primary key as the primary key. ...

The sort key of an item is also known as its range attribute. The term range attribute derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value. Each primary key attribute must be a scalar (meaning that it can hold only a single value).

Full Answer

Can DynamoDB sort key be changed?

Can DynamoDB sort key be updated? No. Similarly to the partition key, sort key cannot be changed after the table is provisioned. Are DynamoDB keys case sensitive? Yes. All the attribute names, values, and keys are case sensitive. E.g. ID is different than id. How do I use numeric id for DynamoDB key? Yes! Number is supported type as DynamoDB key.

What is a sort key?

The sort key is also known as a range attribute of an item, and it helps to organize related information in a single location where it can be efficiently queried. Sort Key vs.

What are the primary keys in DynamoDB?

In DynamoDB there are two types of primary keys: DynamoDB simple key consists only of one value - the partition/hash key. Each record needs to have one of these, and it needs to be unique. With simple key, DynamoDB essentially works just like a Key-Value store.

What is a secondary index in DynamoDB?

DynamoDB has the notion of secondary indexes to enable these additional access patterns. The first kind of secondary index is a local secondary index. A local secondary index uses the same partition key as the underlying table but a different sort key.

What is the purpose of sort key in DynamoDB?

Careful design of the sort key lets you retrieve commonly needed groups of related items using range queries with operators such as begins_with , between , > , < , and so on. Composite sort keys let you define hierarchical (one-to-many) relationships in your data that you can query at any level of the hierarchy.

What is a sort key?

A field or fields in a record that dictate the sequence of the file. For example, the sort keys STATE and NAME arrange the file alphabetically by name within state. STATE is the major sort key, and NAME is the minor key.

What is the difference between partition key and sort key in DynamoDB?

A Partition Key and Sort Key combination is known as a composite primary key. With a Partition Key, you can store records with the same partition key value but a different sort key value. All records with the same partition key value are stored together on the same data storage node.

Does DynamoDB need a sort key?

Each item in a DynamoDB table requires that you create a primary key for the table, as described in the DynamoDB documentation. A primary key can be a partition key or a combination of a partition key and sort key. The primary key must be unique across the table.

What are sort keys and distribution keys?

A table's distkey is the column on which it's distributed to each node. Rows with the same value in this column are guaranteed to be on the same node. A table's sortkey is the column by which it's sorted within each node.

What is SQL sort key?

A sort key is a field in your table that determines the order in which the data is physically stored in the database. If you have a table of sales and you select the purchase time as the sort key, the data will be ordered from oldest to newest purchase.

Can we have multiple sort keys in DynamoDB?

4. How many sort keys can DynamoDB have? There should only be one sort key defined per table. But, it can be composed using multiple columns.

What is PK and SK in DynamoDB?

The partition key of these entity items is the attribute that uniquely identifies the item and is referred to generically on all items as PK . The sort key attribute contains an attribute value that you can use for an inverted index or global secondary index. It is generically referred to as SK .

Can I add sort key to existing DynamoDB table?

DynamoDB doesn't allow to add Sort key for the existing table. It allows the following once the table is created. Modifies the provisioned throughput settings, global secondary indexes, or DynamoDB Streams settings for a given table.

Do I need a sort key?

You need to specify both partition key and sort key to get an item from the table. Further, if you are using query operation then specifying only partition key will work.

Is DynamoDB sort key indexed?

DynamoDB supports two types of secondary indexes: Global secondary index — An index with a partition key and a sort key that can be different from those on the base table. A global secondary index is considered "global" because queries on the index can span all of the data in the base table, across all partitions.

What is the primary key in DynamoDB?

In an Amazon DynamoDB table, the primary key that uniquely identifies each item in the table can be composed not only of a partition key, but also of a sort key. Well-designed sort keys have two key benefits: They gather related information together in one place where it can be queried efficiently.

What is a hash key?

A Hash Key consists of a single attribute that uniquely identifies an item. A Hash and Range Key consists of two attributes that together, uniquely identify an item.

What is a key in DynamoDB?

What are keys in DynamoDB? Keys, like in many other NoSQL and SQL databases, act as a unique identifier of a record or item. If you want to access an item in the DynamoDB table fast (with O (1) complexity), you'll need to know its key. In DynamoDB there are two types of primary keys:

Why is it important to choose the right keys for DynamoDB?

Choosing the right keys is essential to keep your DynamoDB tables fast and performant. If your application will not access the keyspace uniformly, you might encounter the hot partition problem also known as hot key.

What is secondary key?

Another variation of secondary key is the Local Secondary Key. It works similar to the GSI but with one difference. In LSIs, the partition key must remain the same as the primary key's partition key. However, you can change the sort key. This is useful if you need to be able to fetch a collection of items sorted based on more than one attribute, e.g. updatedAt and createdAt.

How does DynamoDB work?

You lose the ability to perform a Query, to fetch data from a table with such key, you can use Scan or GetItem operation.

What is composite key?

Another option is to use a composite key, which is composed of partition key, also known as hash key, and sort key, also known as range key. Choosing this option allows items to share the same partition/hash key, but the combination of hash key and sort key must be unique.

What are the key attributes in DynamoDB?

From all of the DynamoDB Types, only String, Binary and Number can be used as the key attribute type.

What is hot key?

What is a hot key? It's an item with the key that is accessed much more frequently than the rest of the items. It causes an intensified load on one of the partitions, while others are accessed much less often.

What is is

UTF-8 is a variable-width character encoding used for electronic communication [...] UTF-8 is capable of encoding all 1,112,064 valid character code points in Unicode using one to four one-byte (8-bit) code units.

How to use it to your advantage

Once you know how strings are being sorted, you can use that knowledge to your advantage. A very common practice with DynamoDB and single table design is to pre-join data by placing them into the same partition.

Did you find this article valuable?

Support Benoît Bouré by becoming a sponsor. Any amount is appreciated!

What is an optional sort key?

The (optional) sort key determines the order of how data with the same partition key is stored. Using a clever sort key allows you to query many items in 1 query.

What should partition and sort key be based on?

The choice of your partition key and sort key should be based on your most important access pattern. If you have other access patterns, you can accommodate for them by using Global Secondary Indexes, but this comes with a cost.

What is partition key?

The partition key is used for partitioning the data. Data with the same partition key is stored together, which allows you to query data with the same partition key in 1 query. The (optional) sort key determines the order of how data with the same partition key is stored.

How many building blocks are there in DynamoDB?

There are 3 basic building blocks or terms you should get familiar while first learning about DynamoDB, your data resides at:

Does every item have a primary key?

Then, every item has a primary key. The way you compose that primary key is meaningful to how you can access the data. If you decide that your PrimaryKey is simply a hash key, then great! You can get a single item out of it.

What is the primary key in DynamoDB?

The primary key uniquely identifies an item in a table, and you may make queries against the table using the primary key. However, sometimes you have additional access patterns that would be inefficient with your primary key. DynamoDB has the notion of secondary indexes to enable these additional access patterns.

What is a secondary index in DynamoDB?

DynamoDB has the notion of secondary indexes to enable these additional access patterns. The first kind of secondary index is a local secondary index. A local secondary index uses the same partition key as the underlying table but a different sort key.

What is primary key?

Primary Key. Each item in a table is uniquely identified by a primary key. The primary key definition must be defined at the creation of the table, and the primary key must be provided when inserting a new item. There are two types of primary key: a simple primary key made up of just a partition key, and a composite primary key made up ...

What are the two types of primary keys?

There are two types of primary key: a simple primary key made up of just a partition key, and a composite primary key made up of a partition key and a sort key.

What is an item in a table?

An item is a single data record in a table. Each item in a table is uniquely identified by the stated primary key of the table. In your Users table, an item would be a particular User. An item is similar to a row in a relational database or a document in MongoDB.

What is the second kind of secondary index?

The second kind of secondary index is a global secondary index. A global secondary index can define an entirely different primary key for a table. This could mean setting an index with just a partition key for a table with a composite primary key. It could also mean using completely different attributes to populate a partition key and sort key.

What is an attribute in DynamoDB?

Attributes are pieces of data attached to a single item. This could be a simple Age attribute that stores the age of a user. An attribute is comparable to a column in a relational database or a field in MongoDB. DynamoDB does not require attributes on items except for attributes that make up your primary key.

image

Sort Key vs. Other Key Types

  • Sort Key vs. Partition Key
    DynamoDB uses the partition key as an input to the hash function. The hash function's output decides which partition the item will be placed in, and all items with the same partition key value are stored together. The sort key is used to sort and order items in a partition. Multiple items wit…
See more on dynobase.dev

Working with Sort Key

  • How to Add a Sort Key
    First, let's create an object called Book which represents an item in a DynamoDB table. The Bookclass is accessible via getter and setter methods to correctly persist the data using DynamoDBMapper. In this example, the primary key for Book is made up of two BookAuthor (par…
  • How to Change a Sort Key
    You can not change the Sort key after the table is provisioned. You can create a new table and put the exciting data in the newly created table, and delete the old table.
See more on dynobase.dev

Best Practices For Using Sort Keys in DynamoDB

  1. You can not change the Sort key after the table is provisioned. Therefore be mindful when creating a sort key.
  2. If your data contains hierarchical (one-to-many) relationships and you want to query at any hierarchy level, use a composite primary key. E.g., Address that contains zip code, postal code, country,...
  1. You can not change the Sort key after the table is provisioned. Therefore be mindful when creating a sort key.
  2. If your data contains hierarchical (one-to-many) relationships and you want to query at any hierarchy level, use a composite primary key. E.g., Address that contains zip code, postal code, country,...
  3. The sort key should be structured as follows.

Frequently Asked Questions

  • 1. Can we update the sort key in DynamoDB?
    No, you can not update the sort key after the table is provisioned. However, you can create a new table and put the existing data in the newly created table, and delete the old table.
  • 2. Can we query DynamoDB without a sort key?
    Yes, you can use the partition key value of the item to query data.
See more on dynobase.dev

A Brief Introduction to Partition Keys

Using Sort Keys to Extend Data Retrieval Options

  • In some cases, you might supply only a partition key as the primary key when creating a table. In these cases, you’re limited to data retrieval by the partition key or by returning all items in a table with the scan operation. Creating a table this way is simple, and in some cases, simple is all you need. However, as your dataset grows, table scans can become a costly burden in terms of pric…
See more on aws.amazon.com

Working with Ranges

  • You use ranges with sort keys to create queries. The following operators are available with the KeyConditionExpressionsquery: 1. = 2. < 3. > 4. <= 5. >= 6. between 7. begins_with The between operator accepts two values to determine a range, and begins_with checks if a string starts with a substring. You can use most of these operators on numeric values, but the begins_withoperator …
See more on aws.amazon.com

How to Use Sort Keys For Data Organization and Retrieval

  • Applying the knowledge of sort keys to real-life examples highlights repeatable techniques and patterns that you can use for data organization and retrieval in tables you create in the future. Let’s consider log data first, such as event monitoring, pub/sub events, service logs, and the like. Some examples of data sources might be clickstreams, systemdlogs, event logs, or streaming A…
See more on aws.amazon.com

Summary

  • Sort keys can add more power to the querying capabilities of DynamoDB. However, you must use some forethought. Remember to employ string templates that take advantage of the begins_with operator and to order the string by least specific data to most specific. The sort key also can store unique, arbitrary string values such as metadata and permissio...
See more on aws.amazon.com

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9
8.3.21PHP Version395msRequest Duration2MBMemory UsageGET {post}Route
  • warninglog[23:27:14] LOG.warning: Creation of dynamic property Barryvdh\Debugbar\DataFormatter\QueryFormatter:...
  • warninglog[23:27:14] LOG.warning: Creation of dynamic property Barryvdh\Debugbar\DataFormatter\QueryFormatter:...
  • warninglog[23:27:14] LOG.warning: Callables of the form ["Swift_SmtpTransport", "Swift_Transport_EsmtpTranspor...
  • warninglog[23:27:14] LOG.warning: Creation of dynamic property Barryvdh\Debugbar\DataFormatter\SimpleFormatter...
  • warninglog[23:27:14] LOG.warning: Creation of dynamic property Barryvdh\Debugbar\DataFormatter\SimpleFormatter...
  • warninglog[23:27:14] LOG.warning: json_decode(): Passing null to parameter #1 ($json) of type string is deprec...
  • warninglog[23:27:14] LOG.warning: json_decode(): Passing null to parameter #1 ($json) of type string is deprec...
  • Booting (14.44ms)
  • Application (380ms)
  • 1 x Application (96.23%)
    380.19ms
    1 x Booting (3.65%)
    14.44ms
    7 templates were rendered
    • themes.DevBlog.content.post (resources/views/themes/DevBlog/content/post.blade.php)34blade
      Params
      0
      post
      1
      postContent
      2
      author
      3
      updated_at
      4
      bing_rich_snippet_text
      5
      bing_rich_snippet_link
      6
      bing_related_keywords
      7
      google_related_keywords
      8
      bing_news_title
      9
      bing_news_description
      10
      bing_videos
      11
      bing_images
      12
      bing_search_result_title
      13
      bing_search_result_description
      14
      bing_search_result_url
      15
      bing_paa_questions
      16
      bing_paa_answers
      17
      bing_slider_faq_questions
      18
      bing_slider_faq_answers
      19
      bing_pop_faq_questions
      20
      bing_pop_faq_answers
      21
      bing_tab_faq_questions
      22
      bing_tab_faq_answers
      23
      google_faq_questions
      24
      google_faq_answers
      25
      google_rich_snippet
      26
      google_search_result
      27
      indexedArray
      28
      total_images
      29
      total_videos
      30
      settings
      31
      url_current
      32
      menus
      33
      sidebar
    • themes.DevBlog.layouts.master (resources/views/themes/DevBlog/layouts/master.blade.php)41blade
      Params
      0
      __env
      1
      app
      2
      errors
      3
      post
      4
      postContent
      5
      author
      6
      updated_at
      7
      bing_rich_snippet_text
      8
      bing_rich_snippet_link
      9
      bing_related_keywords
      10
      google_related_keywords
      11
      bing_news_title
      12
      bing_news_description
      13
      bing_videos
      14
      bing_images
      15
      bing_search_result_title
      16
      bing_search_result_description
      17
      bing_search_result_url
      18
      bing_paa_questions
      19
      bing_paa_answers
      20
      bing_slider_faq_questions
      21
      bing_slider_faq_answers
      22
      bing_pop_faq_questions
      23
      bing_pop_faq_answers
      24
      bing_tab_faq_questions
      25
      bing_tab_faq_answers
      26
      google_faq_questions
      27
      google_faq_answers
      28
      google_rich_snippet
      29
      google_search_result
      30
      indexedArray
      31
      total_images
      32
      total_videos
      33
      settings
      34
      url_current
      35
      menus
      36
      sidebar
      37
      i
      38
      __currentLoopData
      39
      loop
      40
      item
    • themes.DevBlog.panels.head (resources/views/themes/DevBlog/panels/head.blade.php)41blade
      Params
      0
      __env
      1
      app
      2
      errors
      3
      post
      4
      postContent
      5
      author
      6
      updated_at
      7
      bing_rich_snippet_text
      8
      bing_rich_snippet_link
      9
      bing_related_keywords
      10
      google_related_keywords
      11
      bing_news_title
      12
      bing_news_description
      13
      bing_videos
      14
      bing_images
      15
      bing_search_result_title
      16
      bing_search_result_description
      17
      bing_search_result_url
      18
      bing_paa_questions
      19
      bing_paa_answers
      20
      bing_slider_faq_questions
      21
      bing_slider_faq_answers
      22
      bing_pop_faq_questions
      23
      bing_pop_faq_answers
      24
      bing_tab_faq_questions
      25
      bing_tab_faq_answers
      26
      google_faq_questions
      27
      google_faq_answers
      28
      google_rich_snippet
      29
      google_search_result
      30
      indexedArray
      31
      total_images
      32
      total_videos
      33
      settings
      34
      url_current
      35
      menus
      36
      sidebar
      37
      i
      38
      __currentLoopData
      39
      loop
      40
      item
    • themes.DevBlog.panels.header (resources/views/themes/DevBlog/panels/header.blade.php)41blade
      Params
      0
      __env
      1
      app
      2
      errors
      3
      post
      4
      postContent
      5
      author
      6
      updated_at
      7
      bing_rich_snippet_text
      8
      bing_rich_snippet_link
      9
      bing_related_keywords
      10
      google_related_keywords
      11
      bing_news_title
      12
      bing_news_description
      13
      bing_videos
      14
      bing_images
      15
      bing_search_result_title
      16
      bing_search_result_description
      17
      bing_search_result_url
      18
      bing_paa_questions
      19
      bing_paa_answers
      20
      bing_slider_faq_questions
      21
      bing_slider_faq_answers
      22
      bing_pop_faq_questions
      23
      bing_pop_faq_answers
      24
      bing_tab_faq_questions
      25
      bing_tab_faq_answers
      26
      google_faq_questions
      27
      google_faq_answers
      28
      google_rich_snippet
      29
      google_search_result
      30
      indexedArray
      31
      total_images
      32
      total_videos
      33
      settings
      34
      url_current
      35
      menus
      36
      sidebar
      37
      i
      38
      __currentLoopData
      39
      loop
      40
      item
    • themes.DevBlog.panels.navbar (resources/views/themes/DevBlog/panels/navbar.blade.php)41blade
      Params
      0
      __env
      1
      app
      2
      errors
      3
      post
      4
      postContent
      5
      author
      6
      updated_at
      7
      bing_rich_snippet_text
      8
      bing_rich_snippet_link
      9
      bing_related_keywords
      10
      google_related_keywords
      11
      bing_news_title
      12
      bing_news_description
      13
      bing_videos
      14
      bing_images
      15
      bing_search_result_title
      16
      bing_search_result_description
      17
      bing_search_result_url
      18
      bing_paa_questions
      19
      bing_paa_answers
      20
      bing_slider_faq_questions
      21
      bing_slider_faq_answers
      22
      bing_pop_faq_questions
      23
      bing_pop_faq_answers
      24
      bing_tab_faq_questions
      25
      bing_tab_faq_answers
      26
      google_faq_questions
      27
      google_faq_answers
      28
      google_rich_snippet
      29
      google_search_result
      30
      indexedArray
      31
      total_images
      32
      total_videos
      33
      settings
      34
      url_current
      35
      menus
      36
      sidebar
      37
      i
      38
      __currentLoopData
      39
      loop
      40
      item
    • themes.DevBlog.panels.footer (resources/views/themes/DevBlog/panels/footer.blade.php)41blade
      Params
      0
      __env
      1
      app
      2
      errors
      3
      post
      4
      postContent
      5
      author
      6
      updated_at
      7
      bing_rich_snippet_text
      8
      bing_rich_snippet_link
      9
      bing_related_keywords
      10
      google_related_keywords
      11
      bing_news_title
      12
      bing_news_description
      13
      bing_videos
      14
      bing_images
      15
      bing_search_result_title
      16
      bing_search_result_description
      17
      bing_search_result_url
      18
      bing_paa_questions
      19
      bing_paa_answers
      20
      bing_slider_faq_questions
      21
      bing_slider_faq_answers
      22
      bing_pop_faq_questions
      23
      bing_pop_faq_answers
      24
      bing_tab_faq_questions
      25
      bing_tab_faq_answers
      26
      google_faq_questions
      27
      google_faq_answers
      28
      google_rich_snippet
      29
      google_search_result
      30
      indexedArray
      31
      total_images
      32
      total_videos
      33
      settings
      34
      url_current
      35
      menus
      36
      sidebar
      37
      i
      38
      __currentLoopData
      39
      loop
      40
      item
    • themes.DevBlog.panels.scripts (resources/views/themes/DevBlog/panels/scripts.blade.php)41blade
      Params
      0
      __env
      1
      app
      2
      errors
      3
      post
      4
      postContent
      5
      author
      6
      updated_at
      7
      bing_rich_snippet_text
      8
      bing_rich_snippet_link
      9
      bing_related_keywords
      10
      google_related_keywords
      11
      bing_news_title
      12
      bing_news_description
      13
      bing_videos
      14
      bing_images
      15
      bing_search_result_title
      16
      bing_search_result_description
      17
      bing_search_result_url
      18
      bing_paa_questions
      19
      bing_paa_answers
      20
      bing_slider_faq_questions
      21
      bing_slider_faq_answers
      22
      bing_pop_faq_questions
      23
      bing_pop_faq_answers
      24
      bing_tab_faq_questions
      25
      bing_tab_faq_answers
      26
      google_faq_questions
      27
      google_faq_answers
      28
      google_rich_snippet
      29
      google_search_result
      30
      indexedArray
      31
      total_images
      32
      total_videos
      33
      settings
      34
      url_current
      35
      menus
      36
      sidebar
      37
      i
      38
      __currentLoopData
      39
      loop
      40
      item
    uri
    GET {post}
    middleware
    web, checkdate
    as
    post.show
    controller
    App\Http\Controllers\Frontend\json_data\PostController@show
    namespace
    where
    file
    app/Http/Controllers/Frontend/json_data/PostController.php:18-166
    7 statements were executed357ms
    • select * from `posts` where `published_at` <= '2025-06-19 23:27:14' and `slug` = 'what-is-sort-key-in-dynamodb' and `posts`.`deleted_at` is null limit 1
      2.25ms/app/Providers/RouteServiceProvider.php:54receivinghelpdeskask
      Metadata
      Bindings
      • 0. 2025-06-19 23:27:14
      • 1. what-is-sort-key-in-dynamodb
      Backtrace
      • 15. /app/Providers/RouteServiceProvider.php:54
      • 18. /vendor/laravel/framework/src/Illuminate/Routing/Router.php:842
      • 19. Route binding:39
      • 20. /vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:167
      • 21. /vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:78
    • select * from `json_post_contents` where `json_post_contents`.`post_id` = 171017 and `json_post_contents`.`post_id` is not null and `rewrite_id` = 0
      12.95msmiddleware::checkdate:30receivinghelpdeskask
      Metadata
      Bindings
      • 0. 171017
      • 1. 0
      Backtrace
      • 19. middleware::checkdate:30
      • 20. /vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:167
      • 21. /vendor/laravel/jetstream/src/Http/Middleware/ShareInertiaData.php:61
      • 22. /vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:167
      • 23. /vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:50
    • select * from `nova_menu_menus` where `slug` = 'header' limit 1
      580μs/vendor/outl1ne/nova-menu-builder/src/helpers.php:32receivinghelpdeskask
      Metadata
      Bindings
      • 0. header
      Backtrace
      • 15. /vendor/outl1ne/nova-menu-builder/src/helpers.php:32
      • 17. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
      • 18. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:45
      • 19. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:261
      • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
    • select * from `nova_menu_menu_items` where `nova_menu_menu_items`.`menu_id` = 1 and `nova_menu_menu_items`.`menu_id` is not null and `parent_id` is null order by `parent_id` asc, `order` asc, `name` asc
      380μs/vendor/outl1ne/nova-menu-builder/src/Models/Menu.php:35receivinghelpdeskask
      Metadata
      Bindings
      • 0. 1
      Backtrace
      • 19. /vendor/outl1ne/nova-menu-builder/src/Models/Menu.php:35
      • 20. /vendor/outl1ne/nova-menu-builder/src/helpers.php:33
      • 22. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
      • 23. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:45
      • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:261
    • select * from `nova_menu_menu_items` where `nova_menu_menu_items`.`parent_id` in (1) order by `order` asc
      260μs/vendor/outl1ne/nova-menu-builder/src/Models/Menu.php:35receivinghelpdeskask
      Metadata
      Backtrace
      • 24. /vendor/outl1ne/nova-menu-builder/src/Models/Menu.php:35
      • 25. /vendor/outl1ne/nova-menu-builder/src/helpers.php:33
      • 27. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
      • 28. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:45
      • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:261
    • select `id`, `post_title`, `slug` from `posts` where `status` = 'publish' and `posts`.`deleted_at` is null order by RAND() limit 10
      340ms/app/View/Composers/SidebarView.php:22receivinghelpdeskask
      Metadata
      Bindings
      • 0. publish
      Backtrace
      • 14. /app/View/Composers/SidebarView.php:22
      • 15. /app/View/Composers/SidebarView.php:12
      • 16. /vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesEvents.php:124
      • 17. /vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesEvents.php:162
      • 20. /vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesEvents.php:177
    • select * from `fake_users` where `fake_users`.`id` = 20739 limit 1
      730μsview::2dd102cf0462e89a4d4d8bc77355d767652bf9aa:15receivinghelpdeskask
      Metadata
      Bindings
      • 0. 20739
      Backtrace
      • 21. view::2dd102cf0462e89a4d4d8bc77355d767652bf9aa:15
      • 23. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:108
      • 24. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
      • 25. /vendor/livewire/livewire/src/ComponentConcerns/RendersLivewireComponents.php:69
      • 26. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:61
    App\Models\FakeUser
    1
    Outl1ne\MenuBuilder\Models\MenuItem
    1
    Outl1ne\MenuBuilder\Models\Menu
    1
    App\Models\JsonPostContent
    1
    App\Models\Post
    11
        _token
        1mORDeCJNLapm98vMoirICFDSGCOpjMePyXsLoh2
        _previous
        array:1 [ "url" => "https://receivinghelpdesk.com/ask/what-is-sort-key-in-dynamodb" ]
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /what-is-sort-key-in-dynamodb
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:25 [ "cookie" => array:1 [ 0 => "_pk_id.64.7c30=b0d982008cd5fae6.1750355824.; _pk_ses.64.7c30=1; XSRF-TOKEN=eyJpdiI6IjVManc2Um1GR1lDemZ5TWZhUVkxaVE9PSIsInZhbHVlIjoiVk1MUWkxRm9rcldWQWV6YStHSk1qeS9BMlIvMy9CeXBoVWZFWTFaY1Q3bHpxNFh4M1FyTlNUNkhSZ0dLbWJpVndiRXErOVZ0cy9wT3kxcEpydlUvY1NuVnlqZkM4TzlpRWZxb0gveWE1Z0pqVmQ5L29rVWRHVXpYa3ZNemdOc28iLCJtYWMiOiJlZTNiZGU3YTQ2MDZiMTFkYzc0ZTI5ODFjNjYxYWFiMjU2OTkyNjJkN2Y5YWE0ZjVlODQ5MWIwMWQzYzNmMzYwIiwidGFnIjoiIn0%3D; askhelpdesk_session=eyJpdiI6IjRYeFB5S3NMdnNPNW92bUp3ZTBMdWc9PSIsInZhbHVlIjoiZHdBemJtMXZRUEpHYWI4M2hsRk5HYzA1aVZmb1llR0t3blpaWnNrVkk0NlFPK0ZHSlVTc09JWTRTS3NybUYvWDZyTWV4VEJUMzlrT2g4MVhhbXFWOXZBaXBqaDhuRGx3M2JRYm40MURpZkJZRlBNbTFMQnFvZSt2bFNWQWRMeHMiLCJtYWMiOiI5ZDYxZTdmZTVjOTY0OWMzMWIyNzI1NmUzMTEyYWY4NTc4M2NhYjZlZWRmMjA3NTA5N2Q1ZTY4MjA5YTVjMzg3IiwidGFnIjoiIn0%3D_pk_id.64.7c30=b0d982008cd5fae6.1750355824.; _pk_ses.64.7c30=1; XSRF-TOKEN=eyJpdiI6IjVManc2Um1GR1lDemZ5TWZhUVkxaVE9PSIsInZhbHVlIjoiVk1MUWkxRm9rcldWQWV6YStHSk1qe" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "216.73.216.31" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "cf-ray" => array:1 [ 0 => "9524e85b0e0b2321-ORD" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "connection" => array:1 [ 0 => "close" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.31, 172.71.255.84" ] "x-server-addr" => array:1 [ 0 => "154.12.239.204" ] "host" => array:1 [ 0 => "receivinghelpdesk.com" ] ]
        request_server
        0 of 0
        array:56 [ "USER" => "runcloud" "HOME" => "/home/runcloud" "SCRIPT_NAME" => "/ask/index.php" "REQUEST_URI" => "/ask/what-is-sort-key-in-dynamodb" "QUERY_STRING" => "" "REQUEST_METHOD" => "GET" "SERVER_PROTOCOL" => "HTTP/1.0" "GATEWAY_INTERFACE" => "CGI/1.1" "REDIRECT_URL" => "/ask/what-is-sort-key-in-dynamodb" "REMOTE_PORT" => "55860" "SCRIPT_FILENAME" => "/home/runcloud/webapps/ReceivingHelpDesk/ask/index.php" "SERVER_ADMIN" => "you@example.com" "CONTEXT_DOCUMENT_ROOT" => "/home/runcloud/webapps/ReceivingHelpDesk/" "CONTEXT_PREFIX" => "" "REQUEST_SCHEME" => "http" "DOCUMENT_ROOT" => "/home/runcloud/webapps/ReceivingHelpDesk/" "REMOTE_ADDR" => "172.71.255.84" "SERVER_PORT" => "80" "SERVER_ADDR" => "127.0.0.1" "SERVER_NAME" => "receivinghelpdesk.com" "SERVER_SOFTWARE" => "Apache/2.4.63 (Unix) OpenSSL/1.1.1f" "SERVER_SIGNATURE" => "" "LD_LIBRARY_PATH" => "/RunCloud/Packages/apache2-rc/lib" "PATH" => "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" "HTTP_COOKIE" => "_pk_id.64.7c30=b0d982008cd5fae6.1750355824.; _pk_ses.64.7c30=1; XSRF-TOKEN=eyJpdiI6IjVManc2Um1GR1lDemZ5TWZhUVkxaVE9PSIsInZhbHVlIjoiVk1MUWkxRm9rcldWQWV6YStHSk1qeS9BMlIvMy9CeXBoVWZFWTFaY1Q3bHpxNFh4M1FyTlNUNkhSZ0dLbWJpVndiRXErOVZ0cy9wT3kxcEpydlUvY1NuVnlqZkM4TzlpRWZxb0gveWE1Z0pqVmQ5L29rVWRHVXpYa3ZNemdOc28iLCJtYWMiOiJlZTNiZGU3YTQ2MDZiMTFkYzc0ZTI5ODFjNjYxYWFiMjU2OTkyNjJkN2Y5YWE0ZjVlODQ5MWIwMWQzYzNmMzYwIiwidGFnIjoiIn0%3D; askhelpdesk_session=eyJpdiI6IjRYeFB5S3NMdnNPNW92bUp3ZTBMdWc9PSIsInZhbHVlIjoiZHdBemJtMXZRUEpHYWI4M2hsRk5HYzA1aVZmb1llR0t3blpaWnNrVkk0NlFPK0ZHSlVTc09JWTRTS3NybUYvWDZyTWV4VEJUMzlrT2g4MVhhbXFWOXZBaXBqaDhuRGx3M2JRYm40MURpZkJZRlBNbTFMQnFvZSt2bFNWQWRMeHMiLCJtYWMiOiI5ZDYxZTdmZTVjOTY0OWMzMWIyNzI1NmUzMTEyYWY4NTc4M2NhYjZlZWRmMjA3NTA5N2Q1ZTY4MjA5YTVjMzg3IiwidGFnIjoiIn0%3D_pk_id.64.7c30=b0d982008cd5fae6.1750355824.; _pk_ses.64.7c30=1; XSRF-TOKEN=eyJpdiI6IjVManc2Um1GR1lDemZ5TWZhUVkxaVE9PSIsInZhbHVlIjoiVk1MUWkxRm9rcldWQWV6YStHSk1qe" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "216.73.216.31" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_CF_RAY" => "9524e85b0e0b2321-ORD" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_CONNECTION" => "close" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.31, 172.71.255.84" "HTTP_X_SERVER_ADDR" => "154.12.239.204" "HTTP_HOST" => "receivinghelpdesk.com" "HTTPS" => "on" "REDIRECT_STATUS" => "200" "REDIRECT_HTTPS" => "on" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/ask/index.php" "REQUEST_TIME_FLOAT" => 1750355834.1032 "REQUEST_TIME" => 1750355834 ]
        request_cookies
        0 of 0
        array:4 [ "_pk_id_64_7c30" => null "_pk_ses_64_7c30" => null "XSRF-TOKEN" => "1mORDeCJNLapm98vMoirICFDSGCOpjMePyXsLoh2" "askhelpdesk_session" => "XMV4FFr5Ez0jViAUWWIfdXXj7T3Dwxcpp2qE16uG" ]
        response_headers
        0 of 0
        array:7 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "private, must-revalidate" ] "date" => array:1 [ 0 => "Thu, 19 Jun 2025 17:57:14 GMT" ] "pragma" => array:1 [ 0 => "no-cache" ] "expires" => array:1 [ 0 => -1 ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImJkRW9XLzU2dG1ta1AzRUFka1hiWmc9PSIsInZhbHVlIjoiVE84NXVQVFdHakFmeHBHbHlMZGhXK0RaR1ZNa0NyNWxKczJ1ZlJwNU0rVGUrZVFWRXFTamxGbVVIUnAvazBKcHhXTVhQU0VVN014M28rMUJMR1ZCZkRUTmF2M1R6Q2ZrY3F4OENUb0dEYncvSlJzNlk5cUh1NDZUWGREUi9MRlEiLCJtYWMiOiIwZTI5M2JiOTI0M2M1OTQ5ZGEwNDhkMzI0Y2Q2YTVlNmYyZGMzZGI4NmM4OWJmN2ZlMjI2ZThlYzZjODU2OGRkIiwidGFnIjoiIn0%3D; expires=Thu, 19-Jun-2025 19:57:14 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6ImJkRW9XLzU2dG1ta1AzRUFka1hiWmc9PSIsInZhbHVlIjoiVE84NXVQVFdHakFmeHBHbHlMZGhXK0RaR1ZNa0NyNWxKczJ1ZlJwNU0rVGUrZVFWRXFTamxGbVVIUnAvazBKcHhXTVhQU" 1 => "askhelpdesk_session=eyJpdiI6Im5zTFQwTjVBekVhQVgvZXdFTWtQVGc9PSIsInZhbHVlIjoiaXZIQ2RYNTZVUXRGNk5FUWVQRU9MaVJva2VabjN6TDY1NXE4eEZ1bFNtZ3NHOWJCUXZ2bzdtYnB4dUk0NHpRTkdhOXdTSmtCUVFBTzUva1p0cVdzMkhULzJ3dm5ZU2tIZ0V4SFMrTDVtNlJZT2s4ejFaL2Q0SHJKdEVWTXhDVkEiLCJtYWMiOiJjZTgyNGRlZmJiODYxOTM4ODZjMTIxYWNlMzQxMmNjNzU3NjA1ZDk2YmFiNDI4YjkxZDE5ZmEwZGFkNWNiMTFlIiwidGFnIjoiIn0%3D; expires=Thu, 19-Jun-2025 19:57:14 GMT; Max-Age=7200; path=/; httponly; samesite=laxaskhelpdesk_session=eyJpdiI6Im5zTFQwTjVBekVhQVgvZXdFTWtQVGc9PSIsInZhbHVlIjoiaXZIQ2RYNTZVUXRGNk5FUWVQRU9MaVJva2VabjN6TDY1NXE4eEZ1bFNtZ3NHOWJCUXZ2bzdtYnB4dUk0NHpR" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImJkRW9XLzU2dG1ta1AzRUFka1hiWmc9PSIsInZhbHVlIjoiVE84NXVQVFdHakFmeHBHbHlMZGhXK0RaR1ZNa0NyNWxKczJ1ZlJwNU0rVGUrZVFWRXFTamxGbVVIUnAvazBKcHhXTVhQU0VVN014M28rMUJMR1ZCZkRUTmF2M1R6Q2ZrY3F4OENUb0dEYncvSlJzNlk5cUh1NDZUWGREUi9MRlEiLCJtYWMiOiIwZTI5M2JiOTI0M2M1OTQ5ZGEwNDhkMzI0Y2Q2YTVlNmYyZGMzZGI4NmM4OWJmN2ZlMjI2ZThlYzZjODU2OGRkIiwidGFnIjoiIn0%3D; expires=Thu, 19-Jun-2025 19:57:14 GMT; path=/XSRF-TOKEN=eyJpdiI6ImJkRW9XLzU2dG1ta1AzRUFka1hiWmc9PSIsInZhbHVlIjoiVE84NXVQVFdHakFmeHBHbHlMZGhXK0RaR1ZNa0NyNWxKczJ1ZlJwNU0rVGUrZVFWRXFTamxGbVVIUnAvazBKcHhXTVhQU" 1 => "askhelpdesk_session=eyJpdiI6Im5zTFQwTjVBekVhQVgvZXdFTWtQVGc9PSIsInZhbHVlIjoiaXZIQ2RYNTZVUXRGNk5FUWVQRU9MaVJva2VabjN6TDY1NXE4eEZ1bFNtZ3NHOWJCUXZ2bzdtYnB4dUk0NHpRTkdhOXdTSmtCUVFBTzUva1p0cVdzMkhULzJ3dm5ZU2tIZ0V4SFMrTDVtNlJZT2s4ejFaL2Q0SHJKdEVWTXhDVkEiLCJtYWMiOiJjZTgyNGRlZmJiODYxOTM4ODZjMTIxYWNlMzQxMmNjNzU3NjA1ZDk2YmFiNDI4YjkxZDE5ZmEwZGFkNWNiMTFlIiwidGFnIjoiIn0%3D; expires=Thu, 19-Jun-2025 19:57:14 GMT; path=/; httponlyaskhelpdesk_session=eyJpdiI6Im5zTFQwTjVBekVhQVgvZXdFTWtQVGc9PSIsInZhbHVlIjoiaXZIQ2RYNTZVUXRGNk5FUWVQRU9MaVJva2VabjN6TDY1NXE4eEZ1bFNtZ3NHOWJCUXZ2bzdtYnB4dUk0NHpR" ] ]
        session_attributes
        0 of 0
        array:4 [ "_token" => "1mORDeCJNLapm98vMoirICFDSGCOpjMePyXsLoh2" "_previous" => array:1 [ "url" => "https://receivinghelpdesk.com/ask/what-is-sort-key-in-dynamodb" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]