一级a做爰片不卡的网站,北京网站建设推荐华网天下,属于网页制作平台的是?,免费源码下载哪个好Dremio 是一个开源的分布式分析引擎#xff0c;为数据探索、转换和协作提供简单的自助服务界面。Dremio 的架构建立在 Apache Arrow#xff08;一种高性能列式内存格式#xff09;之上#xff0c;并利用 Parquet 文件格式实现高效存储。有关 Dremio 的更多信息#xff0c;…
Dremio 是一个开源的分布式分析引擎为数据探索、转换和协作提供简单的自助服务界面。Dremio 的架构建立在 Apache Arrow一种高性能列式内存格式之上并利用 Parquet 文件格式实现高效存储。有关 Dremio 的更多信息请参阅Dremio 入门。
MinIO 是一款高性能的分布式对象存储系统专为云原生应用而设计。它结合了可扩展性和高性能使每个工作负载无论要求多么苛刻都触手可及。最近的基准测试在 GET 上实现了 325 GiB/s 349 GB/s在 PUT 上实现了 165 GiB/s 177 GB/s只有 32 个现成的 NVMe SSD 节点。
在本教程中我们将向您展示如何配置 Dremio 以连接到使用自签名 TLS 证书的 MinIO。这是更常见的用例之一我们让 SUBNET 的客户一次又一次地询问他们如何配置这样的东西。
MinIO 和 Dremio
让我们使用以下配置创建一个 kind 集群
kind: ClusterapiVersion: kind.x-k8s.io/v1alpha4nodes:- role: control-plane- role: worker- role: worker- role: worker- role: workerkind create cluster --config kind-config.yml将 MinIO 算子部署到我们上面创建的类集群。
kubectl minio init创建一个 MinIO 租户以便我们可以为 Demio 创建一个存储桶。
kubectl create ns tenant-nskubectl minio tenant create tenant-1 --servers 4 --volumes 4 --capacity 4Gi --namespace tenant-ns获取 MinIO 租户凭据并记下它们。
kubectl get secrets/tenant-1-user-1 -n tenant-ns -oyaml | yq .data.CONSOLE_ACCESS_KEY | base64 -dkubectl get secrets/tenant-1-user-1 -n tenant-ns -oyaml | yq .data.CONSOLE_SECRET_KEY | base64 -d端口转发到租户 minio 的服务以便我们可以在后续步骤中使用 mc 它来访问它。
kubectl port-forward svc/minio -n tenant-ns 9443:443为租户创建别名并创建用于使用 Dremio 进行测试的示例存储桶。
mc alias set myminio https://localhost:9443/ WZaBqLMGYViJ0Sba XMPAlfUUM4rnaAnGTxPKzeYYcBiRlUVr --insecuremc mb myminio/openlake --insecure克隆 openlake 和 dremio github存储库。
git clone https://github.com/minio/openlakegit clone https://github.com/dremio/dremio-cloud-tools复制 MinIO helm 值 YAML 并更新它们如下所示。
cp ~/openlake/dremio/charts/values.minio.yaml ~/dremio-cloud-tools/charts/dremio_v2/distStorage:type: awsaws:bucketName: openlakepath: /dremioauthentication: accessKeySecretcredentials:accessKey: 9RW081BM1STLAWQHXS07secret: L2GCeGRpHUbaQwrCEcW7tnmExuhmUkYN4c2ly49EextraProperties: |propertynamefs.s3a.endpoint/namevalueminio.tenant-ns.svc.cluster.local/value/propertypropertynamefs.s3a.path.style.access/namevaluetrue/value/propertypropertynamedremio.s3.compat/namevaluetrue/value/property更新 dremio helm 模板以禁用证书检查。请注意有多个文件需要更新。
dremio_v2/templates/dremio-coordinator.yaml
- name: DREMIO_JAVA_SERVER_EXTRA_OPTSvalue: -{{- include dremio.coordinator.extraStartParams $ | nindent 12 -}}-Dzookeeperzk-hs:2181-Dservices.coordinator.enabledtrue-Dservices.coordinator.master.enabledfalse-Dservices.coordinator.master.embedded-zookeeper.enabledfalse-Dservices.executor.enabledfalse-Dservices.conduit.port45679-Dcom.amazonaws.sdk.disableCertCheckingtruedremio_v2/templates/dremio-executor.yaml
- name: DREMIO_JAVA_SERVER_EXTRA_OPTSvalue: -{{- include dremio.executor.extraStartParams (list $ $engineName) | nindent 12 -}}-Dzookeeperzk-hs:2181-Dservices.coordinator.enabledfalse-Dservices.coordinator.master.enabledfalse-Dservices.coordinator.master.embedded-zookeeper.enabledfalse-Dservices.executor.enabledtrue-Dservices.conduit.port45679-Dservices.node-tag{{ $engineName }}-Dcom.amazonaws.sdk.disableCertCheckingtruedremio_v2/templates/dremio-master.yaml - name: DREMIO_JAVA_SERVER_EXTRA_OPTSvalue: -{{- include dremio.coordinator.extraStartParams $ | nindent 12 -}}-Dzookeeperzk-hs:2181-Dservices.coordinator.enabledtrue-Dservices.coordinator.master.enabledtrue-Dservices.coordinator.master.embedded-zookeeper.enabledfalse-Dservices.executor.enabledfalse-Dservices.conduit.port45679-Dcom.amazonaws.sdk.disableCertCheckingtrue更新所有配置后使用 helm 图表安装 Dremio。
helm install dremio dremio_v2 -f dremio_v2/values.minio.yaml --namespace dremio --create-namespace您可能需要等待几分钟才能确保所有 Dremio pod 都能正常运行
Dremio 启动后验证openlake在存储桶中创建的新前缀。
mc ls myminio/openlake/dremio/uploads --insecure端口转发 dremio-client 以访问 Dremio 控制台 http://localhost:9047。
kubectl port-forward svc/dremio-client -n dremio 9047若要访问 Dremio 门户请创建一个用户并加载一个示例文件以便根据下面的屏幕截图运行查询进行验证。
创建新用户。 添加新作业。 设置格式。 测试要运行的查询 验证上传到存储桶的示例 CSV 文件。
mc ls --summarize --recursive myminio/openlake/dremio/uploads --insecure就这么简单。
最后的思考
MinIO 旨在为现代数据湖以及在其上运行的数据分析和 AI/ML 工作负载提供支持。MinIO 包括许多用于处理由许多小文件组成的大型数据集的优化这在现代数据湖中很常见。
对于数据湖来说也许更重要的是MinIO保证了持久性和不变性。此外MinIO 还对传输和驱动器中的数据进行加密并使用 IAM 和基于策略的访问控制 PBAC 来调节对数据的访问。