{"version":3,"sources":["webpack:///./src/pages/docs/Connecting to Databases/dremio.mdx"],"names":["_frontmatter","MDXLayout","DefaultLayout","MDXContent","components","props","mdxType","isMDXComponent"],"mappings":"wPAMaA,G,UAAe,S,mOAE5B,IAKMC,EAAYC,IACH,SAASC,EAAT,GAGZ,IAFDC,EAEC,EAFDA,WACGC,EACF,8BACD,OAAO,YAACJ,EAAD,eAAeI,EAAf,CAAsBD,WAAYA,EAAYE,QAAQ,cAC3D,iBAAQ,CACN,GAAM,UADR,UAGA,yEAEE,gBAAO,CACL,KAAQ,+CACR,WAAc,KAFhB,qBAFF,KAOA,gFACA,uBAAK,mBAAU,CACX,WAAc,OADb,0DAIL,6BACE,gBAAO,CACL,KAAQ,2DACR,WAAc,KAFhB,uBADF,sF,iOAWJH,EAAWI,gBAAiB","file":"component---src-pages-docs-connecting-to-databases-dremio-mdx-669c08dca9af531fc6c9.js","sourcesContent":["import * as React from 'react'\n  /* @jsx mdx */\nimport { mdx } from '@mdx-js/react';\n/* @jsx mdx */\n\nimport DefaultLayout from \"/Users/max/code/superset/docs/node_modules/gatsby-theme-docz/src/base/Layout.js\";\nexport const _frontmatter = {};\n\nconst makeShortcode = name => function MDXDefaultShortcode(props) {\n  console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n  return <div {...props} />;\n};\n\nconst MDXLayout = DefaultLayout;\nexport default function MDXContent({\n  components,\n  ...props\n}) {\n  return <MDXLayout {...props} components={components} mdxType=\"MDXLayout\">\n    <h2 {...{\n      \"id\": \"dremio\"\n    }}>{`Dremio`}</h2>\n    <p>{`The recommended connector library for Dremio is\n`}\n      <a {...{\n        \"href\": \"https://github.com/sqggles/sqlalchemy_dremio\",\n        \"parentName\": \"p\"\n      }}>{`sqlalchemy_dremio`}</a>\n      {`.`}</p>\n    <p>{`The expected connection string is formatted as follows:`}</p>\n    <pre><code {...{\n        \"parentName\": \"pre\"\n      }}>{`dremio://{username}:{password}@{host}:{port}/dremio\n`}</code></pre>\n    <p>{`This `}\n      <a {...{\n        \"href\": \"https://www.dremio.com/tutorials/dremio-apache-superset/\",\n        \"parentName\": \"p\"\n      }}>{`blog post by Dremio`}</a>\n      {` has some\nadditional helpful instructions on connecting Superset to Dremio.`}</p>\n\n  </MDXLayout>;\n}\n;\nMDXContent.isMDXComponent = true;\n      "],"sourceRoot":""}