Uploaded image for project: 'Node.js Driver'
  1. Node.js Driver
  2. NODE-5455

Benchmark and use `mongocrypt_binary_t` definition to improve performance of In-Use Encryption

    • 5
    • Hide

      DRIVERS-2581:
      Goal: Improve performance of In-Use Encryption for the workload identified in HELP-27047.

      Proposed changes for drivers:

      Refer to the changes made for the Java driver bindings:

      The benchmark may be useful for testing future performance improvements (DRIVERS-2718).

      Proposed changes may not benefit languages with no extra cost for calling into a C library: (C, C++, PHP via C driver) or drivers that are not using the crypto callbacks (Go).

      Show
      DRIVERS-2581 : Goal: Improve performance of In-Use Encryption for the workload identified in HELP-27047. Proposed changes for drivers: Benchmark throughput of decrypting documents with many (e.g. 1500) encrypted fields. The benchmark is specified here: https://github.com/mongodb/specifications/commit/db3114e957f7c0976a1af09882dbb46cb4a70049 Attempt to use fields of `mongocrypt_binary_t` to avoid calls to `mongocrypt_binary_data` and `mongocrypt_binary_len`. The fields are exported as of MONGOCRYPT-589 . Expect an improvement in throughput. Refer to the changes made for the Java driver bindings: Benchmark added in: https://github.com/mongodb/libmongocrypt/pull/690 Use of `mongocrypt_binary_t` fields done in: https://github.com/mongodb/libmongocrypt/pull/693 The benchmark may be useful for testing future performance improvements ( DRIVERS-2718 ). Proposed changes may not benefit languages with no extra cost for calling into a C library: (C, C++, PHP via C driver) or drivers that are not using the crypto callbacks (Go).
    • Not Needed
    • Hide

      Create a copy of the Kickoff Template with the issue key (NODE-XXX) in the filename and share a link to the new doc via this field.

      Show
      Create a copy of the Kickoff Template with the issue key (NODE-XXX) in the filename and share a link to the new doc via this field.
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      This ticket was split from DRIVERS-2581, please see that ticket for a detailed description.

        1. profile.tgz
          3.02 MB
          Neal Beeken

            Assignee:
            neal.beeken@mongodb.com Neal Beeken
            Reporter:
            dbeng-pm-bot PM Bot
            Warren James
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: