允许Cerner Bunsen加载FHIR R4ukcore的依赖性是什么?

问题描述

有人知道Cerner Bunsen库(https://github.com/cerner/bunsen)是否将加载FHIR R4 捆绑软件并将数据持久保存到sql数据库吗?如果有人可以提供任何指导或给我任何指导,那就太好了。目前,我只是想从https://simplifier.net/ukcore加载捆绑的样本。最终目的是将传入的Bundle持久保存到配置单元数据库中,以供Apache Spark集群访问。

尝试加载单个条目捆绑包的示例代码为:

Bundles bundles = Bundles.forR4();
URL fileUrl = R4Test.class.getClassLoader().getResource("ukcore/UKCore-AllergyIntolerance-Amoxicillin-Example.json");
JavaRDD bundlesRdd = bundles.loadFromDirectory(spark,fileUrl.toExternalForm(),200);
Object c = bundlesRdd.collect();
bundles.saveAsDatabase(spark,bundlesRdd,"r4database","AllergyIntolerance");

bundlesRdd.collect()上,我收到以下警告:

INFO WholeTextFileRDD: Input split: Paths:/path/to/ukcore/UKCore-AllergyIntolerance-Amoxicillin-Example.json:0+2017
WARN LenientErrorHandler: UnkNown element 'Meta' found while parsing
WARN LenientErrorHandler: UnkNown element 'clinicalStatus' found while parsing
WARN LenientErrorHandler: UnkNown element 'verificationStatus' found while parsing
WARN LenientErrorHandler: UnkNown element 'type' found while parsing
WARN LenientErrorHandler: UnkNown element 'category' found while parsing
WARN LenientErrorHandler: UnkNown element 'code' found while parsing
WARN LenientErrorHandler: UnkNown element 'patient' found while parsing
WARN LenientErrorHandler: UnkNown element 'encounter' found while parsing
WARN LenientErrorHandler: UnkNown element 'recordedDate' found while parsing
WARN LenientErrorHandler: UnkNown element 'recorder' found while parsing
WARN LenientErrorHandler: UnkNown element 'asserter' found while parsing
WARN LenientErrorHandler: UnkNown element 'reaction' found while parsing

当尝试进行saveAsDatabase()时,失败并显示

java.lang.IllegalArgumentException: Unsupported FHIR version: R4
    at com.cerner.bunsen.deFinitions.StructureDeFinitions.create(StructureDeFinitions.java:120)
    at com.cerner.bunsen.spark.SparkRowConverter.forResource(SparkRowConverter.java:75)
    at com.cerner.bunsen.spark.SparkRowConverter.forResource(SparkRowConverter.java:54)
    at com.cerner.bunsen.spark.Bundles.extractEntry(Bundles.java:211)
    at com.cerner.bunsen.spark.Bundles.saveAsDatabase(Bundles.java:290)

我目前正在运行以下依赖项:

    <dependencies>
        <dependency>
            <groupId>com.cerner.bunsen</groupId>
            <artifactId>bunsen-r4</artifactId>
            <version>0.4.5</version>
        </dependency>

        <dependency>
            <groupId>com.cerner.bunsen</groupId>
            <artifactId>bunsen-core</artifactId>
            <version>0.5.7</version>
        </dependency>
        <dependency>
            <groupId>com.cerner.bunsen</groupId>
            <artifactId>bunsen-spark</artifactId>
            <version>0.5.7</version>
        </dependency>

        <!--
        to resolve java.lang.IllegalAccessError:
        "tried to access method com.google.common.base.Stopwatch.<init>()V from class
        org.apache.hadoop.mapreduce.lib.input.FileInputFormat"
        -->
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-mapreduce-client-core</artifactId>
            <version>2.7.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <version>2.7.2</version>
        </dependency>

        <!-- Spark dependencies -->
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.11</artifactId>
            <version>2.4.5</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.11</artifactId>
            <version>2.4.5</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-hive_2.11</artifactId>
            <version>2.4.5</version>
        </dependency>
    </dependencies>

非常感谢,

戴夫

解决方法

由于0.5.X版本及其路线图中的重大更改,目前不支持R4版本,但我们尚无ETA。

如果您尝试浏览示例数据,请使用支持STU3和R4的0.4.6版本进行测试。请注意,不再维护旧版本。

谢谢, 阿马里什

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...