druid.io 使用mysql存儲metadata overlord啓動出錯

這是druid.io批量導入數據時出現的問題,當啓動overlord節點時,運行的命令以下:java

java -Xmx2g -Duser.timezone=UTC -Dfile.encoding=UTF-8 -classpath config/_common:config/overlord:lib/*:<hadoop_config_path> io.druid.cli.Main server overlord

出現的錯誤的信息:mysql

1) Unknown provider[mysql] of Key[type=io.druid.metadata.MetadataStorageConnector, annotation=[none]], known options[[derby]]
  at io.druid.guice.PolyBind.createChoiceWithDefault(PolyBind.java:86)
  while locating io.druid.metadata.MetadataStorageConnector
  at io.druid.guice.JacksonConfigManagerModule.getConfigManager(JacksonConfigManagerModule.java:50)
  at io.druid.guice.JacksonConfigManagerModule.getConfigManager(JacksonConfigManagerModule.java:50)
  while locating io.druid.common.config.ConfigManager
    for parameter 0 at io.druid.common.config.JacksonConfigManager.<init>(JacksonConfigManager.java:46)
  at io.druid.guice.JacksonConfigManagerModule.configure(JacksonConfigManagerModule.java:39)
  while locating io.druid.common.config.JacksonConfigManager
    for parameter 0 at io.druid.guice.JacksonConfigProvider.configure(JacksonConfigProvider.java:78)
  at io.druid.guice.JacksonConfigProvider.bind(JacksonConfigProvider.java:36)
2) Unknown provider[mysql] of Key[type=io.druid.metadata.SQLMetadataConnector, annotation=[none]], known options[[derby]]
  at io.druid.guice.PolyBind.createChoiceWithDefault(PolyBind.java:86)
  while locating io.druid.metadata.SQLMetadataConnector

該問題是運行示例時出現的問題,緣由在目標存儲的metadata信息爲指明mysql,而配置中又要存儲在mysql中致使出現了該問題,須要修改 config/_common/common.runtime.properties 文件。在該文件中增長配置sql

 druid.extensions.coordinates=["io.druid.extensions:druid-examples","io.druid.extensions:druid-kafka-eight","io.druid.extensions:mysql-metadata-storage"]
druid.extensions.localRepository=extensions-repo
# Zookeeper
druid.zk.service.host=localhost
# Metadata Storage (use something like mysql in production by uncommenting properties below)
# by default druid will use derby
druid.metadata.storage.type=mysql
druid.metadata.storage.connector.connectURI=jdbc:mysql://localhost:3306/druid
druid.metadata.storage.connector.user=druid
druid.metadata.storage.connector.password=diurd1234

這裏主要聲明兩個配置:shell

  1. druid.extensions.coordinates 中增長 "io.druid.extensions:mysql-metadata-storage",不少時候忘記了這一條致使出現上述問題。ide

  2. druid.metadata.storage的配置。oop

相關文章
相關標籤/搜索