Perusahaan saya ada di industri Energi dan saya perlu menemukan cara yang baik untuk mewakili konversi satuan pengukuran. Saya sudah melakukan pencarian dan belum menemukan artikel bagus yang membahas hal ini pada kedalaman yang saya butuhkan. Sebagian besar info yang dipublikasikan tentang konversi unit mengasumsikan bahwa mengingat Unit 1 ada tingkat konversi yang diketahui (dikodekan) untuk menuju ke Unit 2 dan ini matematika sederhana ( ini adalah contoh paling kompleks yang saya temukan yang masih belum membantu). Namun, ini tidak selalu benar di dunia nyata dan tentu saja tidak benar untuk apa yang harus kita tangani. (Maaf untuk penulisan yang panjang - Saya mencoba memberikan info sebanyak mungkin!)
Contoh rumit 1: Beberapa konversi berbeda dengan waktu, seperti mengonversi $ 5 ke Euro atau sebaliknya. Ini kedengarannya tidak ada hubungannya dengan energi tetapi benar-benar terjadi di pasar komoditas energi (pikirkan pasar saham).
Contoh rumit 2: (Disederhanakan) Beberapa gas alam terbakar lebih panas daripada yang lain . Selain itu, gas alam dapat diukur / disimpan baik berdasarkan Energi dalam gas (seperti Therms ) ATAU berdasarkan Volume gas tersebut (seperti MCF yang 1000 Cubic Feet), dan ada kemungkinan lain juga (seperti sebagai Ton untuk Massa ). Analogi bensin adalah bahwa 1 galon 87-oktan Tanpa timbal menyediakan energi lebih sedikit dari 1 galon 93-oktan Tanpa timbal.
Contoh rumit 3: Selain memiliki unit pengukuran ini, kami juga sering harus berurusan dengan tarif, seperti $ per Therm atau € per MCF . Jadi kita perlu beberapa cara untuk bekerja dengan tarif ini dan bagaimana mereka berhubungan dengan unit dasar jadi jika kita perlu mengkonversi dari $ per Therm ke € per MCF , kita dapat dan menggunakan tarif yang diterbitkan sama seperti mengkonversi dari Therm ke MCF .
Contoh rumit 4: Sebelumnya, saya menggunakan istilah Energi dengan sangat longgar dan mungkin kadang-kadang salah. Pada titik ini dan mulai sekarang, itu berubah. Jadi bola curveball terakhir adalah bahwa kita berurusan dengan Energi dan Daya . Dengan listrik, ini berarti kWH versus kW ( penjelasan yang cukup bagus meskipun itu adalah Yahoo Answers ). Analogi data: ini seperti membandingkan total MB data yang diunduh dengan Mbps Andabandwidth yang disediakan ISP Anda untuk Anda. Seperti halnya data, energi membutuhkan waktu untuk dikirimkan. Melanjutkan dengan analogi data, kita mungkin harus menghitung bandwidth efektif rata-rata yang dikonsumsi selama periode waktu tertentu, jadi mengingat 60MB diunduh lebih dari 1 menit, tingkat "efektif" adalah 60 * 8/60 = 8Mbps. "Trik" di sini adalah bahwa jika kita menyimpan Mbps sebagai sebuah unit itu sendiri, kita perlu beberapa cara untuk menghubungkannya langsung ke MB juga meskipun itu juga melibatkan komponen waktu. FORTUNATELY, mengubah dari Energi ke Daya (atau sebaliknya) adalah hal yang cukup langka untuk kita lakukan, jadi solusi kita harus dioptimalkan untuk semua contoh rumit lainnya dan mudah-mudahan memungkinkan untuk yang satu ini juga, tetapi tidak menangani masalah terkait Energito Power adalah sebuah opsi.
Contoh rumit 5: Ini pada dasarnya adalah 3 + 4. Kita mungkin memiliki $ per KW dan $ per KWh , sehingga tarif berurusan dengan Power dan Energy .
Contoh mudah: Beberapa konversi sangat mudah dan ini adalah yang dapat ditangani oleh sebagian besar info di web. 1000 Wh = 1kWh dan semacamnya. Hal yang sama dengan Therms dan Decatherms atau kW ke MW, dll. Saya tidak perlu bantuan di sini, tetapi ingatlah bahwa ~ 70% dari konversi kami akan dari jenis ini.
Pikiranku tentang bagaimana memulai tetapi tidak yakin tentang bagaimana menyelesaikannya:
- Ini jelas sangat SANGAT berantakan sehingga saya mengusulkan agar kami memilih unit pengukuran standar untuk menyimpan semua data untuk setiap komoditas dan "tipe penggunaan". Jadi untuk listrik, unit energi standar kami adalah kWH dan unit daya standar kami adalah kW. Jadi untuk mengkonversi ke unit energi / daya lain, kita hanya perlu tingkat konversi ke / dari standar kita dan tidak setiap kombinasi yang memungkinkan. Jika kita perlu mengkonversi dari MW ke W, kita selalu dapat melakukannya dengan cara mengkonversi ke / dari kW.
- Karena tingkat konversi mungkin tergantung pada waktu tertentu, kami harus membiarkan kemampuan untuk waktu ini disimpan dalam kaitannya dengan pengukuran. Saya menduga kita tidak perlu khawatir tentang perubahan kurs ini yang berubah lebih cepat dari sekali dalam satu jam dan kita bahkan mungkin dapat mengasumsikan sekali sehari.
- Karena tingkat konversi mungkin tergantung pada nilai yang dipublikasikan, kami harus memungkinkan kemampuan untuk nilai ini disimpan dalam kaitannya dengan pengukuran. Saya menduga kita tidak perlu khawatir tentang perubahan kurs ini yang berubah lebih cepat dari sekali dalam satu jam dan kita bahkan mungkin dapat mengasumsikan sekali sehari.
- Setelah semua ini diketahui, saya mengantisipasi membuat layanan web yang tidak lebih dari menangani semua konversi unit. Saya TIDAK mencari SQL untuk melakukan konversi ini dan saya bisa melakukan beberapa caching kreatif untuk membuatnya jadi saya tidak benar-benar memalu tabel ini tetapi kadang-kadang perlu menangani konversi ~ 400 nilai per beban halaman di situs web yang diakses pengguna. . Saya tidak yakin apakah ini penting.
Saya tidak tahu pada tingkat apa saya harus menyimpan tingkat konversi yang tidak pernah berubah versus tingkat konversi yang berubah, dan bagaimana cara menguncinya dengan cara yang memungkinkan saya untuk dengan cepat mengaksesnya dengan cara yang mudah dilakukan. bekerja dengan.
Adakah pemikiran tentang cara mengatasi ini atau bahkan beberapa bahan bacaan yang diterbitkan yang mungkin bisa membantu? Saya menggunakan SQL Server (segera menjadi SQL Azure) tetapi ini seharusnya tidak terlalu penting. Skema untuk mewakili dengan tepat ini adalah apa yang saya mengalami masalah dengan di sini. Jika sesederhana inci versus sentimeter, itu mudah. Tetapi perbedaan tingkat konversi adalah masalah di sini.
W
tampaknya lebih tepat daripada KW
. The Sistem Satuan Internasional (SI) memiliki info lebih lanjut tentang sistem metrik.