<mxfile host="Electron" version="29.6.1">
  <diagram name="Page-1" id="diagram-neptune-analytics">
    <mxGraphModel dx="1200" dy="800" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="0" pageScale="1" pageWidth="1400" pageHeight="820" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="title-text" parent="1" style="text;html=1;align=left;verticalAlign=top;fontSize=30;fontStyle=1;fontFamily=Helvetica;fontColor=light-dark(#232F3E,#FFFFFF);" value="Neptune Analytics Fraud Enrichment Path" vertex="1">
          <mxGeometry x="40" y="30" width="900" height="40" as="geometry" />
        </mxCell>
        <mxCell id="subtitle-text" parent="1" style="text;html=1;align=left;verticalAlign=top;fontSize=16;fontFamily=Helvetica;fontColor=light-dark(#232F3E,#D4D4D4);" value="OLTP on Neptune Database · nightly S3 snapshot · OLAP + vector on Neptune Analytics · enrich DynamoDB for case management" vertex="1">
          <mxGeometry x="40" y="70" width="1100" height="30" as="geometry" />
        </mxCell>
        <mxCell id="title-separator" parent="1" style="line;strokeWidth=2;html=1;strokeColor=#FF9900;fontFamily=Helvetica;" value="" vertex="1">
          <mxGeometry x="40" y="105" width="1100" height="10" as="geometry" />
        </mxCell>

        <mxCell id="app-container" parent="1" style="fillColor=#f5f5f5;strokeColor=light-dark(#666666,#D4D4D4);rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#333333;fontFamily=Helvetica;container=1;collapsible=0;shadow=1;" value="Fraud app / investigators" vertex="1">
          <mxGeometry x="40" y="200" width="140" height="120" as="geometry" />
        </mxCell>
        <mxCell id="svc-app" parent="app-container" style="sketch=0;outlineConnect=0;fontColor=#232F3E;fillColor=#232F3D;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.client;fontFamily=Helvetica;" value="" vertex="1">
          <mxGeometry x="46" y="36" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="aws-cloud" parent="1" style="points=[[0,0],[0.25,0],[0.5,0],[0.75,0],[1,0],[1,0.25],[1,0.5],[1,0.75],[1,1],[0.75,1],[0.5,1],[0.25,1],[0,1],[0,0.75],[0,0.5],[0,0.25]];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_aws_cloud;strokeColor=light-dark(#232F3E,#E4F0FF);fillColor=light-dark(#232F3E0D,#232F3E0D);fillStyle=auto;verticalAlign=top;align=left;spacingLeft=30;fontColor=#232F3E;dashed=0;container=1;pointerEvents=0;collapsible=0;recursiveResize=0;fontFamily=Helvetica;" value="AWS Cloud" vertex="1">
          <mxGeometry x="220" y="140" width="920" height="520" as="geometry" />
        </mxCell>

        <mxCell id="grp-neptune-db" parent="1" style="fillColor=#F5E6F7;strokeColor=#C925D1;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#C925D1;fontFamily=Helvetica;container=1;collapsible=0;" value="Database" vertex="1">
          <mxGeometry x="280" y="200" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="svc-neptune-db" parent="grp-neptune-db" style="sketch=0;outlineConnect=0;fontColor=#232F3E;fillColor=#C925D1;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.neptune;fontFamily=Helvetica;" value="Neptune Database&lt;div&gt;&lt;i&gt;OLTP R/W&lt;/i&gt;&lt;/div&gt;" vertex="1">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-s3" parent="1" style="fillColor=#E8F5E9;strokeColor=#3F8624;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#3F8624;fontFamily=Helvetica;container=1;collapsible=0;" value="Storage" vertex="1">
          <mxGeometry x="500" y="200" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="svc-s3" parent="grp-s3" style="sketch=0;outlineConnect=0;fontColor=#232F3E;fillColor=#3F8624;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.s3;fontFamily=Helvetica;" value="Amazon S3&lt;div&gt;&lt;i&gt;graph snapshot&lt;/i&gt;&lt;/div&gt;" vertex="1">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-neptune-analytics" parent="1" style="fillColor=#F5E6F7;strokeColor=#C925D1;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#C925D1;fontFamily=Helvetica;container=1;collapsible=0;" value="Database" vertex="1">
          <mxGeometry x="720" y="200" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="svc-neptune-analytics" parent="grp-neptune-analytics" style="sketch=0;outlineConnect=0;fontColor=#232F3E;fillColor=#C925D1;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.neptune;fontFamily=Helvetica;" value="Neptune Analytics&lt;div&gt;&lt;i&gt;WCC + vectors&lt;/i&gt;&lt;/div&gt;" vertex="1">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-bedrock" parent="1" style="fillColor=#E0F2F1;strokeColor=#01A88D;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#01A88D;fontFamily=Helvetica;container=1;collapsible=0;" value="AI/ML" vertex="1">
          <mxGeometry x="500" y="400" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="svc-bedrock" parent="grp-bedrock" style="sketch=0;outlineConnect=0;fontColor=#232F3E;fillColor=#01A88D;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.bedrock;fontFamily=Helvetica;" value="Amazon Bedrock&lt;div&gt;&lt;i&gt;embeddings&lt;/i&gt;&lt;/div&gt;" vertex="1">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="grp-dynamo" parent="1" style="fillColor=#F5E6F7;strokeColor=#C925D1;rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontStyle=1;fontSize=12;fontColor=#C925D1;fontFamily=Helvetica;container=1;collapsible=0;" value="Database" vertex="1">
          <mxGeometry x="940" y="200" width="120" height="120" as="geometry" />
        </mxCell>
        <mxCell id="svc-dynamo" parent="grp-dynamo" style="sketch=0;outlineConnect=0;fontColor=#232F3E;fillColor=#C925D1;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=10;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.dynamodb;fontFamily=Helvetica;" value="Amazon DynamoDB&lt;div&gt;&lt;i&gt;case enrichment&lt;/i&gt;&lt;/div&gt;" vertex="1">
          <mxGeometry x="36" y="30" width="48" height="48" as="geometry" />
        </mxCell>

        <mxCell id="badge-1" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=16;fontStyle=1;fontFamily=Helvetica;fillColor=#007CBD;fontColor=#FFFFFF;strokeColor=default;strokeWidth=2;shadow=1;glass=0;" value="1" vertex="1">
          <mxGeometry x="400" y="170" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="badge-2" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=16;fontStyle=1;fontFamily=Helvetica;fillColor=#007CBD;fontColor=#FFFFFF;strokeColor=default;strokeWidth=2;shadow=1;glass=0;" value="2" vertex="1">
          <mxGeometry x="620" y="170" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="badge-3" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=16;fontStyle=1;fontFamily=Helvetica;fillColor=#007CBD;fontColor=#FFFFFF;strokeColor=default;strokeWidth=2;shadow=1;glass=0;" value="3" vertex="1">
          <mxGeometry x="840" y="170" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="badge-4" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=16;fontStyle=1;fontFamily=Helvetica;fillColor=#007CBD;fontColor=#FFFFFF;strokeColor=default;strokeWidth=2;shadow=1;glass=0;" value="4" vertex="1">
          <mxGeometry x="1060" y="170" width="28" height="28" as="geometry" />
        </mxCell>
        <mxCell id="badge-5" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fontSize=16;fontStyle=1;fontFamily=Helvetica;fillColor=#007CBD;fontColor=#FFFFFF;strokeColor=default;strokeWidth=2;shadow=1;glass=0;" value="5" vertex="1">
          <mxGeometry x="560" y="360" width="28" height="28" as="geometry" />
        </mxCell>

        <mxCell id="edge-app-neptune" edge="1" parent="1" source="app-container" target="svc-neptune-db" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeColor=#232F3E;fontSize=11;">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="edge-app-neptune-label" connectable="0" parent="edge-app-neptune" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;fontFamily=Helvetica;fontSize=11;" value="real-time traversals" vertex="1">
          <mxGeometry relative="1" x="-0.1" y="-1" as="geometry"><mxPoint as="offset" /></mxGeometry>
        </mxCell>

        <mxCell id="edge-neptune-s3" edge="1" parent="1" source="svc-neptune-db" target="svc-s3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeColor=#232F3E;fontSize=11;">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="edge-neptune-s3-label" connectable="0" parent="edge-neptune-s3" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;fontFamily=Helvetica;fontSize=11;" value="export / bulk CSV" vertex="1">
          <mxGeometry relative="1" x="-0.1" y="-1" as="geometry"><mxPoint as="offset" /></mxGeometry>
        </mxCell>

        <mxCell id="edge-s3-analytics" edge="1" parent="1" source="svc-s3" target="svc-neptune-analytics" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeColor=#232F3E;fontSize=11;">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="edge-s3-analytics-label" connectable="0" parent="edge-s3-analytics" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;fontFamily=Helvetica;fontSize=11;" value="import graph" vertex="1">
          <mxGeometry relative="1" x="-0.1" y="-1" as="geometry"><mxPoint as="offset" /></mxGeometry>
        </mxCell>

        <mxCell id="edge-analytics-dynamo" edge="1" parent="1" source="svc-neptune-analytics" target="svc-dynamo" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontFamily=Helvetica;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeColor=#232F3E;fontSize=11;">
          <mxGeometry relative="1" as="geometry" />
        </mxCell>
        <mxCell id="edge-analytics-dynamo-label" connectable="0" parent="edge-analytics-dynamo" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;fontFamily=Helvetica;fontSize=11;" value="component scores" vertex="1">
          <mxGeometry relative="1" x="-0.1" y="-1" as="geometry"><mxPoint as="offset" /></mxGeometry>
        </mxCell>

        <mxCell id="edge-dynamo-app" edge="1" parent="1" source="svc-dynamo" target="app-container" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontFamily=Helvetica;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeColor=#232F3E;fontSize=11;dashed=1;">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="1000" y="620" />
              <mxPoint x="110" y="620" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="edge-dynamo-app-label" connectable="0" parent="edge-dynamo-app" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;fontFamily=Helvetica;fontSize=11;" value="case lookup" vertex="1">
          <mxGeometry relative="1" x="0.2" y="1" as="geometry"><mxPoint as="offset" /></mxGeometry>
        </mxCell>

        <mxCell id="edge-bedrock-db" edge="1" parent="1" source="svc-bedrock" target="svc-neptune-db" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;fontFamily=Helvetica;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeColor=#232F3E;fontSize=11;dashed=1;">
          <mxGeometry relative="1" as="geometry">
            <Array as="points">
              <mxPoint x="340" y="460" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="edge-bedrock-db-label" connectable="0" parent="edge-bedrock-db" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;fontFamily=Helvetica;fontSize=11;" value="node embeddings" vertex="1">
          <mxGeometry relative="1" x="-0.2" y="1" as="geometry"><mxPoint as="offset" /></mxGeometry>
        </mxCell>

        <mxCell id="legend" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#EDF3FF,#305363);fillStyle=auto;strokeColor=#007CBD;verticalAlign=top;align=left;spacingLeft=16;spacingTop=12;fontFamily=Helvetica;fontSize=12;fontColor=light-dark(#232F3E,#FFFFFF);" value="&lt;b&gt;Data flow&lt;/b&gt;&lt;br&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255))&quot;&gt;1 Real-time OLTP queries against Neptune Database&lt;/span&gt;&lt;br&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255))&quot;&gt;2 Nightly export / CSV bulk load to S3&lt;/span&gt;&lt;br&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255))&quot;&gt;3 Import into Neptune Analytics (m-NCU); run WCC / PageRank&lt;/span&gt;&lt;br&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255))&quot;&gt;4 Write component scores to DynamoDB for investigators&lt;/span&gt;&lt;br&gt;&lt;span style=&quot;color: light-dark(rgb(0,0,0), rgb(255,255,255))&quot;&gt;5 Optional: Bedrock embeddings on nodes for graph+vector queries&lt;/span&gt;" vertex="1">
          <mxGeometry x="280" y="560" width="700" height="120" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
