zoukankan      html  css  js  c++  java
  • drill 学习 一 drill 基本介绍

    drill 是一个大数据sql 查询引擎(当然对于hdf也是支持写入的,我们的主要场景还是数据查询)

    drill 支持的数据格式

    drill 支持的数据格式较多,以下是一个简单的说明

    • csv,tsv,psv或者其他任意用分隔符字段的数据(当然我们可以自己配置数据解析——通过存储插件配置选项)
    • json (bjson也是可以的,比如mongo)
    • parrquet
    • avro
    • hadoop sequcen
    • apache 以及nginx 日志分析,内置了的数据解析函数
    • 日志文件(基于内置的通用函数)
    • pcap/pcap-ng 网络数据包抓包文件(libpcap,比如wireshark抓包数据)

    支持的存储系统

    • hbase
    • hive
    • kafaka
    • mapr-db
    • mongo
    • opentsdb
    • 主流基于jdbc驱动的关系型数据库

    分布式文件系统的支持

    • hdfs
    • s3 (s3 兼容的都可以,minio很不错)
    • mapr-fs

    特性

    • 简单易用 
      可以支持主流的数据库,同时我们可方便的集成主流的bi工具(可以通过jdbc连接drill,drill 就可以类似一个数据库引擎了,但是drill不是数据库引擎)
    • no schema 
      drill 不像其他需要写时schema,而且在运行时自己决定的(类似读时schema,但是也不是,因为drill并不需要定义任何,都是自动的),当然也是有 
      代价的,我们可能会有因为数据规范的问题,造成查询失败(尤其是在处理mongo多变数据的时候)

    drill 性能

    drill 大量水用了内存数据缓存以及cpu 优化,并通过网络进行数据交换,所以对于内存以及cpu 资源情况可能会有比较大的影响(jvm 配置也是很重要的)

    参考资料

    https://calcite.apache.org/ 
    https://drill.apache.org/

  • 相关阅读:
    [设计模式]<<设计模式之禅>>关于迪米特法则
    [设计模式]<<设计模式之禅>>关于接口隔离原则
    [设计模式]<<设计模式之禅>>关于依赖倒置原则
    /proc/meminfo分析(一)
    Dynamic DMA mapping Guide
    Linux时钟
    Linux系统休眠和设备中断处理
    Linux调度器
    Linux调度器
    Linux标识进程
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/13760269.html
Copyright © 2011-2022 走看看