Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use the Summary API to improve the schema synchronization performance #80

Merged
merged 4 commits into from
May 8, 2023

Conversation

nestoralvarezd
Copy link
Contributor

Summary API integration

The main aim of this PR is to reduce the synchronization time of the schema by using Neptune Summary API if it is available.

Description of changes:

  • fetchSchema process tries to fetch some data, using the Summary API, related to the database structure:
    • vertices types (classes),
    • edges types (predicates),
    • total number of vertices (total number of subjects),
    • and total number of edges (total number of quads)
  • If the above data is available, use them to fetch the vertices and edges attributes. By using the Summary API, the time of inferring the schema will be decreased. However, it does not return how many vertices or edges we have by type. So we speed up the process but lose the counts by type.
  • If the Summary API is not available, the fetchSchema fallbacks to the previous process we had to infer the schema.

Now, if the fetchSchema process uses the Summary API, we will not have counts by type. So a new method has been added to the AbstractConnector contract, and its the implementations, in order to fetch the total number of nodes (subjects). It is the method called fetchVertexCountsByType and it is called when a user visits the Data Explorer section.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@gopuneet gopuneet self-requested a review March 21, 2023 17:22
Comment on lines 42 to 77
app.use("/explorer", express.static(path.join(__dirname, "../graph-explorer/dist")));
app.use(
"/explorer",
express.static(path.join(__dirname, "../graph-explorer/dist"))
);

const delay = (ms) => new Promise((resolve) => setTimeout(() => resolve(), ms));
const delay = (ms) =>
new Promise((resolve) => setTimeout(() => resolve(), ms));

