Uploaded image for project: 'Blazegraph (by SYSTAP)'
  1. Blazegraph (by SYSTAP)
  2. BLZG-641 Improve load performance
  3. BLZG-1653

Use a more-intelligent Inlining Strategy by Default

    XMLWordPrintable

    Details

      Description

      Review MultipurposeIDHandler and augment it to generally handle cases where we can detect inlining opportunities.

      protected AbstractLiteralIV createInlineIV(final String localName) {
              
              try {
                  return new UUIDLiteralIV<>(UUID.fromString(localName));
              } catch (Exception ex) {
                  // ok, not a uuid
              }
              
              try {
                  return new XSDNumericIV(Byte.parseByte(localName));
              } catch (Exception ex) {
                  // ok, not a byte
              }
              
              try {
                  return new XSDNumericIV(Short.parseShort(localName));
              } catch (Exception ex) {
                  // ok, not a short
              }
              
              try {
                  return new XSDNumericIV(Integer.parseInt(localName));
              } catch (Exception ex) {
                  // ok, not a int
              }
              
              try {
                  return new XSDNumericIV(Long.parseLong(localName));
              } catch (Exception ex) {
                  // ok, not a long
              }
              
              try {
                  return new XSDNumericIV(Float.parseFloat(localName));
              } catch (Exception ex) {
                  // ok, not a float
              }
      
              try {
                  return new XSDNumericIV(Double.parseDouble(localName));
              } catch (Exception ex) {
                  // ok, not a double
              }
      
              try {
                  return new IPv4AddrIV(localName);
              } catch (Exception ex) {
                  // ok, not an ip address
              }
              
              if (localName.length() < maxTextLen) {
                  // just use a UTF encoded string, this is expensive
                  return new FullyInlineTypedLiteralIV<BigdataLiteral>(localName);
              }
              
              return null;
              
          }
      

        Attachments

          Activity

            People

            Assignee:
            beebs Brad Bebee
            Reporter:
            beebs Brad Bebee
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated: