Bagaimana saya bisa menggunakan implementasi MurmurHash Scala: scala.util.MurmurHash3?

Saya sedang menulis BloomFilter dan ingin menggunakan implementasi MurmurHash3 default Scala: scala.util.MurmurHash3. Namun kompilasi saya gagal dengan kesalahan kompilasi berikut:

[error] /mnt/hgfs/dr/sandbox/dr-commons/src/main/scala/dr/commons/collection/BloomFilter.scala:214: MurmurHash3 is not a member of scala.util
[error]   import scala.util.{MurmurHash3 => MH}

Saya menggunakan Scala 2.9.1 dan sbt 0.11.2.

Apakah kelas MurmurHash3 tidak ada di perpustakaan 2.9.1 secara default? Saya berasumsi itu karena banyak digunakan di perpustakaan. Sejauh yang saya lihat, kelasnya bukan paket pribadi.


person dr.    schedule 06.04.2012    source sumber


Jawaban (3)


Namanya hanya scala.util.MurmurHash tanpa 3. Tapi itu memang algoritma Murmurhash 3 (lihat komentar di sumber)

EDIT Saya baru saja melihat bahwa Rex Kerr adalah penulis scala.util.MurmurHash. Saya menyarankan Anda untuk tidak menerima jawaban ini (dengan asumsi itu jawaban yang benar); karena Rex Kerr ada di StackOverflow, dia mungkin akan ikut campur dan memberi Anda yang jauh lebih baik...

person Paolo Falabella    schedule 06.04.2012
comment
Terima kasih. Lalu, apa kelas scala.util.MurmurHash3? - person dr.; 07.04.2012
comment
sepertinya ini adalah versi baru di scala 2.10 - person Paolo Falabella; 07.04.2012

Saya menggunakan scala 2.11 dan spark Apache 1.6.2. Ini berfungsi dengan baik. Dengan versi ini saya tidak mendapatkan kesalahan apa pun

import scala.util.hashing.{ MurmurHash3 => MH3 }
    val data="I am SANTHOSH"
    val sample = MH3.stringHash(data, MH3.stringSeed)
    println(":Hash Value: "+sample)
<dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.11</artifactId>
            <version>1.6.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.11</artifactId>
            <version>1.6.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-mllib_2.11</artifactId>
            <version>1.6.2</version>
        </dependency>
person Santhosh Hirekerur    schedule 02.02.2017
comment
Sebenarnya saya ketinggalan menambahkan versi yang saya gunakan. Saya menggunakan scala 2.11.8 dan Apache 1.6.2 - person Santhosh Hirekerur; 03.02.2017

Berikut ini berfungsi untuk saya:

import scala.util.hashing.MurmurHash3

person conradlee    schedule 18.02.2016