async function retryFetch (
async function retryFetch(
url,
retries = 1,
retryDelay = 10000,
req,
language
) {

let reqObjects;

if (creds === undefined) {
console.error("Credentials undefined. Trying refresh.");
creds = await getCredentials();
if (creds === undefined) {
throw new Error("Credentials undefined after refresh. Check that you have proper access and that the credentials should work.")
throw new Error(
"Credentials undefined after refresh. Check that you have proper access and that the credentials should work."
);
}
}
reqObjects = await getRequestObjects(req.headers["graph-db-connection-url"], req.headers["aws-neptune-region"]);
reqObjects = await getRequestObjects(
req.headers["graph-db-connection-url"],
req.headers["aws-neptune-region"]
);
await getAuthHeaders(language, req, reqObjects[0], reqObjects[2]);

return new Promise((resolve, reject) => {

const wrapper = (n) => {
fetch(url, { headers: req.headers, })
.then(async res => {

fetch(url, { headers: req.headers })
.then(async (res) => {
if (!res.ok) {
console.log("Response not ok");
const error = res.status
console.log("Response not ok");
const error = res.status;
return Promise.reject(error);
} else {
console.log("Response ok");
console.log("Response ok");

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I recommend having separate PR/commits for styling changes and business logic changes in the future since the one for styling/formatting changes can be quickly reviewed allowing reviewer to focus on business logic changes only.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was the pre-commit process configuration. It ran lint and prettier automatically on every modified file. It prevents wrong styling issues, so I need to figure out why in the previous update it didn't update the styling.

However, I could remove all those styling changes manually and prevent the pre-commit hook for this time.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nestoralvarezd can you please make an update to remove styling changes in this PR? Once approved, we can add the styling changes.


console.log(response);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The response from the graph summary endpoint can be pretty big for certain types of graphs.
Could there be any issues with logging the entire response to console in those cases?

Same question for L233 (log statement in rdf summary endpoint)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nestoralvarezd to comment

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can remove this kind of large logging

@gopuneet
Copy link

Based on a quick look, it seems like we are fetching the graph summary by calling the respective property graph and rdf graph endpoints but there are no calls to refresh statistics. Since the graph summary is computed using DFE statistics, how would the data shown on graph explorer (fetched using summary API) be updated?
(when autocompute is on, the statistics only refresh when either more than 10% of data in the graph has changed or when the last statistics computation was more than 10 days old)

Pardon me if I've missed something and this is already handled.


This might have already been discussed but just a thought: (cc. @joywa )
Maybe we could have a button on the UI or periodic background thread that invokes the stats refresh, then polls the stats status until the new statisticsId reflects on stats status (indicates that the latest stats computation finished) and then updates the graph information using graph summary API.

@gopuneet
Copy link

gopuneet commented Apr 4, 2023

Please ensure you test this change against a Neptune cluster on engine version <1.2.1.0 to ensure that it still works for older Neptune engine versions where graph summary API is not present using fallback queries.

@nestoralvarezd
Copy link
Contributor Author

@gopuneet

Based on a quick look, it seems like we are fetching the graph summary by calling the respective property graph and rdf graph endpoints but there are no calls to refresh statistics. Since the graph summary is computed using DFE statistics, how would the data shown on graph explorer (fetched using summary API) be updated?

Now, we don't have any trigger in the UI to refresh the statistics. When user clicks on "sync schema", the client will fetch the latest statistics but it is not triggering any refresh operation. I'm not sure where we should add the option to refresh the statistics because the client makes that transparent to the user. Where do you think, @joywa, is a good place to add the requested trigger?

Please ensure you test this change against a Neptune cluster on engine version <1.2.1.0 to ensure that it still works for older Neptune engine versions where graph summary API is not present using fallback queries.

Sure, we should make some testing on version with and without support for Summary API. However, the process has a fallback that on any unexpected error by calling the summary API, it will fallback to the "standard" inference.

@joywa
Copy link
Contributor

joywa commented Apr 14, 2023

@gopuneet @nestoralvarezd we decided to not use the refresh statistics to trigger updates.

@nestoralvarezd please let us know when testing is complete/if any changes are required.

@joywa joywa linked an issue Apr 17, 2023 that may be closed by this pull request
@nestoralvarezd nestoralvarezd force-pushed the feature/summary-api-schema-sycn branch 2 times, most recently from 85ef10b to 82a6a19 Compare April 20, 2023 13:39
@nestoralvarezd nestoralvarezd force-pushed the feature/summary-api-schema-sycn branch from 82a6a19 to 651ebe0 Compare April 20, 2023 13:59
@nalvarezdiaz
Copy link

I've removed the most of the styling issue from this PR and I've checked that the summary API is working. Neptune instances that do not have the summary API try to use it but then fallback to the normal inference process.

gopuneet
gopuneet previously approved these changes Apr 27, 2023
@joywa joywa merged commit 9702fe0 into aws:main May 8, 2023
Newber0 added a commit to Apotheca-AI/graph-explorer-apotheca that referenced this pull request Jun 2, 2023
* new file:   package-lock.json
	modified:   packages/graph-explorer/src/connector/gremlin/mappers/mapApiEdge.ts
	modified:   packages/graph-explorer/src/connector/gremlin/mappers/mapApiVertex.ts
	new file:   packages/graph-explorer/src/connector/gremlin/mappers/toStringId.ts
	modified:   packages/graph-explorer/src/connector/gremlin/queries/fetchNeighbors.ts
	modified:   packages/graph-explorer/src/connector/gremlin/types.ts
	modified:   packages/graph-explorer/src/core/StateProvider/nodes.ts
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTab.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.styles.ts
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabFilters.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabFilters.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/index.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts
	renamed:    packages/graph-explorer/src/modules/OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx
	renamed:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts
	renamed:    packages/graph-explorer/src/modules/OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/index.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/PatientSearch.styles.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/PatientSearch.tsx -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx
	renamed:    packages/graph-explorer/src/modules/PatientSearch/toAdvancedList.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/toAdvancedList.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/usePatientSearch.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/usePatientSearch.ts
	new file:   packages/graph-explorer/src/modules/AP-PatientTab/FullExpandCheckbox.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTab.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.styles.ts
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabContent.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabFilters.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabFilters.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/index.ts -> packages/graph-explorer/src/modules/AP-PatientTab/index.ts
	modified:   packages/graph-explorer/src/modules/EntityDetails/EntityDetails.tsx
	deleted:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.tsx
	deleted:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabFilters.tsx
	modified:   packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx

* Use the Summary API to improve the schema synchronization performance (aws#80)

* Use Summary API to sync the schema

* Update counts badges in ConnectionData

* Remove individual counts from ConnectionData

* Remove individual counts from ConnectionData

* Reduce size of Docker image aws#103 (aws#104)

* Reduce size of Docker image aws#103

* add a comment about changes made aws#103

* (bugfix/issue-55) Support non-string based ids for gremlin connector (aws#60)

* (bugfix/issue-55) Support non-string based ids for gremlin connector

* (bugfix/issue-55) Support non-string based ids for gremlin connector

* (bugfix/issue-55) Update numeric ids neighbors queries

* Fix disappearing edge on JanusGraph

* Support JanusGraph Gremlin ids

* Fix collapsing edges in non-Chromium browsers

* Fix runLayout twice when nodes changes

* Restore locking nodes on run layout

---------

Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>

* release-1.2.0 (aws#115)

Co-authored-by: Michael Chin <[email protected]>

* modified:   package-lock.json
	modified:   package.json
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.model.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.styles.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/index.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/ListBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.styles.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectListBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectPopover.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/utils/getThemeWithDefaultValues.ts
	new file:   packages/graph-explorer/src/components/icons/OntologyCreatorIcon.tsx
	modified:   packages/graph-explorer/src/components/icons/index.ts
	modified:   packages/graph-explorer/src/components/index.ts
	modified:   packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/InputForm.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTab.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/toAdvancedList.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyListTypes.ts
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTab.tsx
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.json
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.ts
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/toAdvancedList.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts
	modified:   packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts
	modified:   packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx
	modified:   packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx
	modified:   packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx

* modified:   packages/graph-explorer/src/core/ConfigurationProvider/types.ts
	modified:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx
	modified:   packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts
	modified:   packages/graph-explorer/src/modules/AvailableConnections/AvailableConnections.tsx
	modified:   packages/graph-explorer/src/utils/isValidConfigurationFile.ts
	modified:   packages/graph-explorer/src/utils/saveConfigurationToFile.ts

---------

Co-authored-by: nestoralvarezd <[email protected]>
Co-authored-by: Kelvin Lawrence <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Michael Chin <[email protected]>
Co-authored-by: Michael Chin <[email protected]>
Newber0 added a commit to Apotheca-AI/graph-explorer-apotheca that referenced this pull request Jun 2, 2023
* new file:   package-lock.json
	modified:   packages/graph-explorer/src/connector/gremlin/mappers/mapApiEdge.ts
	modified:   packages/graph-explorer/src/connector/gremlin/mappers/mapApiVertex.ts
	new file:   packages/graph-explorer/src/connector/gremlin/mappers/toStringId.ts
	modified:   packages/graph-explorer/src/connector/gremlin/queries/fetchNeighbors.ts
	modified:   packages/graph-explorer/src/connector/gremlin/types.ts
	modified:   packages/graph-explorer/src/core/StateProvider/nodes.ts
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTab.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.styles.ts
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabFilters.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabFilters.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/index.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts
	renamed:    packages/graph-explorer/src/modules/OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx
	renamed:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts
	renamed:    packages/graph-explorer/src/modules/OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/index.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/PatientSearch.styles.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/PatientSearch.tsx -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx
	renamed:    packages/graph-explorer/src/modules/PatientSearch/toAdvancedList.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/toAdvancedList.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/usePatientSearch.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/usePatientSearch.ts
	new file:   packages/graph-explorer/src/modules/AP-PatientTab/FullExpandCheckbox.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTab.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.styles.ts
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabContent.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabFilters.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabFilters.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/index.ts -> packages/graph-explorer/src/modules/AP-PatientTab/index.ts
	modified:   packages/graph-explorer/src/modules/EntityDetails/EntityDetails.tsx
	deleted:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.tsx
	deleted:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabFilters.tsx
	modified:   packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx

* Use the Summary API to improve the schema synchronization performance (aws#80)

* Use Summary API to sync the schema

* Update counts badges in ConnectionData

* Remove individual counts from ConnectionData

* Remove individual counts from ConnectionData

* Reduce size of Docker image aws#103 (aws#104)

* Reduce size of Docker image aws#103

* add a comment about changes made aws#103

* (bugfix/issue-55) Support non-string based ids for gremlin connector (aws#60)

* (bugfix/issue-55) Support non-string based ids for gremlin connector

* (bugfix/issue-55) Support non-string based ids for gremlin connector

* (bugfix/issue-55) Update numeric ids neighbors queries

* Fix disappearing edge on JanusGraph

* Support JanusGraph Gremlin ids

* Fix collapsing edges in non-Chromium browsers

* Fix runLayout twice when nodes changes

* Restore locking nodes on run layout

---------

Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>

* release-1.2.0 (aws#115)

Co-authored-by: Michael Chin <[email protected]>

* modified:   package-lock.json
	modified:   package.json
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.model.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.styles.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/index.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/ListBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.styles.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectListBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectPopover.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/utils/getThemeWithDefaultValues.ts
	new file:   packages/graph-explorer/src/components/icons/OntologyCreatorIcon.tsx
	modified:   packages/graph-explorer/src/components/icons/index.ts
	modified:   packages/graph-explorer/src/components/index.ts
	modified:   packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/InputForm.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTab.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/toAdvancedList.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyListTypes.ts
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTab.tsx
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.json
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.ts
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/toAdvancedList.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts
	modified:   packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts
	modified:   packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx
	modified:   packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx
	modified:   packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx

* modified:   packages/graph-explorer/src/core/ConfigurationProvider/types.ts
	modified:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx
	modified:   packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts
	modified:   packages/graph-explorer/src/modules/AvailableConnections/AvailableConnections.tsx
	modified:   packages/graph-explorer/src/utils/isValidConfigurationFile.ts
	modified:   packages/graph-explorer/src/utils/saveConfigurationToFile.ts

---------

Co-authored-by: nestoralvarezd <[email protected]>
Co-authored-by: Kelvin Lawrence <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Michael Chin <[email protected]>
Co-authored-by: Michael Chin <[email protected]>
Newber0 added a commit to Apotheca-AI/graph-explorer-apotheca that referenced this pull request Jun 2, 2023
* new file:   package-lock.json
	modified:   packages/graph-explorer/src/connector/gremlin/mappers/mapApiEdge.ts
	modified:   packages/graph-explorer/src/connector/gremlin/mappers/mapApiVertex.ts
	new file:   packages/graph-explorer/src/connector/gremlin/mappers/toStringId.ts
	modified:   packages/graph-explorer/src/connector/gremlin/queries/fetchNeighbors.ts
	modified:   packages/graph-explorer/src/connector/gremlin/types.ts
	modified:   packages/graph-explorer/src/core/StateProvider/nodes.ts
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTab.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.styles.ts
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabContent.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabContent.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/HealthgraphTabFilters.tsx -> packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTabFilters.tsx
	renamed:    packages/graph-explorer/src/modules/HealthgraphTab/index.ts -> packages/graph-explorer/src/modules/AP-HealthgraphTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts
	renamed:    packages/graph-explorer/src/modules/OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx
	renamed:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts
	renamed:    packages/graph-explorer/src/modules/OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyTab/index.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/PatientSearch.styles.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/PatientSearch.tsx -> packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx
	renamed:    packages/graph-explorer/src/modules/PatientSearch/toAdvancedList.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/toAdvancedList.ts
	renamed:    packages/graph-explorer/src/modules/PatientSearch/usePatientSearch.ts -> packages/graph-explorer/src/modules/AP-PatientSearch/usePatientSearch.ts
	new file:   packages/graph-explorer/src/modules/AP-PatientTab/FullExpandCheckbox.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTab.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.styles.ts
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabContent.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabContent.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/PatientTabFilters.tsx -> packages/graph-explorer/src/modules/AP-PatientTab/PatientTabFilters.tsx
	renamed:    packages/graph-explorer/src/modules/PatientTab/index.ts -> packages/graph-explorer/src/modules/AP-PatientTab/index.ts
	modified:   packages/graph-explorer/src/modules/EntityDetails/EntityDetails.tsx
	deleted:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabContent.tsx
	deleted:    packages/graph-explorer/src/modules/OntologyTab/OntologyTabFilters.tsx
	modified:   packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx

* Use the Summary API to improve the schema synchronization performance (aws#80)

* Use Summary API to sync the schema

* Update counts badges in ConnectionData

* Remove individual counts from ConnectionData

* Remove individual counts from ConnectionData

* Reduce size of Docker image aws#103 (aws#104)

* Reduce size of Docker image aws#103

* add a comment about changes made aws#103

* (bugfix/issue-55) Support non-string based ids for gremlin connector (aws#60)

* (bugfix/issue-55) Support non-string based ids for gremlin connector

* (bugfix/issue-55) Support non-string based ids for gremlin connector

* (bugfix/issue-55) Update numeric ids neighbors queries

* Fix disappearing edge on JanusGraph

* Support JanusGraph Gremlin ids

* Fix collapsing edges in non-Chromium browsers

* Fix runLayout twice when nodes changes

* Restore locking nodes on run layout

---------

Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>

* release-1.2.0 (aws#115)

Co-authored-by: Michael Chin <[email protected]>

* modified:   package-lock.json
	modified:   package.json
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.model.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.styles.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/OntologySelect.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/index.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/ListBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.styles.ts
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectHeader/SelectHeader.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectListBox.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/internalComponents/SelectPopover.tsx
	new file:   packages/graph-explorer/src/components/OntologySelect/utils/getThemeWithDefaultValues.ts
	new file:   packages/graph-explorer/src/components/icons/OntologyCreatorIcon.tsx
	modified:   packages/graph-explorer/src/components/icons/index.ts
	modified:   packages/graph-explorer/src/components/index.ts
	modified:   packages/graph-explorer/src/modules/AP-HealthgraphTab/HealthgraphTab.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/InputForm.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTab.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/OntologyCreatorTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyCreatorTab/toAdvancedList.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyListTypes.ts
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTab.tsx -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTab.tsx
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.styles.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/OntologyTabContent.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.json
	new file:   packages/graph-explorer/src/modules/AP-OntologyListTab/StoredOntologyList.ts
	renamed:    packages/graph-explorer/src/modules/AP-OntologyTab/index.ts -> packages/graph-explorer/src/modules/AP-OntologyListTab/index.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.styles.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/toAdvancedList.ts
	new file:   packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyListTypes.ts
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/OntologyTabContent.tsx
	deleted:    packages/graph-explorer/src/modules/AP-OntologyTab/StoredOntologyList.ts
	modified:   packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.styles.ts
	modified:   packages/graph-explorer/src/modules/AP-PatientSearch/PatientSearch.tsx
	modified:   packages/graph-explorer/src/modules/AP-PatientTab/PatientTab.tsx
	modified:   packages/graph-explorer/src/workspaces/GraphExplorer/GraphExplorer.tsx

* modified:   packages/graph-explorer/src/core/ConfigurationProvider/types.ts
	modified:   packages/graph-explorer/src/modules/AP-OntologySearch/OntologySearch.tsx
	modified:   packages/graph-explorer/src/modules/AP-OntologySearch/useOntologySearch.ts
	modified:   packages/graph-explorer/src/modules/AvailableConnections/AvailableConnections.tsx
	modified:   packages/graph-explorer/src/utils/isValidConfigurationFile.ts
	modified:   packages/graph-explorer/src/utils/saveConfigurationToFile.ts

* modified:   packages/graph-explorer/src/connector/gremlin/mappers/mapApiVertex.ts
	modified:   packages/graph-explorer/src/connector/gremlin/mappers/toStringId.ts
	modified:   packages/graph-explorer/src/connector/gremlin/types.ts

---------

Co-authored-by: nestoralvarezd <[email protected]>
Co-authored-by: Kelvin Lawrence <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Jackson Millard <[email protected]>
Co-authored-by: Michael Chin <[email protected]>
Co-authored-by: Michael Chin <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Status: ✅ Done
Development

Successfully merging this pull request may close these issues.

[Feature Request] Integration with Neptune graph summary API
5 participants